I am aged 30+ and working in an IT company 

I have been working in that company for 2 years. During these 2 years phase they hired some new employees and these new employees are promoted quicker than me. Actually one of them is my manager now. I think I missed promotions due to lack of my politics skills and  my information level was not that good. 

There is too much politics in my current company but the pay is good. 

Now, I have found a new job but the pay level is much lower.

I think my work is not appreciated in my current company and I feel insulted. Do you guys think I should accept a lower pay and switch or should I stay and fight? If you suggest me to stay what are your suggestions to improve my career?