mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-10-31 15:50:03 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| Wrapped
 | |
| =======
 | |
| 
 | |
| Cette application montre les statistiques annuelles des utilisateur·ice·s et/ou des clubs.
 | |
| 
 | |
| Modèles
 | |
| -------
 | |
| 
 | |
| Bde
 | |
| ~~~
 | |
| 
 | |
| Le modèle ``Bde`` contient des informations relatifs à un BDE :
 | |
| 
 | |
| * ``name`` : ``CharField``, nom du BDE.
 | |
| * ``date_start`` : ``DateField``, date de prise de fonction du bureau BDE considéré.
 | |
| * ``date_end`` : ``DateField``, date de démission du bureau BDE considéré.
 | |
| 
 | |
| Wrapped
 | |
| ~~~~~~~
 | |
| 
 | |
| Contient les informations sur un wrapped :
 | |
| 
 | |
| * ``generated`` : ``BooleanField``, indique si le wrapped a été généré ou non.
 | |
| * ``public`` : ``BooleanField``, indique si le wrapped est visible de tous les utilisateur·ice·s ou non.
 | |
| * ``bde`` : ``ForeignKey(Bde)``, BDE auquel le wrapped correspond.
 | |
| * ``note`` : ``ForeignKey(Note)``, note à laquelle le wrapped correspond.
 | |
| * ``data_json`` : ``TextField``, diverses statistique concernant les notes durant le mandat BDE
 | |
|   considéré ou sur la NoteKfet dans sa globalité.
 | |
| 
 | |
| Graphe des modèles
 | |
| ~~~~~~~~~~~~~~~~~~
 | |
| 
 | |
| .. image:: ../_static/img/graphs/wrapped.svg
 | |
|    :width: 960
 | |
|    :alt: Graphe des modèles de l'application Wrapped
 | |
| 
 | |
| Fonctionnement
 | |
| --------------
 | |
| 
 | |
| Création d'un BDE
 | |
| ~~~~~~~~~~~~~~~~~
 | |
| 
 | |
| Seul un⋅e respo info peut créer un BDE. Pour cela, se rendre dans l'onglet « Admin »., puis « BDE » et
 | |
| enfin « + Ajouter BDE ». Iel doit renseigner, les dates de début et de fin du bureau BDE ainsi que le
 | |
| nom de la liste.
 | |
| 
 | |
| Génération des wrappeds
 | |
| ~~~~~~~~~~~~~~~~~~~~~~~
 | |
| 
 | |
| Seul un·e respo info peut générer des wrappeds. Pour une utilisation annuelle classique, iel exécute la
 | |
| commande :
 | |
| 
 | |
| ``./manage.py generate_wrapped -b "bde_name" -u adh -c active``
 | |
| 
 | |
| Pour une utilisation plus technique de cette commande se référer à sa documentation
 | |
| 
 | |
| ``./manage.py help generate_wrapped``
 | |
| 
 | |
| Le script prend une dizaine de minutes pour générer tous les wrappeds.
 | |
| 
 | |
| Créer ses propres wrappeds
 | |
| --------------------------
 | |
| 
 | |
| Cette section est plus technique et s'addresse plutôt à des respos infos en cours de mandat qui voudrai
 | |
| faire les wrappeds de leur propre BDE.
 | |
| 
 | |
| Contenu
 | |
| ~~~~~~~
 | |
| 
 | |
| Il est fortement conseillé de bien réfléchir à ce que l'on souhaite mettre sur un wrapped, plusieurs
 | |
| critères sont à prendre compte :
 | |
| 
 | |
| * compréhension, est-ce que la donnée fait sens auprès des utilisateur·ice·s.
 | |
| * pertinence, est-ce que la donnée fonctionne pour un grand nombre d'utilisateur.
 | |
| * faisabilité, est-ce que le temps de calcul est suffisament rapide.
 | |
| * complexité, est-ce que c'est trop compliqué à coder.
 | |
| 
 | |
| Script
 | |
| ~~~~~~
 | |
| 
 | |
| Le script *generate_wrapped* fonctionne de la manière suivante :
 | |
| 
 | |
| * ``convert_to_note`` : en fonction des arguments d'entrée, il récupére toutes les notes dont le·s
 | |
|   wrapped·s va/vont être généré·s
 | |
|   ou regénéré·s.
 | |
| * ``global_data`` : le script génére ensuite des statistiques globales qui concernent pas qu'une seule
 | |
|  note (nombre de soirée, classement, etc). 
 | |
| * ``unique_data`` : le script génére les statitiques uniques à chaque note, et rajoute des données
 | |
|   globales si nécessaire, pour chaque note on souhaite avoir un json avec toutes les données qui
 | |
|   seront dans le wrapped.
 | |
| * ``make_wrapped`` : enfin, le cas échéant, pour chaque bde, et pour chaque note, le wrapped est crée
 | |
|   ou modifié, et enregistré, s'il est crée il est par défault non public.
 | |
| 
 | |
| Seules les fonctions ``global_data`` et ``unique_data`` sont à modifier, pour implementer un nouveau
 | |
| BDE.
 | |
| 
 | |
| Template
 | |
| ~~~~~~~~
 | |
| 
 | |
| Il y a au moins deux templates a écrire pour chaque bde :
 | |
| 
 | |
| * ``templates/wrapped/{bde_id}/wrapped_view_club.html``: le template pour les wrappeds des clubs
 | |
| * ``templates/wrapped/{bde_id}/wrapped_view_user.html``: le template pour les wrappeds des
 | |
|   utilisateur·ice·s
 | |
| 
 | |
| Il est conseillé de suivre la même arborescence pour les fichiers statics (fonts personnalisées,
 | |
| images, css, etc). De même, il est conseillé de créé un fichier
 | |
| ``templates/wrapped/{bde_id}/wrapped_base.html`` et d'étendre cette template.
 |