2023-02-17 16:59:42 -05:00
|
|
|
from flask_wtf import FlaskForm
|
2023-03-15 17:07:34 -04:00
|
|
|
from wtforms.fields import (SubmitField,
|
|
|
|
|
PasswordField,
|
|
|
|
|
StringField,
|
|
|
|
|
TextAreaField,
|
|
|
|
|
IntegerField,
|
|
|
|
|
BooleanField,
|
|
|
|
|
RadioField)
|
|
|
|
|
from wtforms.validators import InputRequired, Length
|
|
|
|
|
from flask_wtf.file import FileField, FileRequired
|
|
|
|
|
from werkzeug.utils import secure_filename
|
2023-03-13 17:23:56 -04:00
|
|
|
from flask_codemirror.fields import CodeMirrorField
|
2023-02-17 16:59:42 -05:00
|
|
|
|
2023-03-15 17:07:34 -04:00
|
|
|
|
|
|
|
|
class ApiKey(FlaskForm):
|
|
|
|
|
api_key = PasswordField('Api Key',
|
|
|
|
|
validators=[InputRequired(),
|
|
|
|
|
Length(min=20, max=25)]
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
2023-03-13 17:23:56 -04:00
|
|
|
class TemplateForm(FlaskForm):
|
2023-03-15 17:07:34 -04:00
|
|
|
name = StringField("Template File Name",
|
|
|
|
|
validators=[InputRequired()])
|
|
|
|
|
|
|
|
|
|
body = TextAreaField("Template Code",
|
|
|
|
|
validators=[InputRequired()])
|
|
|
|
|
|
|
|
|
|
submit = SubmitField('Upload Templates')
|
|
|
|
|
|
|
|
|
|
# template_code = CodeMirrorField( language='htmlembedded',
|
|
|
|
|
# config={'lineNumbers': 'true'})
|
|
|
|
|
|
|
|
|
|
class CsvForm(FlaskForm):
|
|
|
|
|
file = FileField(validators=[FileRequired()])
|
|
|
|
|
all_or_some = RadioField("All or Some",
|
|
|
|
|
choices=['All learners in all groups',
|
|
|
|
|
'Learners only in adjacent groups'],
|
|
|
|
|
validators=[InputRequired()])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CourseForm(FlaskForm):
|
|
|
|
|
title = StringField('Title',
|
|
|
|
|
validators=[InputRequired(),
|
|
|
|
|
Length(min=10, max=100)])
|
|
|
|
|
description = TextAreaField('Course Description',
|
|
|
|
|
validators=[InputRequired(),
|
|
|
|
|
Length(max=200)])
|
|
|
|
|
price = IntegerField('Price', validators=[InputRequired()])
|
|
|
|
|
level = RadioField('Level',
|
|
|
|
|
choices=['Beginner', 'Intermediate', 'Advanced'],
|
|
|
|
|
validators=[InputRequired()])
|
|
|
|
|
available = BooleanField('Available', default='checked')
|
2023-02-17 16:59:42 -05:00
|
|
|
|