diff --git a/pagure/forms.py b/pagure/forms.py index 344d74c..beb7964 100644 --- a/pagure/forms.py +++ b/pagure/forms.py @@ -16,6 +16,11 @@ import re import flask import flask_wtf as wtf +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm + import wtforms import tempfile @@ -74,7 +79,7 @@ def ssh_key_validator(form, field): raise wtforms.ValidationError('Invalid SSH keys') -class ProjectFormSimplified(wtf.Form): +class ProjectFormSimplified(FlaskForm): ''' Form to edit the description of a project. ''' description = wtforms.TextField( 'Description *', @@ -130,7 +135,7 @@ class ProjectForm(ProjectFormSimplified): self.namespace.choices.insert(0, ('', '')) -class IssueFormSimplied(wtf.Form): +class IssueFormSimplied(FlaskForm): ''' Form to create or edit an issue. ''' title = wtforms.TextField( 'Title*', @@ -166,7 +171,7 @@ class IssueForm(IssueFormSimplied): ] -class RequestPullForm(wtf.Form): +class RequestPullForm(FlaskForm): ''' Form to create a request pull. ''' title = wtforms.TextField( 'Title*', @@ -192,7 +197,7 @@ class RemoteRequestPullForm(RequestPullForm): ) -class AddIssueTagForm(wtf.Form): +class AddIssueTagForm(FlaskForm): ''' Form to add a comment to an issue. ''' tag = wtforms.TextField( 'tag', @@ -204,7 +209,7 @@ class AddIssueTagForm(wtf.Form): ) -class StatusForm(wtf.Form): +class StatusForm(FlaskForm): ''' Form to add/change the status of an issue. ''' status = wtforms.SelectField( 'Status', @@ -224,7 +229,7 @@ class StatusForm(wtf.Form): ] -class NewTokenForm(wtf.Form): +class NewTokenForm(FlaskForm): ''' Form to add/change the status of an issue. ''' acls = wtforms.SelectMultipleField( 'ACLs', @@ -244,7 +249,7 @@ class NewTokenForm(wtf.Form): ] -class UpdateIssueForm(wtf.Form): +class UpdateIssueForm(FlaskForm): ''' Form to add a comment to an issue. ''' tag = wtforms.TextField( 'tag', @@ -311,7 +316,7 @@ class UpdateIssueForm(wtf.Form): self.milestone.choices.insert(0, ('', '')) -class AddPullRequestCommentForm(wtf.Form): +class AddPullRequestCommentForm(FlaskForm): ''' Form to add a comment to a pull-request. ''' commit = wtforms.HiddenField('commit identifier') filename = wtforms.HiddenField('file changed') @@ -324,7 +329,7 @@ class AddPullRequestCommentForm(wtf.Form): ) -class AddPullRequestFlagForm(wtf.Form): +class AddPullRequestFlagForm(FlaskForm): ''' Form to add a flag to a pull-request. ''' username = wtforms.TextField( 'Username', [wtforms.validators.Required()]) @@ -338,7 +343,7 @@ class AddPullRequestFlagForm(wtf.Form): 'UID', [wtforms.validators.optional()]) -class UserSettingsForm(wtf.Form): +class UserSettingsForm(FlaskForm): ''' Form to create or edit project. ''' ssh_key = wtforms.TextAreaField( 'Public SSH key *', @@ -347,7 +352,7 @@ class UserSettingsForm(wtf.Form): ) -class AddUserForm(wtf.Form): +class AddUserForm(FlaskForm): ''' Form to add a user to a project. ''' user = wtforms.TextField( 'Username *', @@ -355,7 +360,7 @@ class AddUserForm(wtf.Form): ) -class AssignIssueForm(wtf.Form): +class AssignIssueForm(FlaskForm): ''' Form to assign an user to an issue. ''' assignee = wtforms.TextField( 'Assignee *', @@ -363,7 +368,7 @@ class AssignIssueForm(wtf.Form): ) -class AddGroupForm(wtf.Form): +class AddGroupForm(FlaskForm): ''' Form to add a group to a project. ''' group = wtforms.TextField( 'Group *', @@ -374,19 +379,19 @@ class AddGroupForm(wtf.Form): ) -class ConfirmationForm(wtf.Form): +class ConfirmationForm(FlaskForm): ''' Simple form used just for CSRF protection. ''' pass -class UploadFileForm(wtf.Form): +class UploadFileForm(FlaskForm): ''' Form to upload a file. ''' filestream = wtforms.FileField( 'File', [wtforms.validators.Required(), file_virus_validator]) -class UserEmailForm(wtf.Form): +class UserEmailForm(FlaskForm): ''' Form to edit the description of a project. ''' email = wtforms.TextField( 'email', [wtforms.validators.Required()] @@ -403,7 +408,7 @@ class UserEmailForm(wtf.Form): self.email.validators = [wtforms.validators.Required()] -class ProjectCommentForm(wtf.Form): +class ProjectCommentForm(FlaskForm): ''' Form to represent project. ''' objid = wtforms.TextField( 'Ticket/Request id', @@ -415,14 +420,14 @@ class ProjectCommentForm(wtf.Form): ) -class CommentForm(wtf.Form): +class CommentForm(FlaskForm): ''' Form to upload a file. ''' comment = wtforms.FileField( 'Comment', [wtforms.validators.Required(), file_virus_validator]) -class EditGroupForm(wtf.Form): +class EditGroupForm(FlaskForm): """ Form to ask for a password change. """ display_name = wtforms.TextField( 'Group name to display', @@ -468,7 +473,7 @@ class NewGroupForm(EditGroupForm): ] -class EditFileForm(wtf.Form): +class EditFileForm(FlaskForm): """ Form used to edit a file. """ content = wtforms.TextAreaField( 'content', [wtforms.validators.Required()]) @@ -495,7 +500,7 @@ class EditFileForm(wtf.Form): ] -class DefaultBranchForm(wtf.Form): +class DefaultBranchForm(FlaskForm): """Form to change the default branh for a repository""" branches = wtforms.SelectField( 'default_branch', @@ -515,7 +520,7 @@ class DefaultBranchForm(wtf.Form): ] -class EditCommentForm(wtf.Form): +class EditCommentForm(FlaskForm): """ Form to verify that comment is not empty """ update_comment = wtforms.TextAreaField( @@ -524,7 +529,7 @@ class EditCommentForm(wtf.Form): ) -class ForkRepoForm(wtf.Form): +class ForkRepoForm(FlaskForm): ''' Form to fork a project in the API. ''' repo = wtforms.TextField( 'The project name', @@ -539,7 +544,7 @@ class ForkRepoForm(wtf.Form): ) -class AddReportForm(wtf.Form): +class AddReportForm(FlaskForm): """ Form to verify that comment is not empty """ report_name = wtforms.TextAreaField( @@ -548,7 +553,7 @@ class AddReportForm(wtf.Form): ) -class PublicNotificationForm(wtf.Form): +class PublicNotificationForm(FlaskForm): """ Form to verify that comment is not empty """ issue_notifs = wtforms.TextAreaField( diff --git a/pagure/hooks/fedmsg.py b/pagure/hooks/fedmsg.py index d671bcf..14938c3 100644 --- a/pagure/hooks/fedmsg.py +++ b/pagure/hooks/fedmsg.py @@ -8,9 +8,12 @@ """ -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -46,7 +49,7 @@ class FedmsgTable(BASE): ) -class FedmsgForm(wtf.Form): +class FedmsgForm(FlaskForm): ''' Form to configure the fedmsg hook. ''' active = wtforms.BooleanField( 'Active', diff --git a/pagure/hooks/irc.py b/pagure/hooks/irc.py index 28ca148..5b6b421 100644 --- a/pagure/hooks/irc.py +++ b/pagure/hooks/irc.py @@ -10,10 +10,13 @@ import os -import flask_wtf as wtf import sqlalchemy as sa import pygit2 import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -56,7 +59,7 @@ class IrcTable(BASE): ) -class IrcForm(wtf.Form): +class IrcForm(FlaskForm): ''' Form to configure the irc hook. ''' server = wtforms.TextField( 'Server *', diff --git a/pagure/hooks/mail.py b/pagure/hooks/mail.py index a1c3792..a031c71 100644 --- a/pagure/hooks/mail.py +++ b/pagure/hooks/mail.py @@ -1,17 +1,20 @@ # -*- coding: utf-8 -*- """ - (c) 2014 - Copyright Red Hat Inc + (c) 2014-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon """ -import flask_wtf as wtf import sqlalchemy as sa import pygit2 import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -48,7 +51,7 @@ class MailTable(BASE): ) -class MailForm(wtf.Form): +class MailForm(FlaskForm): ''' Form to configure the mail hook. ''' mail_to = wtforms.TextField( 'Mail to', diff --git a/pagure/hooks/pagure_ci.py b/pagure/hooks/pagure_ci.py index fd8d405..de8fe13 100644 --- a/pagure/hooks/pagure_ci.py +++ b/pagure/hooks/pagure_ci.py @@ -8,9 +8,12 @@ """ -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -82,7 +85,7 @@ the URL to which your CI service should send its info. """ -class PagureCiForm(wtf.Form): +class PagureCiForm(FlaskForm): ''' Form to configure the CI hook. ''' ci_type = wtforms.SelectField( 'Type of CI service', diff --git a/pagure/hooks/pagure_force_commit.py b/pagure/hooks/pagure_force_commit.py index e0ab0d0..5e04b0d 100644 --- a/pagure/hooks/pagure_force_commit.py +++ b/pagure/hooks/pagure_force_commit.py @@ -8,10 +8,13 @@ """ -import flask_wtf as wtf import sqlalchemy as sa import pygit2 import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -49,7 +52,7 @@ class PagureForceCommitTable(BASE): ) -class PagureForceCommitForm(wtf.Form): +class PagureForceCommitForm(FlaskForm): ''' Form to configure the pagure hook. ''' branches = wtforms.TextField( 'Branches', diff --git a/pagure/hooks/pagure_hook.py b/pagure/hooks/pagure_hook.py index a207f66..5dbc1d8 100644 --- a/pagure/hooks/pagure_hook.py +++ b/pagure/hooks/pagure_hook.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2014 - Copyright Red Hat Inc + (c) 2014-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -10,9 +10,12 @@ import os -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -48,7 +51,7 @@ class PagureTable(BASE): ) -class PagureForm(wtf.Form): +class PagureForm(FlaskForm): ''' Form to configure the pagure hook. ''' active = wtforms.BooleanField( 'Active', diff --git a/pagure/hooks/pagure_request_hook.py b/pagure/hooks/pagure_request_hook.py index 32f6123..e494149 100644 --- a/pagure/hooks/pagure_request_hook.py +++ b/pagure/hooks/pagure_request_hook.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2014 - Copyright Red Hat Inc + (c) 2014-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -11,9 +11,12 @@ import os import flask -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -50,7 +53,7 @@ class PagureRequestsTable(BASE): ) -class PagureRequestsForm(wtf.Form): +class PagureRequestsForm(FlaskForm): ''' Form to configure the pagure hook. ''' active = wtforms.BooleanField( 'Active', diff --git a/pagure/hooks/pagure_ticket_hook.py b/pagure/hooks/pagure_ticket_hook.py index 06e6c33..fe3274d 100644 --- a/pagure/hooks/pagure_ticket_hook.py +++ b/pagure/hooks/pagure_ticket_hook.py @@ -11,9 +11,12 @@ import os import flask -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except ImportError: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -49,7 +52,7 @@ class PagureTicketsTable(BASE): ) -class PagureTicketsForm(wtf.Form): +class PagureTicketsForm(FlaskForm): ''' Form to configure the pagure hook. ''' active = wtforms.BooleanField( 'Active', diff --git a/pagure/hooks/pagure_unsigned_commits.py b/pagure/hooks/pagure_unsigned_commits.py index 39117bd..99750e7 100644 --- a/pagure/hooks/pagure_unsigned_commits.py +++ b/pagure/hooks/pagure_unsigned_commits.py @@ -8,9 +8,12 @@ """ -import flask_wtf as wtf import sqlalchemy as sa import wtforms +try: + from flask_wtf import FlaskForm as FlaskForm +except ImportError: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -46,7 +49,7 @@ class PagureUnsignedCommitTable(BASE): ) -class PagureUnsignedCommitForm(wtf.Form): +class PagureUnsignedCommitForm(FlaskForm): ''' Form to configure the pagure hook. ''' active = wtforms.BooleanField( diff --git a/pagure/hooks/rtd.py b/pagure/hooks/rtd.py index 66ee001..dee80f9 100644 --- a/pagure/hooks/rtd.py +++ b/pagure/hooks/rtd.py @@ -8,9 +8,14 @@ """ -import flask_wtf as wtf + import sqlalchemy as sa import wtforms + +try: + from flask_wtf import FlaskForm as FlaskForm +except ImportError: + from flask_wtf import Form as FlaskForm from sqlalchemy.orm import relation from sqlalchemy.orm import backref @@ -49,7 +54,7 @@ class RtdTable(BASE): ) -class RtdForm(wtf.Form): +class RtdForm(FlaskForm): ''' Form to configure the pagure hook. ''' project_name = wtforms.TextField( 'Project name on readthedoc.org', diff --git a/pagure/login_forms.py b/pagure/login_forms.py index 494f01f..cf9dd74 100644 --- a/pagure/login_forms.py +++ b/pagure/login_forms.py @@ -20,7 +20,10 @@ # pylint: disable=no-init -import flask_wtf as wtf +try: + from flask_wtf import FlaskForm as FlaskForm +except: + from flask_wtf import Form as FlaskForm import wtforms from pagure.forms import ConfirmationForm @@ -34,7 +37,7 @@ def same_password(form, field): 'Both password fields should be equal') -class LostPasswordForm(wtf.Form): +class LostPasswordForm(FlaskForm): """ Form to ask for a password change. """ username = wtforms.TextField( 'username *', @@ -42,7 +45,7 @@ class LostPasswordForm(wtf.Form): ) -class ResetPasswordForm(wtf.Form): +class ResetPasswordForm(FlaskForm): """ Form to reset one's password in the local database. """ password = wtforms.PasswordField( 'Password *', @@ -54,7 +57,7 @@ class ResetPasswordForm(wtf.Form): ) -class LoginForm(wtf.Form): +class LoginForm(FlaskForm): """ Form to login via the local database. """ username = wtforms.TextField( 'username *', @@ -66,7 +69,7 @@ class LoginForm(wtf.Form): ) -class NewUserForm(wtf.Form): +class NewUserForm(FlaskForm): """ Form to add a new user to the local database. """ user = wtforms.TextField( 'username *', @@ -90,7 +93,7 @@ class NewUserForm(wtf.Form): ) -class ChangePasswordForm(wtf.Form): +class ChangePasswordForm(FlaskForm): """ Form to reset one's password in the local database. """ old_password = wtforms.PasswordField( 'Old Password *',