forked from ScoDoc/ScoDoc
Update opolka/ScoDoc from ScoDoc/ScoDoc #2
1
app/static/icons/warning_bloquant.svg
Normal file
1
app/static/icons/warning_bloquant.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 8.5 KiB |
1
app/static/icons/warning_std.svg
Normal file
1
app/static/icons/warning_std.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg id="Capa_1" enable-background="new 0 0 512 512" height="512" viewBox="0 0 512 512" width="512" xmlns="http://www.w3.org/2000/svg"><path d="m208.587 54.407-201.17 348.437c-21.073 36.499 5.268 82.122 47.413 82.122h402.34c42.145 0 68.486-45.624 47.413-82.122l-201.17-348.437c-21.072-36.498-73.754-36.498-94.826 0z" fill="#da4a54"/><path d="m54.83 443.76c-6.802 0-10.267-4.242-11.727-6.771s-3.401-7.65 0-13.542l201.17-348.436c3.401-5.891 8.807-6.771 11.727-6.771s8.326.88 11.727 6.771l201.17 348.436c3.401 5.891 1.46 11.013 0 13.541-1.46 2.529-4.925 6.771-11.727 6.771h-402.34z" fill="#f6e266"/><g fill="#544f57"><path d="m256 327.138c-14.379 0-26.036-11.657-26.036-26.036v-119.216c0-14.379 11.657-26.036 26.036-26.036 14.379 0 26.036 11.657 26.036 26.036v119.217c0 14.379-11.657 26.035-26.036 26.035z"/><circle cx="256" cy="381.152" r="26.036"/></g></svg>
|
After Width: | Height: | Size: 857 B |
50
app/templates/formsemestre/bulletins_choice.j2
Normal file
50
app/templates/formsemestre/bulletins_choice.j2
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
{% extends "sco_page.j2" %}
|
||||||
|
{% import 'wtf.j2' as wtf %}
|
||||||
|
|
||||||
|
{% block styles %}
|
||||||
|
{{super()}}
|
||||||
|
<style>
|
||||||
|
.sco-row {
|
||||||
|
margin-top: 16px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block scripts %}
|
||||||
|
{{super()}}
|
||||||
|
<script src="{{scu.STATIC_DIR}}/js/groups_view.js"></script>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
|
||||||
|
{% block app_content %}
|
||||||
|
<div class="tab-content">
|
||||||
|
<h2>{{ title }}</h2>
|
||||||
|
|
||||||
|
<p class="help">
|
||||||
|
{{ explanation|safe }}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<form name="f" method="GET" action="{{request.base_url}}">
|
||||||
|
<input type="hidden" name="formsemestre_id" value="{{formsemestre.id}}">
|
||||||
|
<select name="version" class="noprint">
|
||||||
|
{% for version, description in versions_bulletins.items() %}
|
||||||
|
<option value="{{version}}">{{description}}</option>
|
||||||
|
{% endfor %}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<div class="group_ids_sel_menu sco-row">
|
||||||
|
Groupes d'étudiants à utiliser: {{menu_groups_choice|safe}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if choose_mail %}
|
||||||
|
<div class="sco-row">
|
||||||
|
<input type="checkbox" name="prefer_mail_perso" value="1">
|
||||||
|
Utiliser si possible les adresses email personnelles
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
<div class="sco-row" style="font-size: 110%;">
|
||||||
|
<input type="submit" value="Générer">
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
83
migrations/versions/cddabc3f868a_evaluation_bloquee.py
Normal file
83
migrations/versions/cddabc3f868a_evaluation_bloquee.py
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
"""evaluation bloquee
|
||||||
|
|
||||||
|
Revision ID: cddabc3f868a
|
||||||
|
Revises: 2e4875004e12
|
||||||
|
Create Date: 2024-02-25 16:39:45.947342
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
from alembic import op
|
||||||
|
import sqlalchemy as sa
|
||||||
|
from sqlalchemy.orm import sessionmaker # added by ev
|
||||||
|
|
||||||
|
|
||||||
|
# revision identifiers, used by Alembic.
|
||||||
|
revision = "cddabc3f868a"
|
||||||
|
down_revision = "2e4875004e12"
|
||||||
|
branch_labels = None
|
||||||
|
depends_on = None
|
||||||
|
|
||||||
|
Session = sessionmaker()
|
||||||
|
|
||||||
|
|
||||||
|
def upgrade():
|
||||||
|
# ces champs étaient nullables
|
||||||
|
# Added by ev: remove duplicates
|
||||||
|
bind = op.get_bind()
|
||||||
|
session = Session(bind=bind)
|
||||||
|
session.execute(
|
||||||
|
sa.text(
|
||||||
|
"""UPDATE notes_evaluation SET description='' WHERE description IS NULL;"""
|
||||||
|
)
|
||||||
|
)
|
||||||
|
session.execute(
|
||||||
|
sa.text("""UPDATE notes_evaluation SET note_max=20. WHERE note_max IS NULL;""")
|
||||||
|
)
|
||||||
|
session.execute(
|
||||||
|
sa.text(
|
||||||
|
"""UPDATE notes_evaluation SET coefficient=0. WHERE coefficient IS NULL;"""
|
||||||
|
)
|
||||||
|
)
|
||||||
|
#
|
||||||
|
with op.batch_alter_table("notes_evaluation", schema=None) as batch_op:
|
||||||
|
batch_op.add_column(
|
||||||
|
sa.Column("blocked_until", sa.DateTime(timezone=True), nullable=True)
|
||||||
|
)
|
||||||
|
batch_op.alter_column("description", existing_type=sa.TEXT(), nullable=False)
|
||||||
|
batch_op.alter_column(
|
||||||
|
"note_max", existing_type=sa.DOUBLE_PRECISION(precision=53), nullable=False
|
||||||
|
)
|
||||||
|
batch_op.alter_column(
|
||||||
|
"coefficient",
|
||||||
|
existing_type=sa.DOUBLE_PRECISION(precision=53),
|
||||||
|
nullable=False,
|
||||||
|
)
|
||||||
|
|
||||||
|
with op.batch_alter_table("notes_formsemestre", schema=None) as batch_op:
|
||||||
|
batch_op.add_column(
|
||||||
|
sa.Column(
|
||||||
|
"mode_calcul_moyennes", sa.Integer(), server_default="0", nullable=False
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
# ### end Alembic commands ###
|
||||||
|
|
||||||
|
|
||||||
|
def downgrade():
|
||||||
|
# ### commands auto generated by Alembic - please adjust! ###
|
||||||
|
with op.batch_alter_table("notes_formsemestre", schema=None) as batch_op:
|
||||||
|
batch_op.drop_column("mode_calcul_moyennes")
|
||||||
|
|
||||||
|
with op.batch_alter_table("notes_evaluation", schema=None) as batch_op:
|
||||||
|
batch_op.alter_column(
|
||||||
|
"coefficient",
|
||||||
|
existing_type=sa.DOUBLE_PRECISION(precision=53),
|
||||||
|
nullable=True,
|
||||||
|
)
|
||||||
|
batch_op.alter_column(
|
||||||
|
"note_max", existing_type=sa.DOUBLE_PRECISION(precision=53), nullable=True
|
||||||
|
)
|
||||||
|
batch_op.alter_column("description", existing_type=sa.TEXT(), nullable=True)
|
||||||
|
batch_op.drop_column("blocked_until")
|
||||||
|
|
||||||
|
# ### end Alembic commands ###
|
Loading…
Reference in New Issue
Block a user