mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-11-04 01:12:08 +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.
 |