Files
2026-03-26 20:14:35 -03:00

44 lines
1.7 KiB
Python

from flask_wtf import FlaskForm
from wtforms import StringField, IntegerField, TextAreaField, BooleanField, SubmitField, SelectField
from wtforms.validators import DataRequired, Length, NumberRange, Optional
class ClassroomForm(FlaskForm):
# campus_id = SelectField('Campus', coerce=int, validators=[DataRequired()])
building = StringField('Building', validators=[
DataRequired(),
Length(min=2, max=100)
])
room_number = StringField('Room Number', validators=[
DataRequired(),
Length(min=1, max=50)
])
floor = IntegerField('Floor', validators=[
DataRequired(),
NumberRange(min=1, max=50)
])
capacity = IntegerField('Capacity', validators=[
DataRequired(),
NumberRange(min=1, max=500)
])
description = TextAreaField('Description', validators=[
Optional(),
Length(max=500)
])
is_active = BooleanField('Active', default=True)
submit = SubmitField('Save Classroom')
class ClassroomResourceForm(FlaskForm):
resource_type = SelectField('Resource Type', choices=[
('PROJECTOR', 'Projector'),
('WHITEBOARD', 'Whiteboard'),
('COMPUTER', 'Computer'),
('SOUND_SYSTEM', 'Sound System'),
('MICROPHONE', 'Microphone'),
('AIR_CONDITIONER', 'Air Conditioner'),
('OTHER', 'Other')
], validators=[DataRequired()])
brand = StringField('Brand', validators=[Optional(), Length(max=100)])
model = StringField('Model', validators=[Optional(), Length(max=100)])
specifications = TextAreaField('Specifications', validators=[Optional()])
functional = BooleanField('Functional', default=True)
submit = SubmitField('Save Resource')