"Firt release"
This commit is contained in:
@@ -9,16 +9,17 @@
|
||||
</p>
|
||||
<p>
|
||||
Notez que:
|
||||
<ul>
|
||||
<li>Votre adresse mail doit être valide et consultée régulièrement si vous ne voulez pas manquez des informations importantes telels que les dates de réunions de staff</li>
|
||||
<li>Votre numéro de téléphone nous permettra de vous contacter pendant l'évènement</li>
|
||||
<li>Si vous avez un régime alimentaire particulier (intolérences, veganisme, religieux), merci de le préciser dans le champs prévu à cet effet</li>
|
||||
<li>Aucune des données que vous nous transmettrez ne sera fournie à un tiers</li>
|
||||
</ul>
|
||||
</p>
|
||||
<ul>
|
||||
<li>Votre adresse mail doit être <strong>valide et consultée</strong> régulièrement si vous ne voulez pas manquez des informations importantes telels que les dates de réunions de staff</li>
|
||||
<li>Un nom ou psedonyme est nécessaire pour pouvoir s'enregistrer sur <a href='/staffsheet'>la feuille de staff</a></li>
|
||||
<li>Votre numéro de téléphone nous permettra de vous contacter pendant l'évènement</li>
|
||||
<li>Si vous avez un régime alimentaire particulier (intolérences, veganisme, religieux), merci de le préciser dans le champs prévu à cet effet</li>
|
||||
<li>Hormis votre pseudonyme aucune des données que vous nous transmettrez ne sera exposée au public ou fournie à un tiers</li>
|
||||
</ul>
|
||||
<form method='POST' action='/account/update'>
|
||||
<label>Adresse email: </label><input id='login' name='login' type='text' value='{{ mail }}' disabled='disabled'/><br/>
|
||||
<label>Prénom ou pseudo: </label><input id='name' name='name' type='text' value='{{ name }}'/><br/>
|
||||
<label>Pseudonyme: </label><input id='name' name='name' type='text' value='{{ name }}' required maxlength=20/><br/>
|
||||
<label>Nouveau mot de passe: </label><input id='password' name='password' type='password'/><br/>
|
||||
<label>Confirmation mot de passe: </label><input id='confirm' name='confirm' type='password'/><br/>
|
||||
<label>Numéro de téléphone: </label><input id='phone' name='phone' type='text' value='{{ phone }}'/><br/>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<article>
|
||||
<h3>Informations du compte</h3>
|
||||
<form method='POST' action='/account/update/{{ user.id }}'>
|
||||
<label>Adresse email: </label><input id='login' name='login' type='text' value='{{ user.mail }}' disabled='disabled'/><br/>
|
||||
<label>Adresse email: </label><input id='login' name='login' type='text' value='{{ user.mail }}' disabled='disabled' required/><br/>
|
||||
<label>Prénom ou pseudo: </label><input id='name' name='name' type='text' value='{{ user.name }}'/><br/>
|
||||
<label>Nouveau mot de passe: </label><input id='password' name='password' type='password'/><br/>
|
||||
<label>Confirmation mot de passe: </label><input id='confirm' name='confirm' type='password'/><br/>
|
||||
|
||||
19
templates/confirm.html
Normal file
19
templates/confirm.html
Normal file
@@ -0,0 +1,19 @@
|
||||
{% extends "index.html" %}
|
||||
{% block title %}Login{% endblock %}
|
||||
{% block nav %}{% endblock %}
|
||||
{% block main %}
|
||||
<article class='login'>
|
||||
<h3>Confirmation de votre inscription</h3>
|
||||
<p>Merci de confirmer l'adresse de courriel et le mot de passe avec lesquels vous vous êtes enregistré.</p>
|
||||
</article>
|
||||
<article class='left'>
|
||||
<form method='POST' action='/confirm/link/{{ link_id }}'>
|
||||
<label>Adresse mail: </label><input id='login' name='login' type='text' /><br/>
|
||||
<label>Mot de passe: </label><input id='password' name='password' type='password' /><br/>
|
||||
<input type='submit' value='Log me in'>
|
||||
</form>
|
||||
<p class='note'>
|
||||
Mot de passe oublié ? Envoyez une <a href='https://bofh.tetalab.org/?do=newtask&project=2'>demande de réinitialisation de votre mot de passe</a>.
|
||||
</p>
|
||||
</article>
|
||||
{% endblock %}
|
||||
@@ -32,7 +32,7 @@
|
||||
{% endblock %}
|
||||
</nav>
|
||||
{% endblock%}
|
||||
<main>
|
||||
<main id='main'>
|
||||
{% if navbar %}
|
||||
<div class='navbar_container'>
|
||||
<ul class='horizontal'>
|
||||
@@ -62,19 +62,10 @@
|
||||
est précieuse.
|
||||
</p>
|
||||
<p>
|
||||
Ce site vous permettra:
|
||||
<ul>
|
||||
<li>
|
||||
de vous enregistrer afin de faire partie du "Staff", cette équipe de super-héros sans qui le THSF ne
|
||||
saurait être un moment agréable, sûr et convivial.
|
||||
</li>
|
||||
<li>
|
||||
de sélectionner le poste et les créneaux horaires pendant lesquels vous souhaitez vous rendre disponible.
|
||||
</li>
|
||||
<li>
|
||||
de poser vos questions, obtenir des réponses et être tenu informé des évolutions de l'organisation et du déroulement du THSF via la mailing list du staff.
|
||||
</li>
|
||||
</ul>
|
||||
Une fois vos <a href='/account'>informations personnelles</a> duement renseignées vous pourrez <a href='/staffsheet'>sélectionner les postes et les créneaux horaires</a> pendant lesquels vous souhaitez vous rendre disponible.
|
||||
</p>
|
||||
<p>
|
||||
Le <a href='https://www.tetalab.org'>Tetal@b</a> et l'ensemble de l'équipe d'organisation du THSF vous remercie pour votre aide.
|
||||
</p>
|
||||
</article>
|
||||
{% endblock %}
|
||||
|
||||
@@ -1,29 +1,34 @@
|
||||
{% extends "index.html" %}
|
||||
{% block title %}Liste des tours de staff{% endblock %}
|
||||
{% block main %}
|
||||
{{ A }}
|
||||
<article>
|
||||
<h3>Liste des tours de staff enregistrés <input class='add' value='' title='Ajouter un tour de staff' onclick='javascript:document.location="/turn/new"'/></h3>
|
||||
<div class='table_header'>
|
||||
<div class='border_right' style='width: 40px;'>ID</div>
|
||||
<div class='border_right'>Role</div>
|
||||
<div class='border_right'>Jour</div>
|
||||
<div class='border_right'>Début</div>
|
||||
<div class='border_right'>Fin</div>
|
||||
<div style='width: 50px;'>Action</div>
|
||||
<div class='border_right' style='width: 240px;'>Role</div>
|
||||
<div class='border_right' style='width: 150px;'>Jour</div>
|
||||
<div class='border_right' style='width: 150px;'>Début</div>
|
||||
<div class='border_right' style='width: 150px;'>Fin</div>
|
||||
<div class='border_right' style='width: 100px;'>Slots</div>
|
||||
<div style='width: 50px;' style='width: 50px;'>Action</div>
|
||||
</div>
|
||||
{% set row_class = cycler('odd', 'even') %}
|
||||
{% for turn in turns %}
|
||||
{% for day in turns %}
|
||||
{% for turn in day[1] %}
|
||||
<div class='table_row {{ row_class.next() }}'>
|
||||
<div class='border_right' style='width: 40px;'>{{ turn[0].id }}</div>
|
||||
<div class='border_right'>{{ turn[1] }}</div>
|
||||
<div class='border_right'>{{ turn[0].wday }}</div>
|
||||
<div class='border_right'>{{ turn[0].start_time }}</div>
|
||||
<div class='border_right'>{{ turn[0].end_time }}</div>
|
||||
<div class='border_right' style='width: 240px;'>{{ turn[1] }}</div>
|
||||
<div class='border_right' style='width: 150px;'>{{ day[0] }}</div>
|
||||
<div class='border_right' style='width: 150px;'>{{ turn[0].start_time }}</div>
|
||||
<div class='border_right' style='width: 150px;'>{{ turn[0].end_time }}</div>
|
||||
<div class='border_right' style='width: 100px;'>{{ turn[0].num_slot }}</div>
|
||||
<div style='width: 50px;'>
|
||||
<input class='edit' value='' onclick='javascript:document.location="/turn/{{ turn[0].id }}"' title='Éditer'/>
|
||||
<input class='trash' value='' onclick='javascript:delete_turn({{ turn[0].id }});' title='Supprimer'/>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</article>
|
||||
{% endblock %}
|
||||
|
||||
@@ -14,25 +14,25 @@
|
||||
</p>
|
||||
<p>
|
||||
Ce site vous permettra:
|
||||
<ul>
|
||||
<li>
|
||||
de vous enregistrer afin de faire partie du "Staff", cette équipe de super-héros sans qui le THSF ne
|
||||
saurait être un moment agréable, sûr et convivial.
|
||||
</li>
|
||||
<li>
|
||||
de sélectionner le poste et les créneaux horaires pendant lesquels vous souhaitez vous rendre disponible.
|
||||
</li>
|
||||
<li>
|
||||
d'être tenu informé des évolutions de l'organisation et du déroulement du THSF via la mailing list du staff.
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
de vous enregistrer afin de faire partie du "Staff", cette équipe de super-héros sans qui le THSF ne
|
||||
saurait être un moment agréable, sûr et convivial.
|
||||
</li>
|
||||
<li>
|
||||
de sélectionner le poste et les créneaux horaires pendant lesquels vous souhaitez vous rendre disponible.
|
||||
</li>
|
||||
<li>
|
||||
d'être tenu informé des évolutions de l'organisation et du déroulement du THSF via la mailing list du staff.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
Nul besoin de compétences particulières pour rejoindre notre équipe sinon votre meilleure volonté et votre bonne humeur
|
||||
qui feront du THSF un moment unique de partage.
|
||||
</p>
|
||||
<p>
|
||||
Pour vous enregistrer, munissez vous de votre adresse email et renseignez les champs de la section "<strong>Inscription</strong>".
|
||||
Pour vous enregistrer, munissez vous de <strong>votre plus belle adresse email</strong> et renseignez les champs de la section "<strong>Inscription</strong>".
|
||||
</p>
|
||||
<p>
|
||||
Si vous vous être préalablement enregistré, renseignez uniquement les champs de la section "<strong>Connexion</strong>"
|
||||
@@ -48,7 +48,7 @@
|
||||
<form method='POST' action='/login'>
|
||||
<label>Adresse mail: </label><input id='login' name='login' type='text' /><br/>
|
||||
<label>Mot de passe: </label><input id='password' name='password' type='password' /><br/>
|
||||
<input type='submit' value='Log me in' onclick='javascript:return verify_login();'>
|
||||
<input type='submit' value='Log me in'>
|
||||
</form>
|
||||
<p class='note'>
|
||||
Mot de passe oublié ? Envoyez une <a href='https://bofh.tetalab.org/?do=newtask&project=2'>demande de réinitialisation de votre mot de passe</a>.
|
||||
@@ -59,12 +59,13 @@
|
||||
<h3>Inscription</h3>
|
||||
</article>
|
||||
<article class='left'>
|
||||
<form method='POST' action='/register'>
|
||||
<label>Adresse mail: </label><input id='reg_mail' name='login' type='text' /><br/>
|
||||
<label>Mot de passe (8 char min.): </label><input id='reg_password' name='password' type='password' /><br/>
|
||||
<label>Confirmation: </label><input id='reg_confirm' name='confirm' type='password' /><br/>
|
||||
<input type='submit' value='Register me NOW !' onclick='javascript:return register();'>
|
||||
<form method='POST' action='/register' onsubmit='return register();'>
|
||||
<label>Adresse mail: </label><input id='reg_mail' name='login' type='text' required /><br/>
|
||||
<label>Mot de passe (8 char min.): </label><input id='reg_password' name='password' type='password' required /><br/>
|
||||
<label>Confirmation: </label><input id='reg_confirm' name='confirm' type='password' required /><br/>
|
||||
<input type='submit' value='Register me NOW !'>
|
||||
</form>
|
||||
<p class='note'>En vous inscrivant vous déclarez être prèt à découvrir l'insondabilité de l'improbable</p>
|
||||
</article>
|
||||
<hr/>
|
||||
{% endblock %}
|
||||
|
||||
@@ -11,11 +11,12 @@
|
||||
</select><br/>
|
||||
<label>Jour de la semaine: </label><select id='day' name='day'>
|
||||
{% for day in days %}
|
||||
<option value='{{ day }}'>{{ day }}</option>
|
||||
<option value='{{ day[1] }}'>{{ day[0] }}</option>
|
||||
{% endfor %}
|
||||
</select><br/>
|
||||
<label>Début (HH:MM:SS) </label><input id='start' name='start' type='text' maxlength=8/><br/>
|
||||
<label>Fin: (HH:MM:SS) </label><input id='end' name='end' type='text' maxlength=8/><br/>
|
||||
<label>Nombre de slots (max. 4) </label><input id='num_slot' name='num_slot' type='number' min='1' max='4'/><br/>
|
||||
<input type='submit' value='Enregistrer' onclick='javascript:return save_turn();'/>
|
||||
</form>
|
||||
</article>
|
||||
|
||||
84
templates/staffsheet.html
Normal file
84
templates/staffsheet.html
Normal file
@@ -0,0 +1,84 @@
|
||||
{% extends "index.html" %}
|
||||
{% block title %}Feuille de staff{% endblock %}
|
||||
{% block main %}
|
||||
<article id='roles'>
|
||||
<h3>Fiches de poste<input class='print' value='' title='Imprimer' onclick='javascript:print_page();'/></h3>
|
||||
<p>Les postes de référents (référent staff, référent bar, référent run) sont réservés à des personnes ayant une bonne connaissance du lieu et de l'évènement.</p>
|
||||
{% for role in roles %}
|
||||
<div class='table_header'><div class='sheet_day'>{{ role.role }}</div></div>
|
||||
<div class='table_row'>
|
||||
<ul>
|
||||
{% set desc = role.description.split('|') %}
|
||||
{% for point in desc %}
|
||||
<li>{{ point }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</article>
|
||||
<hr/>
|
||||
<article id='staff_sheet'>
|
||||
<h3>Feuille de staff</h3>
|
||||
<ul>
|
||||
<li><strong>Ménage le soir même pour tous les derniers créneaux du jour</strong></li>
|
||||
<li><strong>Tâches dévolues à tous:</strong>
|
||||
<ul>
|
||||
<li>Veiller à la sécurité générale du lieu</li>
|
||||
<li>Ramassage bouteilles ou objets en verre</li>
|
||||
<li>Séparation des bagarres (rarissime)</li>
|
||||
<li>Sécurisation des personnes en difficulté (ou trop alcoolisées), etc...</li>
|
||||
<li>Sourire et bonne humeur quel que soit le niveau de fatigue ;)</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<p>Mode d'emploi:</p>
|
||||
<ul>
|
||||
<li>Cliquez sur l'un des créneaux vacants pour le réserver</li>
|
||||
<li>Cliquez sur l'un des créneaux que vous occupez pour le libérez</li>
|
||||
</ul>
|
||||
{% for day in turns %}
|
||||
{% set wday = day[0] %}
|
||||
{% set day_turns = day[1] %}
|
||||
{% set cur_role = '' %}
|
||||
<div class='table_header'><div class='sheet_day' style='page-break-before: always;'>{{ wday }}</div></div>
|
||||
{% for turn in day_turns %}
|
||||
{% set role = turn[1] %}
|
||||
{% set start_time = turn[0].start_time %}
|
||||
{% set end_time = turn[0].end_time %}
|
||||
{% set num_slot = turn[0].num_slot %}
|
||||
{% set role_id = turn[0].role_id %}
|
||||
{% set turn_id = turn[0].id %}
|
||||
{% if role != cur_role %}
|
||||
{% set cur_role = role %}
|
||||
<div class='table_header'>
|
||||
<div class='sheet_role'>{{ role }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='table_row' style='border-bottom-color: #FF5D00; border-bottom-width: 1px; border-bottom-style: solid;'>
|
||||
<div class='sheet_time border_right'>{{ start_time.strftime('%HH%M') }} / {{ end_time.strftime('%HH%M') }}</div>
|
||||
{% for slot in range(0, num_slot) %}
|
||||
{% set allocated_slot = [] %}
|
||||
{% set border = '' %}
|
||||
{% if slot != num_slot - 1 %}
|
||||
{% set border = 'border_right' %}
|
||||
{% endif %}
|
||||
{% for sslot in staffs %}
|
||||
{% if sslot[0].turn_id == turn_id and sslot[0].slot_num == slot %}
|
||||
{% if allocated_slot.append(sslot[0].slot_num) %}
|
||||
{% endif %}
|
||||
{% if user_id == sslot[0].user_id %}
|
||||
<div class='sheet_user{{ num_slot }} {{ border }}' onclick='javascript:clear_sheet({{ turn_id }}, {{ slot }})'>{{ sslot[1] }}</div>
|
||||
{% else %}
|
||||
<div class='sheet_user{{ num_slot }} {{ border }}' style='cursor: text;'>{{ sslot[1] }}</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if slot not in allocated_slot %}
|
||||
<div class='sheet_user{{ num_slot }} {{ border }}' onclick='javascript:update_sheet({{ turn_id }}, {{ slot }})'> </div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</article>
|
||||
{% endblock %}
|
||||
87
templates/staffsheet_pdf.html
Normal file
87
templates/staffsheet_pdf.html
Normal file
@@ -0,0 +1,87 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang='zxx'>
|
||||
<head>
|
||||
<title>We Make THSF - {% block title %}Feuille de staff{% endblock %}</title>
|
||||
<meta name="viewport" content="initial-scale=1.0" />
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||
<link rel="stylesheet" type="text/css" href="/static/styles/tetawebapp_pdf.css" />
|
||||
<link rel="icon" type="image/png" href="/static/images/favicon.png" />
|
||||
</head>
|
||||
<body>
|
||||
<div class='content'>
|
||||
<main id='main'>
|
||||
<article id='roles'>
|
||||
<h3>Fiches de poste</h3>
|
||||
<p>Les postes de référents (référent staff, référent bar, référent run) sont réservés à des personnes ayant une bonne connaissance du lieu et de l'évènement.</p>
|
||||
{% for role in roles %}
|
||||
<div class='table_header'><div class='sheet_day'>{{ role.role }}</div></div>
|
||||
<div class='table_row'>
|
||||
<ul>
|
||||
{% set desc = role.description.split('|') %}
|
||||
{% for point in desc %}
|
||||
<li>{{ point }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</article>
|
||||
<hr/>
|
||||
<article id='staff_sheet'>
|
||||
<h3>Feuille de staff</h3>
|
||||
<ul>
|
||||
<li><strong>Ménage le soir même pour tous les derniers créneaux du jour</strong></li>
|
||||
<li><strong>Tâches dévolues à tous:</strong>
|
||||
<ul>
|
||||
<li>Veiller à la sécurité générale du lieu</li>
|
||||
<li>Ramassage bouteilles ou objets en verre</li>
|
||||
<li>Séparation des bagarres (rarissime)</li>
|
||||
<li>Sécurisation des personnes en difficulté (ou trop alcoolisées), etc...</li>
|
||||
<li>Sourire et bonne humeur quel que soit le niveau de fatigue ;)</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
{% for day in turns %}
|
||||
{% set wday = day[0] %}
|
||||
{% set day_turns = day[1] %}
|
||||
{% set cur_role = '' %}
|
||||
<div class='table_header'><div class='sheet_day'>{{ wday }}</div></div>
|
||||
{% for turn in day_turns %}
|
||||
{% set role = turn[1] %}
|
||||
{% set start_time = turn[0].start_time %}
|
||||
{% set end_time = turn[0].end_time %}
|
||||
{% set num_slot = turn[0].num_slot %}
|
||||
{% set role_id = turn[0].role_id %}
|
||||
{% set turn_id = turn[0].id %}
|
||||
{% if role != cur_role %}
|
||||
{% set cur_role = role %}
|
||||
<div class='table_header'>
|
||||
<div class='sheet_role'>{{ role }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='table_row' style='border-bottom-color: #FF5D00; border-bottom-width: 1px; border-bottom-style: solid;'>
|
||||
<div class='sheet_time border_right'>{{ start_time.strftime('%HH%M') }} / {{ end_time.strftime('%HH%M') }}</div>
|
||||
{% for slot in range(0, num_slot) %}
|
||||
{% set allocated_slot = [] %}
|
||||
{% set border = '' %}
|
||||
{% if slot != num_slot - 1 %}
|
||||
{% set border = 'border_right' %}
|
||||
{% endif %}
|
||||
{% for sslot in staffs %}
|
||||
{% if sslot[0].turn_id == turn_id and sslot[0].slot_num == slot %}
|
||||
{% if allocated_slot.append(sslot[0].slot_num) %}
|
||||
{% endif %}
|
||||
<div class='sheet_user{{ num_slot }} {{ border }}' style='cursor: text;' id='staff_{{ staff }}'>{{ sslot[1] }}</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if slot not in allocated_slot %}
|
||||
<div class='sheet_user{{ num_slot }} {{ border }}' id='staff_{{ staff }}' onclick='javascript:update_sheet({{ turn_id }}, {{ slot }})'> </div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</article>
|
||||
</main>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
58
templates/staffsheet_txt.html
Normal file
58
templates/staffsheet_txt.html
Normal file
@@ -0,0 +1,58 @@
|
||||
("Fiches de poste",)
|
||||
("Les postes de référents (référent staff, référent bar, référent run) sont réservés à des personnes ayant une bonne connaissance du lieu et de l'évènement.",)
|
||||
{% for role in roles %}
|
||||
(" ",)
|
||||
("{{ role.role }}",)
|
||||
{% set desc = role.description.split('|') %}
|
||||
{% for point in desc %}
|
||||
("{{ point }}",)
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
(" ",)
|
||||
("Feuille de staff",)
|
||||
("Ménage le soir même pour tous les derniers créneaux du jour",)
|
||||
("",)
|
||||
("Tâches dévolues à tous:",)
|
||||
("Veiller à la sécurité générale du lieu",)
|
||||
("Ramassage bouteilles ou objets en verre",)
|
||||
("Séparation des bagarres (rarissime)",)
|
||||
("Sécurisation des personnes en difficulté (ou trop alcoolisées), etc...",)
|
||||
("Sourire et bonne humeur quel que soit le niveau de fatigue ;)",)
|
||||
(" ",)
|
||||
{% for day in turns %}
|
||||
{% set wday = day[0] %}
|
||||
{% set day_turns = day[1] %}
|
||||
{% set cur_role = '' %}
|
||||
("{{ wday }}",)
|
||||
{% for turn in day_turns %}
|
||||
{% set role = turn[1] %}
|
||||
{% set start_time = turn[0].start_time %}
|
||||
{% set end_time = turn[0].end_time %}
|
||||
{% set num_slot = turn[0].num_slot %}
|
||||
{% set role_id = turn[0].role_id %}
|
||||
{% set turn_id = turn[0].id %}
|
||||
{% if role != cur_role %}
|
||||
{% set cur_role = role %}
|
||||
("{{ role }}",)
|
||||
{% endif %}
|
||||
("{{ start_time.strftime('%HH%M') }} / {{ end_time.strftime('%HH%M') }}",
|
||||
{% for slot in range(0, num_slot) %}
|
||||
{% set allocated_slot = [] %}
|
||||
{% set border = '' %}
|
||||
{% if slot != num_slot - 1 %}
|
||||
{% set border = 'border_right' %}
|
||||
{% endif %}
|
||||
{% for sslot in staffs %}
|
||||
{% if sslot[0].turn_id == turn_id and sslot[0].slot_num == slot %}
|
||||
{% if allocated_slot.append(sslot[0].slot_num) %}
|
||||
{% endif %}
|
||||
"{{ sslot[1] }}",
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% if slot not in allocated_slot %}
|
||||
" ",
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
)
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
@@ -3,7 +3,7 @@
|
||||
{% block main %}
|
||||
<article>
|
||||
<h3>Tour de staff:</h3>
|
||||
<form method='POST' action='/turn/update/{{ turn.id }}'>
|
||||
<form method='POST' action="/turn/update/{{ turn.id }}">
|
||||
<label>Role: </label><select id='role_id' name='role_id'>
|
||||
{% for role in roles %}
|
||||
{% set selected = '' %}
|
||||
@@ -16,14 +16,15 @@
|
||||
<label>Jour de la semaine: </label><select id='day' name='day'>
|
||||
{% for day in days %}
|
||||
{% set selected = '' %}
|
||||
{% if turn.wday == day %}
|
||||
{% if turn.day == day[0] %}
|
||||
{% set selected="selected" %}
|
||||
{% endif %}
|
||||
<option {{ selected }} value='{{ day }}'>{{ day }}</option>
|
||||
<option {{ selected }} value='{{ day[1] }}'>{{ day[0] }}</option>
|
||||
{% endfor %}
|
||||
</select><br/>
|
||||
<label>Début (HH:MM:SS) </label><input id='start' name='start' type='text' maxlength=8 value='{{ turn.start_time }}'/><br/>
|
||||
<label>Fin: (HH:MM:SS) </label><input id='end' name='end' type='text' maxlength=8 value='{{ turn.end_time }}'/><br/>
|
||||
<label>Nombre de slots (max. 4) </label><input id='num_slot' name='num_slot' type='number' min='1' max='4' value='{{ turn.num_slot }}'/><br/>
|
||||
<input type='submit' value='Enregistrer' onclick='javascript:return save_turn();'/>
|
||||
</form>
|
||||
</article>
|
||||
|
||||
Reference in New Issue
Block a user