I have used several online time clocks and they have not worked well for us. They have some of the features you want but not all.. Try searching google, you will find several solutions.
We have been using this time management software from Journyx, which allows you to run indepth reports and track time for billing.
http://www.journyx.com/
Best of all it is free for under 10 users. They also offer a hosted free version too. It is expensive if you need to go above 10 users but it is well worth it.
Good Luck!
B-