I reckon your starter has had it, really - I'm not too sure about some magnets having come loose though....maybe you could put the starter on the bench and see if it behaves there? Normally a click indicates poor battery condition, and its the solenoid providing the click.
John
May 2009