if your period is due in 2 weeks, then this bloating and cramping could be due to ovulation. Ovulation occurs 11-14 days before period starts. and if your period is normally long then it looks as if your body is attempting to ovulate a few times before it actually follows through.
Stress has a big part to play in delayed ovulation, which then in turn has a bog part to play in bloating and discomfort and emotional upset too.
Are you particularly stressed?