Whew. This is a big update. I did some significant keeping work. I moved all of
[mediagoblin:mediagoblin.git] / mediagoblin / user_pages / forms.py
1 # GNU MediaGoblin -- federated, autonomous media hosting
2 # Copyright (C) 2011, 2012 MediaGoblin contributors.  See AUTHORS.
3 #
4 # This program is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU Affero General Public License as published by
6 # the Free Software Foundation, either version 3 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU Affero General Public License for more details.
13 #
14 # You should have received a copy of the GNU Affero General Public License
15 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17 import wtforms
18 from wtforms.ext.sqlalchemy.fields import QuerySelectField
19 from mediagoblin.tools.translate import lazy_pass_to_ugettext as _
20
21 class MediaCommentForm(wtforms.Form):
22     comment_content = wtforms.TextAreaField(
23         _('Comment'),
24         [wtforms.validators.Required()],
25         description=_(u'You can use '
26                       u'<a href="http://daringfireball.net/projects/markdown/basics">'
27                       u'Markdown</a> for formatting.'))
28
29 class ConfirmDeleteForm(wtforms.Form):
30     confirm = wtforms.BooleanField(
31         _('I am sure I want to delete this'))
32
33 class ConfirmCollectionItemRemoveForm(wtforms.Form):
34     confirm = wtforms.BooleanField(
35         _('I am sure I want to remove this item from the collection'))
36
37 class MediaCollectForm(wtforms.Form):
38     collection = QuerySelectField(
39         _('Collection'),
40         allow_blank=True, blank_text=_('-- Select --'), get_label='title',)
41     note = wtforms.TextAreaField(
42         _('Include a note'),
43         [wtforms.validators.Optional()],)
44     collection_title = wtforms.TextField(
45         _('Title'),
46         [wtforms.validators.Length(min=0, max=500)])
47     collection_description = wtforms.TextAreaField(
48         _('Description of this collection'),
49         description=_("""You can use
50                       <a href="http://daringfireball.net/projects/markdown/basics">
51                       Markdown</a> for formatting."""))
52
53 class CommentReportForm(wtforms.Form):
54     report_reason = wtforms.TextAreaField(
55         _('Reason for Reporting'),
56         [wtforms.validators.Required()])
57     comment_id = wtforms.IntegerField()
58     reporter_id = wtforms.IntegerField()
59
60 class MediaReportForm(wtforms.Form):
61     report_reason = wtforms.TextAreaField(
62         _('Reason for Reporting'),
63         [wtforms.validators.Required()])
64     media_entry_id = wtforms.IntegerField()
65     reporter_id = wtforms.IntegerField()