It'll charge from a computer usb port as well - provided the computer is turned on. Based on my experience, the charges seem to last a pretty long time. Also, it helps if you have a second controller - play with one if the other needs charging.
Sounds like you had a good Christmas.
Alright, cool. I have a computer I leave on all the time, so I guess that works.