http://moo.floor.ch/examples/formcheck/