ScoDoc/app/but/forms/refcomp_forms.py

50 lines
1.5 KiB
Python
Raw Permalink Normal View History

2021-12-03 11:03:33 +01:00
##############################################################################
# ScoDoc
2023-01-02 13:16:27 +01:00
# Copyright (c) 1999 - 2023 Emmanuel Viennet. All rights reserved.
2021-12-03 11:03:33 +01:00
# See LICENSE
##############################################################################
"""ScoDoc 9 : Formulaires / référentiel de compétence
"""
from flask_wtf import FlaskForm
from flask_wtf.file import FileField, FileAllowed
2021-12-03 11:03:33 +01:00
from wtforms import SelectField, SubmitField
class FormationRefCompForm(FlaskForm):
referentiel_competence = SelectField(
"Choisir parmi les référentiels déjà chargés :"
)
2021-12-03 11:03:33 +01:00
submit = SubmitField("Valider")
cancel = SubmitField("Annuler")
class RefCompLoadForm(FlaskForm):
referentiel_standard = SelectField(
"Choisir un référentiel de compétences officiel BUT"
)
2021-12-03 11:03:33 +01:00
upload = FileField(
label="... ou bien sélectionner un fichier XML au format Orébut (réservé aux développeurs !)",
2021-12-03 11:03:33 +01:00
validators=[
FileAllowed(
[
"xml",
],
"Fichier XML Orébut seulement",
),
],
)
submit = SubmitField("Valider")
cancel = SubmitField("Annuler")
2023-04-04 13:00:39 +02:00
def validate(self, extra_validators=None):
if not super().validate(extra_validators):
return False
if (self.referentiel_standard.data == "0") == (not self.upload.data):
self.referentiel_standard.errors.append(
"Choisir soit un référentiel, soit un fichier xml"
)
return False
return True