Exemplo n.º 1
0
class UpdateAccountFrom(FlaskForm):
    """
    This class is represent the sign up form
    """
    username = StringField('Username',
                           validators=[
                               validators.DataRequired(),
                               validators.Length(min=4, max=20)
                           ])
    email = StringField(
        'Email', validators=[validators.DataRequired(),
                             validators.Email()])
    picture = flask_file.FileField(
        'Update Profile Picture',
        validators=[flask_file.file_allowed(['jpg', 'jpeg', 'png'])])
    submit = SubmitField('Udpate')

    def validate_username(self, username):
        if username.data != flask_login.current_user.username:
            user = models.User.query.filter_by(username=username.data).first()
            if user:
                raise validators.ValidationError(
                    'That username already taken. Please select another username'
                )

    def validate_email(self, email):
        if email.data != flask_login.current_user.email:
            user = models.User.query.filter_by(email=email.data).first()
            if user:
                raise validators.ValidationError(
                    'That email already taken. Please select another email')
Exemplo n.º 2
0
class UserForm(FlaskForm):
    '''会员注册'''
    name = StringField(
        label=u"昵称",
        validators=[DataRequired(u'请输入昵称')],  #设置为必填项目
        description=u"昵称",
        render_kw={
            "class": "form-control input-lg",
            "placeholder": u"请输入昵称!",
            #"required":"required"     #html提示不能为空
        })
    email = StringField(
        label=u"邮箱",
        validators=[DataRequired(u'请输入邮箱'),
                    Email(u"邮箱格式不正确!")],  #设置为必填项目
        description=u"邮箱",
        render_kw={
            "class": "form-control input-lg",
            "placeholder": u"请输入邮箱!",
            #"required":"required"     #html提示不能为空
        })
    phone = StringField(
        label=u"手机",
        validators=[
            DataRequired(u'请输入手机号'),
            Regexp("1[3458]\\d{9}", message=u"号码格式不正确")
        ],  #设置为必填项目
        description=u"手机",
        render_kw={
            "class": "form-control input-lg",
            "placeholder": u"请输入手机号!",
            #"required":"required"     #html提示不能为空
        })
    face = FileField(
        label=u"头像",
        validators=[
            DataRequired(u'请上传头像'),
            file_allowed(['jpg', 'png'], u'Images only!')
        ],  #设置为必填项目
        description=u"头像",
        render_kw={
            "id": "input_face",
            "class": "form-control",
            #"name":"face",
            #"type":"hidden"
        })
    info = TextAreaField(
        label=u"个人简介",
        validators=[DataRequired(u'请输入个人简介')],  #设置为必填项目
        description=u"个人简介",
        render_kw={
            "class": "form-control",
            "id": "input_info",
            "style": "height:100px;",
            "row": 30
        })
    submit = SubmitField(label=u"保存修改",
                         render_kw={
                             "class": " btn btn-success",
                         })
Exemplo n.º 3
0
class AddBookForm(FlaskForm):
    title = StringField('Title', validators=[DataRequired()])
    author = StringField('Author', validators=[DataRequired()])
    subject = StringField('Subject', validators=[DataRequired()])
    pub_date = DateField('Publication Date',
                         validators=[DataRequired()],
                         format='%Y-%m-%d')
    isbn = StringField('ISBN',
                       validators=[
                           DataRequired(),
                           Length(min=17,
                                  max=17,
                                  message=("* Must be 17 characters long"))
                       ])
    loan_period = IntegerField('Loan Period', validators=[DataRequired()])
    barcode = StringField('Barcode',
                          validators=[
                              DataRequired(),
                              Length(min=6,
                                     max=6,
                                     message=("* Must be 6 characters long"))
                          ])
    pages = IntegerField('Pages', validators=[DataRequired()])
    image = FileField('Cover', validators=[file_allowed(['png', 'jpg'])])
    submit3 = SubmitField('Add Book')
Exemplo n.º 4
0
class DataSubmitForm(FlaskForm):
    movie_title = StringField("Title", validators=[DataRequired()])
    movie_industry = StringField("Industry", validators=[DataRequired()])
    movie_genr = StringField("Genr", validators=[DataRequired()])
    movie_image = FileField("upload Picture",
                            validators=[file_allowed(['jpg', 'png'])])
    release_date = DateField("DatePicker", format="%Y-%m-%d")
    cast = SelectMultipleField(choices=choicess)
    submit = SubmitField("Add")
Exemplo n.º 5
0
class ImageForm(FlaskForm):
    image = FileField('Choose File',
                      validators=[
                          file_required(),
                          file_allowed(['pdf', 'doc', 'docx', 'jpg'])
                      ])
    language = SelectField('Language',
                           default='English',
                           choices=[('English', 'English'),
                                    ('France', 'France'),
                                    ('Arabic', 'Arabic')])
    submit = SubmitField('Secure')
