Année de scolarité et help_texts

This commit is contained in:
Evarin 2017-05-13 00:57:54 +02:00
parent 4290cf3445
commit 8322d6c801
5 changed files with 30 additions and 12 deletions

View file

@ -34,7 +34,7 @@ class StageForm(forms.ModelForm):
class Meta: class Meta:
model = Stage model = Stage
fields = ['sujet', 'date_debut', 'date_fin', 'type_stage', 'thematiques', 'matieres', 'structure', 'encadrants'] fields = ['sujet', 'date_debut', 'date_fin', 'type_stage', 'niveau_scol', 'thematiques', 'matieres', 'structure', 'encadrants']
help_texts = { help_texts = {
"thematiques": u"Mettez une virgule pour valider votre thématique si la suggestion ne correspond pas ou si elle n'existe pas encore", "thematiques": u"Mettez une virgule pour valider votre thématique si la suggestion ne correspond pas ou si elle n'existe pas encore",
"structure": u"Nom de l'équipe, du laboratoire, de la startup... (si le lieu ne suffit pas)" "structure": u"Nom de l'équipe, du laboratoire, de la startup... (si le lieu ne suffit pas)"
@ -64,12 +64,12 @@ class StageForm(forms.ModelForm):
class AvisStageForm(HTMLTrimmerForm): class AvisStageForm(HTMLTrimmerForm):
class Meta: class Meta:
model = AvisStage model = AvisStage
fields = ['chapo', 'avis_ambiance', 'avis_sujet', 'avis_admin', 'les_plus', 'les_moins'] fields = ['chapo', 'avis_sujet', 'avis_ambiance', 'avis_admin', 'les_plus', 'les_moins']
help_texts = { help_texts = {
"chapo": u"Une accroche résumant ce que vous avez pensé de ce séjour", "chapo": u"\"Trop long, pas lu\" : une accroche résumant ce que vous avez pensé de ce séjour",
"avis_ambiance": u"Avez-vous passé un bon moment à ce travail ? Étiez-vous assez guidé⋅e ? Aviez-vous un bon contact avec vos encadrant⋅e⋅s ? Y avait-il une bonne ambiance dans l'équipe ?", "avis_ambiance": u"Avez-vous passé un bon moment à ce travail ? Étiez-vous assez guidé⋅e ? Aviez-vous un bon contact avec vos encadrant⋅e⋅s ? Y avait-il une bonne ambiance dans l'équipe ?",
"avis_sujet": u"Avez-vous appris des choses de votre expérience ? Le travail correspondait-il à vos attentes ? Était-ce à votre niveau, trop dur, trop facile ?", "avis_sujet": u"Quelle était votre mission ? Qu'en avez-vous retiré ? Le travail correspondait-il à vos attentes ? Était-ce à votre niveau, trop dur, trop facile ?",
"avis_admin": u"Avez-vous commencé votre travail à la date prévue ? Était-ce compliqué d'obtenir les documents nécessaires (visa, contrats, etc) ? L'administration de l'établissement vous a-t-elle aidé⋅e ?", "avis_admin": u"Avez-vous commencé votre travail à la date prévue ? Était-ce compliqué d'obtenir les documents nécessaires (visa, contrats, etc) ? L'administration de l'établissement vous a-t-elle aidé⋅e ? Étiez-vous rémunéré⋅e ?",
"les_plus": u"Les principaux points positifs de cette expérience", "les_plus": u"Les principaux points positifs de cette expérience",
"les_moins": u"Ce qui aurait pu être mieux", "les_moins": u"Ce qui aurait pu être mieux",
} }
@ -79,7 +79,7 @@ class AvisLieuForm(HTMLTrimmerForm):
model = AvisLieu model = AvisLieu
fields = ['lieu', 'chapo', 'avis_lieustage', 'avis_pratique', 'avis_tourisme', 'les_plus', 'les_moins'] fields = ['lieu', 'chapo', 'avis_lieustage', 'avis_pratique', 'avis_tourisme', 'les_plus', 'les_moins']
help_texts = { help_texts = {
"chapo": u"Une accroche résumant ce que vous avez pensé de cet endroit", "chapo": u"\"Trop long, pas lu\" : une accroche résumant ce que vous avez pensé de cet endroit",
"avis_lieustage": u"Qu'avez-vous pensé des lieux où vous travailliez ? Les bâtiments étaient-ils modernes ? Était-il agréable d'y travailler ?", "avis_lieustage": u"Qu'avez-vous pensé des lieux où vous travailliez ? Les bâtiments étaient-ils modernes ? Était-il agréable d'y travailler ?",
"avis_pratique": u"Avez-vous eu du mal à trouver un logement ? Y-a-t-il des choses que vous avez apprises sur place qu'il vous aurait été utile de savoir avant de partir ?", "avis_pratique": u"Avez-vous eu du mal à trouver un logement ? Y-a-t-il des choses que vous avez apprises sur place qu'il vous aurait été utile de savoir avant de partir ?",
"avis_tourisme": u"Y-a-t-il des lieux à visiter dans cette zone ? Avez-vous pratiqué des activités sportives ? Est-il facile de faire des rencontres ?", "avis_tourisme": u"Y-a-t-il des lieux à visiter dans cette zone ? Avez-vous pratiqué des activités sportives ? Est-il facile de faire des rencontres ?",

View file

@ -15,7 +15,7 @@ from taggit_autosuggest.managers import TaggableManager
from tinymce.models import HTMLField as RichTextField from tinymce.models import HTMLField as RichTextField
from .utils import choices_length from .utils import choices_length
from .statics import DEPARTEMENTS_DEFAUT, PAYS_OPTIONS, TYPE_LIEU_OPTIONS, TYPE_STAGE_OPTIONS, TYPE_LIEU_DICT, TYPE_STAGE_DICT from .statics import DEPARTEMENTS_DEFAUT, PAYS_OPTIONS, TYPE_LIEU_OPTIONS, TYPE_STAGE_OPTIONS, TYPE_LIEU_DICT, TYPE_STAGE_DICT, NIVEAU_SCOL_OPTIONS
import ldap import ldap
@ -172,6 +172,11 @@ class Stage(models.Model):
default="stage", default="stage",
choices=TYPE_STAGE_OPTIONS, choices=TYPE_STAGE_OPTIONS,
max_length=choices_length(TYPE_STAGE_OPTIONS)) max_length=choices_length(TYPE_STAGE_OPTIONS))
niveau_scol = models.CharField(u"Année de scolarité",
default="",
choices=NIVEAU_SCOL_OPTIONS,
max_length=choices_length(NIVEAU_SCOL_OPTIONS),
blank=True)
thematiques = TaggableManager(u"Thématiques", blank=True) thematiques = TaggableManager(u"Thématiques", blank=True)
matieres = models.ManyToManyField(StageMatiere, verbose_name=u"Matière(s)", related_name="stages") matieres = models.ManyToManyField(StageMatiere, verbose_name=u"Matière(s)", related_name="stages")
@ -233,7 +238,7 @@ class AvisStage(models.Model):
# Liste des champs d'avis, couplés à leur nom (pour l'affichage) # Liste des champs d'avis, couplés à leur nom (pour l'affichage)
@property @property
def avis_all(self): def avis_all(self):
fields = ['avis_ambiance', 'avis_sujet', 'avis_admin'] fields = ['avis_sujet', 'avis_ambiance', 'avis_admin']
return [(AvisStage._meta.get_field(field).verbose_name, return [(AvisStage._meta.get_field(field).verbose_name,
getattr(self, field, '')) for field in fields] getattr(self, field, '')) for field in fields]

View file

@ -50,6 +50,17 @@ TYPE_LIEU_OPTIONS = (
('autre', u"Autre"), ('autre', u"Autre"),
) )
# Place du stage dans le cursus
NIVEAU_SCOL_OPTIONS = (
('L3', u"Licence 3"),
('M1', u"Master 1"),
('M2', u"Master 2"),
('CST', u"Césure"),
('DOC', u"Pré-doctorat"),
('', u"Autre"),
)
# Dictionnaire des noms de lieux (et de leur genre, True=féminin) # Dictionnaire des noms de lieux (et de leur genre, True=féminin)
TYPE_LIEU_DICT = { TYPE_LIEU_DICT = {
'universite': (u"université", True), 'universite': (u"université", True),

View file

@ -3,7 +3,7 @@
<h2>{{ titre }}</h2> <h2>{{ titre }}</h2>
{% if avis.chapo %} {% if avis.chapo %}
<p class="chapo"> <p class="chapo">
{{ avis.chapo }} {{ avis.chapo|linebreaksbr }}
</p> </p>
{% endif %} {% endif %}
{% for av in avis.avis_all %} {% for av in avis.avis_all %}
@ -21,7 +21,7 @@
<div class="plus"> <div class="plus">
<div> <div>
<h4>Super si vous aimez...</h4> <h4>Super si vous aimez...</h4>
<p>{{ avis.les_plus }}</p> <p>{{ avis.les_plus|linebreaksbr }}</p>
</div> </div>
</div> </div>
{% endif %} {% endif %}
@ -29,7 +29,7 @@
<div class="moins"> <div class="moins">
<div> <div>
<h4>Pas génial pour...</h4> <h4>Pas génial pour...</h4>
<p>{{ avis.les_moins }}</p> <p>{{ avis.les_moins|linebreaksbr }}</p>
</div> </div>
</div> </div>
{% endif %} {% endif %}

View file

@ -79,7 +79,9 @@
}); });
</script> </script>
{% endif %} {% endif %}
<p><a href="{% url "avisstage:profil" object.auteur.user.username %}">{{ object.auteur.nom }}</a> a fait {{ object.type_stage_fem|yesno:"cette,ce" }} <b>{{ object.type_stage_fancy }}</b> <p><a href="{% url "avisstage:profil" object.auteur.user.username %}">{{ object.auteur.nom }}</a>
a fait {{ object.type_stage_fem|yesno:"cette,ce" }} <b>{{ object.type_stage_fancy }}</b>
{% if object.niveau_scol %} pendant son année de {{ object.get_niveau_scol_display }}, {% endif %}
du {{ object.date_debut }} au {{ object.date_fin }}{% if object.structure %}, au sein de {{ object.structure }}{% endif %}{% if object.encadrants %}, supervisé par {{ object.encadrants }}{% endif %}.</p> du {{ object.date_debut }} au {{ object.date_fin }}{% if object.structure %}, au sein de {{ object.structure }}{% endif %}{% if object.encadrants %}, supervisé par {{ object.encadrants }}{% endif %}.</p>
<ul class="infos"> <ul class="infos">
{% for matiere in object.matieres.all %} {% for matiere in object.matieres.all %}