from flask_wtf import FlaskForm
from flask_wtf.file import FileField, FileAllowed, FileRequired
from wtforms.validators import DataRequired
from wtforms import SelectField, SubmitField, TextAreaField
class UploadForm(FlaskForm):
uploadFile = FileField('file', validators=[
FileRequired(message="You must specify to upload"),
FileAllowed(['txt', 'gz', 'zip', 'log'], 'Log files only!')
])
submit = SubmitField('Upload')
class AnalyzeLog(FlaskForm):
logFile = SelectField(u'Log file', validators = [DataRequired()])
submit = SubmitField('Analyze')
class MySelectField(SelectField):
def pre_validate(self, form):
pass
class QueryLog(FlaskForm):
logFile = SelectField(u'Log file', validators = [DataRequired()])
queryOptions = MySelectField(u'Canned Queries', coerce=str, validators = [DataRequired()])
sqlQuery = TextAreaField(u"SQL Query", default="Enter your SQL query here",
validators = [DataRequired()])
submit = SubmitField('RunQuery')
class ChartLog(FlaskForm):
logFile = SelectField(u'Log file', validators = [DataRequired()])
chartId = SelectField(u'Chart to display', validators = [DataRequired()])
submit = SubmitField('Chart')