+1 to this!
The "magnet:?xt=urn:btih:" part of a magnet link can be assumed. The MD5 hash alone is enough information to start a download. When the Add Link button is pressed, if the info added by the user is "not a valid magnet link" on its own, try prepending "magnet:?xt=urn:btih:" to the beginning & check again, before rejecting the link as invalid.