Compare commits
5 Commits
c843bfd478
...
0c5345f171
Author | SHA1 | Date | |
---|---|---|---|
0c5345f171 | |||
9adb5a6292 | |||
564af1ea69 | |||
7435478a23 | |||
ba0d6c3ba7 |
|
@ -162,7 +162,7 @@ class PNForm(Form):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = models.PN
|
model = models.PN
|
||||||
|
|
||||||
type = RadioField("Type", choices=["1","2","3"])
|
type = RadioField("Type de parcours", choices=["1","2","3"])
|
||||||
|
|
||||||
class ACForm(Form):
|
class ACForm(Form):
|
||||||
regex = "^AC\d{4}$"
|
regex = "^AC\d{4}$"
|
||||||
|
|
|
@ -1,28 +1,28 @@
|
||||||
from app import db
|
from app import db
|
||||||
|
|
||||||
Semestres_Competences = db.Table("Semestres_Competences",
|
Semestres_Competences = db.Table("Semestres_Competences",
|
||||||
db.Column("Semestre_num", db.String(1), db.ForeignKey("semestre.num")),
|
db.Column("Semestre_num", db.String(32), db.ForeignKey("semestre.num")),
|
||||||
db.Column("Competence_code", db.String(3), db.ForeignKey("competence.code"))
|
db.Column("Competence_code", db.String(32), db.ForeignKey("competence.code"))
|
||||||
)
|
)
|
||||||
|
|
||||||
ACs_Competences = db.Table("ACs_Competences",
|
ACs_Competences = db.Table("ACs_Competences",
|
||||||
db.Column("AC_code", db.String(6), db.ForeignKey("AC.code")),
|
db.Column("AC_code", db.String(32), db.ForeignKey("AC.code")),
|
||||||
db.Column("Competence_code", db.String(3), db.ForeignKey("competence.code"))
|
db.Column("Competence_code", db.String(32), db.ForeignKey("competence.code"))
|
||||||
)
|
)
|
||||||
|
|
||||||
Ressources_ACs = db.Table("Ressources_ACs",
|
Ressources_ACs = db.Table("Ressources_ACs",
|
||||||
db.Column("Ressource_code", db.String(4), db.ForeignKey("ressource.code")),
|
db.Column("Ressource_code", db.String(32), db.ForeignKey("ressource.code")),
|
||||||
db.Column("AC_code", db.String(6), db.ForeignKey("AC.code"))
|
db.Column("AC_code", db.String(32), db.ForeignKey("AC.code"))
|
||||||
)
|
)
|
||||||
|
|
||||||
Ressources_SAEs = db.Table("Ressources_SAEs",
|
Ressources_SAEs = db.Table("Ressources_SAEs",
|
||||||
db.Column("Ressource_code", db.String(4), db.ForeignKey("ressource.code")),
|
db.Column("Ressource_code", db.String(32), db.ForeignKey("ressource.code")),
|
||||||
db.Column("SAE_code", db.String(5), db.ForeignKey("SAE.code"))
|
db.Column("SAE_code", db.String(32), db.ForeignKey("SAE.code"))
|
||||||
)
|
)
|
||||||
|
|
||||||
SAEs_ACs = db.Table("SAEs_ACs",
|
SAEs_ACs = db.Table("SAEs_ACs",
|
||||||
db.Column("SAE_code", db.String(5), db.ForeignKey("SAE.code")),
|
db.Column("SAE_code", db.String(32), db.ForeignKey("SAE.code")),
|
||||||
db.Column("AC_code", db.String(6), db.ForeignKey("AC.code"))
|
db.Column("AC_code", db.String(32), db.ForeignKey("AC.code"))
|
||||||
)
|
)
|
||||||
|
|
||||||
class Semestre(db.Model):
|
class Semestre(db.Model):
|
||||||
|
@ -38,7 +38,7 @@ class Semestre(db.Model):
|
||||||
return "<Semestre {}>".format(self.num)
|
return "<Semestre {}>".format(self.num)
|
||||||
|
|
||||||
class Competence(db.Model):
|
class Competence(db.Model):
|
||||||
code = db.Column(db.String(3), primary_key = True, info={'label': 'Code'})
|
code = db.Column(db.String(32), primary_key = True, info={'label': 'Code'})
|
||||||
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
||||||
diminutif = db.Column(db.String(30), info={'label': 'Diminutif'})
|
diminutif = db.Column(db.String(30), info={'label': 'Diminutif'})
|
||||||
description = db.Column(db.Text(), info={'label': 'Description'})
|
description = db.Column(db.Text(), info={'label': 'Description'})
|
||||||
|
@ -85,8 +85,8 @@ class Competence(db.Model):
|
||||||
return "<Competence {}>".format(self.code)
|
return "<Competence {}>".format(self.code)
|
||||||
|
|
||||||
class CoefSAE(db.Model):
|
class CoefSAE(db.Model):
|
||||||
competence_code = db.Column(db.String(3), db.ForeignKey("competence.code"), primary_key=True)
|
competence_code = db.Column(db.String(32), db.ForeignKey("competence.code"), primary_key=True)
|
||||||
sae_code = db.Column(db.String(6), db.ForeignKey("SAE.code"), primary_key=True)
|
sae_code = db.Column(db.String(32), db.ForeignKey("SAE.code"), primary_key=True)
|
||||||
coef = db.Column(db.String(2))
|
coef = db.Column(db.String(2))
|
||||||
competence = db.relationship("Competence", lazy=False, backref=db.backref("saes"))
|
competence = db.relationship("Competence", lazy=False, backref=db.backref("saes"))
|
||||||
sae = db.relationship("SAE", lazy=False, backref=db.backref("competences"))
|
sae = db.relationship("SAE", lazy=False, backref=db.backref("competences"))
|
||||||
|
@ -97,8 +97,8 @@ class CoefSAE(db.Model):
|
||||||
return result
|
return result
|
||||||
|
|
||||||
class CoefRessource(db.Model):
|
class CoefRessource(db.Model):
|
||||||
competence_code = db.Column(db.String(3), db.ForeignKey("competence.code"), primary_key=True)
|
competence_code = db.Column(db.String(32), db.ForeignKey("competence.code"), primary_key=True)
|
||||||
ressource_code = db.Column(db.String(4), db.ForeignKey("ressource.code"), primary_key=True)
|
ressource_code = db.Column(db.String(32), db.ForeignKey("ressource.code"), primary_key=True)
|
||||||
coef = db.Column(db.String(2))
|
coef = db.Column(db.String(2))
|
||||||
competence = db.relationship("Competence", lazy=False, backref=db.backref("ressources"))
|
competence = db.relationship("Competence", lazy=False, backref=db.backref("ressources"))
|
||||||
ressource = db.relationship("Ressource", lazy=False, backref=db.backref("competences"))
|
ressource = db.relationship("Ressource", lazy=False, backref=db.backref("competences"))
|
||||||
|
@ -109,7 +109,7 @@ class CoefRessource(db.Model):
|
||||||
return result
|
return result
|
||||||
|
|
||||||
class AC(db.Model):
|
class AC(db.Model):
|
||||||
code = db.Column(db.String(6), primary_key = True, info={'label': 'Code'})
|
code = db.Column(db.String(32), primary_key = True, info={'label': 'Code'})
|
||||||
titre = db.Column(db.String(255), info={'label': 'Titre'})
|
titre = db.Column(db.String(255), info={'label': 'Titre'})
|
||||||
saes = db.relationship("SAE", secondary=SAEs_ACs, lazy=False, backref=db.backref("acs", lazy=False))
|
saes = db.relationship("SAE", secondary=SAEs_ACs, lazy=False, backref=db.backref("acs", lazy=False))
|
||||||
ressources = db.relationship("Ressource", order_by="Ressource.code", secondary=Ressources_ACs, lazy=False, backref=db.backref("acs", lazy=False))
|
ressources = db.relationship("Ressource", order_by="Ressource.code", secondary=Ressources_ACs, lazy=False, backref=db.backref("acs", lazy=False))
|
||||||
|
@ -126,7 +126,7 @@ class AC(db.Model):
|
||||||
return "<AC {}>".format(self.code)
|
return "<AC {}>".format(self.code)
|
||||||
|
|
||||||
class PN(db.Model):
|
class PN(db.Model):
|
||||||
code = db.Column(db.String(3), primary_key = True, info={'label': 'Code'})
|
code = db.Column(db.String(32), primary_key = True, info={'label': 'Code'})
|
||||||
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
||||||
diminutif = db.Column(db.String(30), info={'label': 'Diminutif'})
|
diminutif = db.Column(db.String(30), info={'label': 'Diminutif'})
|
||||||
description = db.Column(db.Text(), info={'label': 'Description'})
|
description = db.Column(db.Text(), info={'label': 'Description'})
|
||||||
|
@ -141,7 +141,7 @@ class PN(db.Model):
|
||||||
return "<PN {}>".format(self.code)
|
return "<PN {}>".format(self.code)
|
||||||
|
|
||||||
class SAE(db.Model):
|
class SAE(db.Model):
|
||||||
code = db.Column(db.String(5), primary_key = True, info={'label': 'Code'})
|
code = db.Column(db.String(32), primary_key = True, info={'label': 'Code'})
|
||||||
titre = db.Column(db.String(255), info={'label': 'Titre'})
|
titre = db.Column(db.String(255), info={'label': 'Titre'})
|
||||||
semestre = db.Column(db.String(255), info={'label': 'Semestre'})
|
semestre = db.Column(db.String(255), info={'label': 'Semestre'})
|
||||||
heures_encadrees = db.Column(db.String(3), info={'label': 'Heures Encadrées'})
|
heures_encadrees = db.Column(db.String(3), info={'label': 'Heures Encadrées'})
|
||||||
|
@ -173,7 +173,7 @@ class SAE(db.Model):
|
||||||
return "<SAE {}>".format(self.code)
|
return "<SAE {}>".format(self.code)
|
||||||
|
|
||||||
class Ressource(db.Model):
|
class Ressource(db.Model):
|
||||||
code = db.Column(db.String(4), primary_key = True, info={'label': 'Code'})
|
code = db.Column(db.String(32), primary_key = True, info={'label': 'Code'})
|
||||||
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
nom = db.Column(db.String(255), info={'label': 'Nom'})
|
||||||
semestre = db.Column(db.String(255), info={'label': 'Semestre'})
|
semestre = db.Column(db.String(255), info={'label': 'Semestre'})
|
||||||
heures_formation = db.Column(db.String(3), info={'label': 'Heures Formation'})
|
heures_formation = db.Column(db.String(3), info={'label': 'Heures Formation'})
|
||||||
|
|
|
@ -3,7 +3,7 @@ from app import app, db
|
||||||
from app.forms import *
|
from app.forms import *
|
||||||
import app.models as models
|
import app.models as models
|
||||||
|
|
||||||
@app.route("/")
|
@app.route("/", methods=["GET","POST"])
|
||||||
@app.route("/index", methods=["GET","POST"])
|
@app.route("/index", methods=["GET","POST"])
|
||||||
def index():
|
def index():
|
||||||
form = AccueilForm()
|
form = AccueilForm()
|
||||||
|
@ -27,6 +27,9 @@ def index():
|
||||||
def Semestre(num):
|
def Semestre(num):
|
||||||
form = SemestreForm()
|
form = SemestreForm()
|
||||||
semestre = models.Semestre.query.filter_by(num=num).first()
|
semestre = models.Semestre.query.filter_by(num=num).first()
|
||||||
|
if semestre == None:
|
||||||
|
flash("Ce Semestre n'existe pas!", "error")
|
||||||
|
return redirect(url_for("index"))
|
||||||
for i, ue in enumerate(semestre.ues):
|
for i, ue in enumerate(semestre.ues):
|
||||||
if form.ueform.__len__() < len(semestre.ues): form.ueform.append_entry(data={"ue": ue.code})
|
if form.ueform.__len__() < len(semestre.ues): form.ueform.append_entry(data={"ue": ue.code})
|
||||||
# Donne aux dropdowns la liste des objets de formations que les ACs possèdent sans doublons
|
# Donne aux dropdowns la liste des objets de formations que les ACs possèdent sans doublons
|
||||||
|
@ -98,6 +101,8 @@ def PN(code):
|
||||||
form.exporterRef()
|
form.exporterRef()
|
||||||
elif form.sauvegarder.data:
|
elif form.sauvegarder.data:
|
||||||
form.sauvegarderRef()
|
form.sauvegarderRef()
|
||||||
|
flash("Le référentiel " + form.code.data + " a été sauvegardé!", "success")
|
||||||
|
return redirect(url_for("PN", code=form.code.data[2:]))
|
||||||
return redirect(url_for("PN"))
|
return redirect(url_for("PN"))
|
||||||
elif code:
|
elif code:
|
||||||
referentiel = models.PN.query.filter_by(code="PN"+code).first()
|
referentiel = models.PN.query.filter_by(code="PN"+code).first()
|
||||||
|
@ -123,6 +128,8 @@ def AC(code):
|
||||||
form.exporterRef()
|
form.exporterRef()
|
||||||
elif form.sauvegarder.data:
|
elif form.sauvegarder.data:
|
||||||
form.sauvegarderRef()
|
form.sauvegarderRef()
|
||||||
|
flash("Le référentiel " + form.code.data + " a été sauvegardé!", "success")
|
||||||
|
return redirect(url_for("AC", code=form.code.data[2:]))
|
||||||
return redirect(url_for("AC"))
|
return redirect(url_for("AC"))
|
||||||
elif code:
|
elif code:
|
||||||
referentiel = models.AC.query.filter_by(code="AC"+code).first()
|
referentiel = models.AC.query.filter_by(code="AC"+code).first()
|
||||||
|
@ -148,6 +155,8 @@ def SAE(code):
|
||||||
form.exporterRef()
|
form.exporterRef()
|
||||||
elif form.sauvegarder.data:
|
elif form.sauvegarder.data:
|
||||||
form.sauvegarderRef()
|
form.sauvegarderRef()
|
||||||
|
flash("Le référentiel " + form.code.data + " a été sauvegardé!", "success")
|
||||||
|
return redirect(url_for("SAE", code=form.code.data[3:]))
|
||||||
return redirect(url_for("SAE"))
|
return redirect(url_for("SAE"))
|
||||||
elif code:
|
elif code:
|
||||||
referentiel = models.SAE.query.filter_by(code="SAE"+code).first()
|
referentiel = models.SAE.query.filter_by(code="SAE"+code).first()
|
||||||
|
@ -173,6 +182,8 @@ def Ressource(code):
|
||||||
form.exporterRef()
|
form.exporterRef()
|
||||||
elif form.sauvegarder.data:
|
elif form.sauvegarder.data:
|
||||||
form.sauvegarderRef()
|
form.sauvegarderRef()
|
||||||
|
flash("Le référentiel " + form.code.data + " a été sauvegardé!", "success")
|
||||||
|
return redirect(url_for("Ressource", code=form.code.data[1:]))
|
||||||
return redirect(url_for("Ressource"))
|
return redirect(url_for("Ressource"))
|
||||||
elif code:
|
elif code:
|
||||||
referentiel = models.Ressource.query.filter_by(code="R"+code).first()
|
referentiel = models.Ressource.query.filter_by(code="R"+code).first()
|
||||||
|
@ -198,6 +209,8 @@ def Competence(code):
|
||||||
form.exporterRef()
|
form.exporterRef()
|
||||||
if form.sauvegarder.data:
|
if form.sauvegarder.data:
|
||||||
form.sauvegarderRef()
|
form.sauvegarderRef()
|
||||||
|
flash("Le référentiel " + form.code.data + " a été sauvegardé!", "success")
|
||||||
|
return redirect(url_for("Competence", code=form.code.data[2:]))
|
||||||
return redirect(url_for("Competence"))
|
return redirect(url_for("Competence"))
|
||||||
elif code:
|
elif code:
|
||||||
referentiel = models.Competence.query.filter_by(code="RT"+code).first()
|
referentiel = models.Competence.query.filter_by(code="RT"+code).first()
|
||||||
|
|
|
@ -96,12 +96,27 @@
|
||||||
<!-- Contenu de la page -->
|
<!-- Contenu de la page -->
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
{% with messages = get_flashed_messages() %}
|
{% with messages = get_flashed_messages(category_filter=["error"]) %}
|
||||||
{% if messages %}
|
{% if messages %}
|
||||||
<script>
|
<article class="message is-danger">
|
||||||
alert("{% for message in messages %}{{message}}{% endfor %}");
|
<div class="message-body">
|
||||||
</script>
|
{% for message in messages %}
|
||||||
{% endif %}
|
<p>{{message}}</p>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
{% endif %}
|
||||||
|
{% endwith %}
|
||||||
|
{% with messages = get_flashed_messages(category_filter=["success"]) %}
|
||||||
|
{% if messages %}
|
||||||
|
<article class="message is-success">
|
||||||
|
<div class="message-body">
|
||||||
|
{% for message in messages %}
|
||||||
|
<p>{{message}}</p>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</article>
|
||||||
|
{% endif %}
|
||||||
{% endwith %}
|
{% endwith %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user