Exemplo n.º 6
0
class AccountUpdateForm(FlaskForm):
    username = StringField('Username', validators=[DataRequired(), Length(min=2, max=20)])
    email = StringField('Email', validators=[DataRequired(), Email()])
    picture = FileField('Update Profile Picture', validators=[file_allowed(['jpg', 'png', 'gif'])])
    submit = SubmitField('Update')

    def validate_username(self, username):
        if username.data != current_user.username:
            user = User.query.filter_by(username=username.data).first()
            if user:
                raise ValidationError('Username already taken')

    def validate_email(self, email):
        if email.data != current_user.email:
            user = User.query.filter_by(email=email.data).first()
            if user:
                raise ValidationError('Email already taken')
Exemplo n.º 7
0
class AccountUpdateForm(FlaskForm):
    username = StringField(validators=[DataRequired()])
    picture = FileField(validators=[file_allowed(['jpg', 'png'])])
    email = StringField(validators=[DataRequired()])
    submit = SubmitField('обновить')

    def validate_username(self, username):
        if username.data != current_user.username:
            user = User.query.filter_by(username=username.data).first()
            if user is not None:
                raise ValidationError('Используйте другое имя!')

    def validate_email(self, email):
        if email.data != current_user.email:
            user = User.query.filter_by(email=email.data).first()
            if user is not None:
                raise ValidationError('Используйте другой Email!')
Exemplo n.º 8
0
class UpdateAccountForm(FlaskForm):
    username = StringField('Username', validators=[DataRequired(), Length(min=6,max=20)])
    email = StringField('Email', validators=[DataRequired(), Email()])
    picture = FileField('Update Profile Picture', validators=[file_allowed(['jpg','png'])])
    submit = SubmitField('Update')

    def validate_username(self, username):
        if username.data != current_user.username:

            user = User.query.filter_by(username = username.data ).first()
            if user:
                raise ValueError('username already exist please choose another username')
    def validate_email(self, email):
        if email.data != current_user.email:

            user = User.query.filter_by(email = email.data ).first()
            if user:
                raise ValueError('E-mail already Exist, please choose another email')
Exemplo n.º 9
0
class PreviewForm(FlaskForm):  
    '''电影预告表单'''
    title = StringField(label=u"预告标题",
                          validators=[DataRequired(u'请输入预告标题')],  #设置为必填项目
                          description=u"预告标题",
                          render_kw={"class":"form-control", 
                                     "id":"input_title", 
                                     "placeholder":u"请输入预告标题!",
                              }
                          )
    logo = FileField(label=u"预告封面",
                  validators=[DataRequired(u'请上传预告封面'),file_allowed(['jpg', 'png'], u'Images only!')],  #设置为必填项目
                  description=u"预告封面",
                  render_kw={"id":"input_logo",
                          }
                  )
    submit = SubmitField(label=u"编辑",
                 render_kw={"class":"btn btn-primary",
                      }
                  )    
Exemplo n.º 10
0
class ProfileForm(FlaskForm):
    username = StringField('username',
                           validators=[DataRequired(),
                                       Length(min=2, max=20)])
    email = StringField('Email', validators=[DataRequired(), email()])
    picture = file.FileField('Update profile picture',
                             validators=[file.file_allowed(['jpg', 'png'])])
    submit = SubmitField('Save')

    def validate_username(self, username):
        if username.data != current_user.username:
            user = User.query.filter_by(username=username.data).first()
            if user:
                raise ValidationError('Already Taken!')

    def validate_email(self, email):
        if email.data != current_user.email:
            user = User.query.filter_by(email=email.data).first()
            if user:
                raise ValidationError('Already Existing!')
Exemplo n.º 11
0
class UpdateForm(FlaskForm):
    Username = StringField('Username',
                           validators=[DataRequired(),
                                       Length(min=2, max=12)])
    Email = StringField('Email', validators=[DataRequired(), Email()])
    picture = FileField('Update Profile Pic',
                        validators=[file_allowed(['jpg', 'png', 'jpeg'])])
    Submit = SubmitField('Update')

    def validate_Username(self, Username):
        if Username.data != current_user.username:
            use_1 = User.query.filter_by(username=Username.data).first()
            if use_1:
                raise ValidationError("username already exists")

    def validate_Email(self, Email):
        if Email.data != current_user.email:
            Email_1 = User.query.filter_by(email=Email.data).first()
            if Email_1:
                raise ValidationError("Email already exists")
Exemplo n.º 12
0
class ContactImportForm(Form):
    filename = FileField(
        _('File'), validators=[file_required(),
                               file_allowed(['csv', 'CSV'])])

    def validate_filename(form, field):
        data = field.data.readlines()
        linenum = 1
        for line in data:
            if not len(line.split(',')) == 2:
                msg = _('CSV file is broken, line %(linenum)s',
                        linenum=linenum)
                raise ValidationError(msg)
            elif not line[0].isdigit():
                raise ValidationError(
                    _(
                        'The first column does not contain phone '
                        'number, line %(linenum)s',
                        linenum=linenum))
            linenum += 1
        field.data.seek(0)
