@@ -0,0 +1,1176 @@
+%22%22%22%0A               #   # ####  ##### #   # ##### #   # #   #%0A               #  #  #   # #     ## ##  #  # #  ## #   #%0A               ###   ####  ####  # # #  #  # # # # #####%0A               #  #  #     #     #   #  #  # ##  # #   #%0A               #   # #     ##### #   # #   # #   # #   #%0A%0A                   Kremlin Magical Everything System%0A               Glasnost Image Board and Boredom Inhibitor%0A%0A%22%22%22%0A%0A%22%22%22 Module containing form classes and validation, for use with WTForms %22%22%22%0A%0Afrom flaskext.uploads import UploadSet, IMAGES%0Afrom flaskext.wtf import Form, TextField, TextAreaField, FileField, %5C%0A        file_allowed, file_required, validators%0A%0A# Get allowed files data from flask-uploads%0Aimages = UploadSet(%22images%22, IMAGES)%0A%0Aclass NewPostForm(Form):%0A    name = TextField(u'Name', validators%5Bvalidators.required()%5D)%0A%0A    upload = FileField(%22Image File%22,%0A        validators=%5B%0A            file_required(),%0A            file_allowed(images, %22Not an image :(%22),%0A            %5D%0A        )%0A%0A    note = TextAreaField(u'Note/Comment', validators%5Bvalidators.optional()%5D)%0A%0A    tags = TextField(u'Tags (separated by space)',%0A            validators=%5Bvalidators.optional()%5D%0A        )%0A%0A%0A

Add WTForms version of upload form, WTForms is miles better.