Even if that's the case, and without going into the legality of it, to do it during the most expensive month of the year morally disgraceful.
I can see no reason why this couldn't have been put back to January and let people have their pay early for Christmas.
If there isn't a serious reason why this has been done just before Christmas, it's plain spiteful.