Exemplo n.º 13
0
class UpdateAccountForm(FlaskForm):
    username = StringField('Username',
                           validators=[DataRequired(),
                                       Length(min=2, max=20)])
    email = StringField('Email', validators=[DataRequired(), Email()])
    picture = FileField('Update Profile Picture',
                        validators=[file_allowed(['jpeg', 'jpg', 'png'])])
    submit = SubmitField('Update')

    def validate_username(self, username):
        if username.data != current_user.username:
            user = User.query.filter_by(username=username.data).first()
            if user:
                raise ValidationError(
                    f'That username is already taken! Choose another one')

    def validate_email(self, email):
        if email.data != current_user.email:
            user = User.query.filter_by(email=email.data).first()
            if user:
                raise ValidationError(
                    f'That email is Taken! Please choose a different.')
Exemplo n.º 14
0
class UploadForm(FlaskForm):
    photo = FileField(
        'Upload Image',
        validators=[file_required(),
                    file_allowed(['png', 'jpg'])])
    submit = SubmitField('Upload')
Exemplo n.º 15
0
class MovieForm(FlaskForm):
    '''电影表单'''
    title = StringField(label=u"片名",
                          validators=[DataRequired(u'请输入要添加片名')],  #设置为必填项目
                          description=u"电影片名",
                          render_kw={"class":"form-control", 
                                     "id":"input_title", 
                                     "placeholder":u"请输入片名!",
                              }
                          )
    url = FileField(label=u"文件",
                      validators=[DataRequired(u'请上传文件')],  #设置为必填项目
                      description=u"电影文件",
                      render_kw={"id":"input_url", 
                              }
                      )
    info = TextAreaField(label=u"电影简介",
                      validators=[DataRequired(u'请输入电影简介')],  #设置为必填项目
                      description=u"电影简介",
                      render_kw={"class":"form-control", 
                                 "id":"input_info",
                                 "row":10
                          }
                      )
    logo = FileField(label=u"电影封面",
                  validators=[DataRequired(u'请上传封面'),file_allowed(['jpg', 'png'], u'Images only!')],  #设置为必填项目
                  description=u"电影封面",
                  render_kw={"id":"input_logo",
                          }
                  )
    
    star = SelectField(label=u"星级",
                  validators=[DataRequired(u'请选择星级')],  #设置为必填项目
                  coerce = int,
                  choices = [(1,u"1星"),(2,u"2星"),(3,u"3星"),(4,u"4星"),(5,u"5星")],
                  
                  description=u"星级",
                  render_kw={"class":"form-control", 
                             "id":"input_star",
                          }
                  )
    
    tag_id = SelectField(label=u"标签",
                  validators=[DataRequired(u'请选择标签')],  #设置为必填项目
                  coerce = int,
                  choices = [(v.id,v.name) for v in tags],  #列表生成器生成选择 
                  description=u"标签",
                  render_kw={"class":"form-control", 
                             "id":"input_tag_id"
                          }
                  )
    area = StringField(label=u"地区",
                      validators=[DataRequired(u'请输入地区')],  #设置为必填项目
                      description=u"地区",
                      render_kw={"class":"form-control", 
                                 "id":"input_area", 
                                 "placeholder":u"请输入地区!",
                          }
                      )
    length = StringField(label=u"片长",
                      validators=[DataRequired(u'请输入片长')],  #设置为必填项目
                      description=u"电影片长",
                      render_kw={"class":"form-control", 
                                 "id":"input_length", 
                                 "placeholder":u"请输入片长!",
                          }
                      )
    release_time = StringField(label=u"上映时间",
                      validators=[DataRequired(u'请输入上映时间')],  #设置为必填项目
                      description=u"上映时间",
                      render_kw={"class":"form-control", 
                                 "id":"input_release_time", 
                                 "placeholder":u"请输入上映时间!",
                          }
                      )
    
    submit = SubmitField(label=u"编辑",
                     render_kw={"class":"btn btn-primary",
                          }
                      )
Exemplo n.º 16
0
class TextUploadForm(Form):
    upload = FileField("Upload file",
                       validators=[file_required(),
                                   file_allowed(['txt'])])
Exemplo n.º 17
0
class ImageUploadForm(Form):
    upload = FileField("Upload file",
                       validators=[file_required(),
                                   file_allowed(images)])
Exemplo n.º 18
0
class UploadForm(Form):
    avatar = FileField(
        validators=[file_required(),
                    file_allowed(['jpg', 'gif', 'png'])])
    desc = StringField(validators=[InputRequired()])
Exemplo n.º 19
0
import asyncio
import csv
import json
from io import StringIO

from airflow.utils.db import provide_session
from flask_wtf import FlaskForm
from flask_wtf.file import FileField, file_allowed, file_required
from wtforms import validators
from wtforms.fields import BooleanField, SelectField

from dagen.query import DagenDagQueryset, DagenDagVersionQueryset
from dagen.utils import get_template_loader
from dagen.www.utils import async_gather_dict

cron_dump_csv = file_allowed(('csv', ))

async_loop = asyncio.get_event_loop()


class BulkSyncDagenForm(FlaskForm):
    template_id = SelectField(
        'Template ID',
        validators=(validators.required(), ),
    )
    csv_data = FileField(
        'Choose CSV file',
        validators=(file_required(), cron_dump_csv),
        description=
        'Please pick a CSV file containing all the required DAGs (relevant to this template) to generate'
    )