jemm, that's a hell of a deal - never seen a 7870 so cheap. As I say though, I'd take the GTX660 anyway. According to:
http://www.techspot.com/review/603-best-graphics-cards/page12.html
7870 delivers 5% better framerate than the GTX660. However that's with Catalyst 12.11, but nVidia's old drivers, giving the Radeons a slight edge. I expect 7870 will still have the edge even compared with new nVidia drivers, but then you're talking less than 5%. Even at 5%, it's the difference between 30fps and 31.5fps. With a level playing field (interms of drivers), even less difference.
Reasons I'd sacrifice that <5% for the same money are the benefits of reduced frame latency (so more consistently high delivery of framerates rather than up/down inconsistent performance that just averages out to a good framerate), adaptive v-sync (for significantly higher and totally unrestricted sub-60 framerates when v-sync is used) and PhysX.
I know, PhysX isn't used in loads of games (21 games since 2008), but it's in some major titles now (like Batman Arkham City, Borderlands 2, Metro 2033 or Bulletstorm) and I wouldn't be surprised to see it a lot more next year. And before you say that you can't tell the difference, take a look at this:
http://www.youtube.com/watch?v=kAfzjTAhpBk&feature=player_embedded
Pretty cool no?