From 8f2976b43293b0163f5aad0fcdb5c35eb38b70dc Mon Sep 17 00:00:00 2001
From: Yohann D'ANELLO <yohann.danello@gmail.com>
Date: Thu, 23 Apr 2020 15:29:00 +0200
Subject: [PATCH] Update README, fixed make_su script

---
 README.md                                     | 44 ++++++++++++++++---
 .../commands/extract_ml_registrations.py      |  1 -
 management/commands/make_su.py                | 21 +++++----
 management/commands/wei_algorithm.py          |  1 -
 4 files changed, 48 insertions(+), 19 deletions(-)

diff --git a/README.md b/README.md
index 5ced077..0a7b177 100644
--- a/README.md
+++ b/README.md
@@ -5,15 +5,47 @@
 > les commandes sont documentées:
 > `./manage.py command --help`
 
-- import_nk15 :
-  Importe un dump de la NoteKfet 2015. 
+- `import_nk15` :
 
-- make_su:
-  rend superutilisateur les pseudos renseignés
+    Importe un dump de la NoteKfet 2015. 
+
+- `make_su [--STAFF|-s] [--SUPER|-S]` :
+
+    Rend actifs les pseudos renseignés.
+  
+    * Si `--STAFF` ou `-s` est renseigné, donne en plus le statut d'équipe aux pseudos renseignés, 
+    permettant l'accès à l'interface admin.
+    * Si `--SUPER` ou `-S` est renseigné, donne en plus le statut de super-utilisateur aux pseudos renseignés,
+    octroyant tous les droits sur la plateforme.
+
+- `wei_algorithm` :
+
+    Lance l'algorithme de répartition des 1A au dernier WEI. Cela a pour effet de suggérer un bus pour tous les 1A
+    inscrits au dernier WEI en fonction des données rentrées dans le sondage, la validation se faisant ensuite
+    manuellement via l'interface Web.
+
+- `extract_ml_registrations --type {members, clubs, events, art, sport} [--year|-y YEAR]` :
+
+    Récupère la liste des adresses mail à inscrire à une liste de diffusion donnée.
+    
+    * `members` : Liste des adresses mail des utilisateurs ayant une adhésion BDE (et non Kfet) active.
+    * `clubs` : Liste des adresses mail de contact de tous les clubs BDE enregistrés.
+    * `events` : Liste de toutes les adresses mails des utilisateurs inscrits au WEI ayant demandé à s'inscrire sur
+                 la liste de diffusion des événements du BDE.
+    * `art` : Liste de toutes les adresses mails des utilisateurs inscrits au WEI ayant demandé à s'inscrire sur
+              la liste de diffusion concertnant les actualités artistiques du BDA.
+    * `sport` : Liste de toutes les adresses mails des utilisateurs inscrits au WEI ayant demandé à s'inscrire sur
+                la liste de diffusion concertnant les actualités sportives du BDS.
+    
+    Le champ `--year` est optionnel : il permet de choisir l'année du WEI en question (pour les trois dernières 
+    options). Si non renseigné, il s'agit du dernier WEI.
+    
+    Par défaut, si `--type` est non renseigné, la liste des adhérents BDE est renvoyée.
+    
 
 ## Shell
 
-- Tabula rasa:
-``` sh
+- Tabula rasa :
+```shell script
 sudo -u postgres sh -c "dropdb note_db && psql -c 'CREATE DATABASE note_db OWNER note;'"
 ```
diff --git a/management/commands/extract_ml_registrations.py b/management/commands/extract_ml_registrations.py
index a5fd17f..b67bf10 100644
--- a/management/commands/extract_ml_registrations.py
+++ b/management/commands/extract_ml_registrations.py
@@ -5,7 +5,6 @@ from datetime import date
 
 from django.core.management import BaseCommand
 from django.db.models import Q
-
 from member.models import Membership, Club
 from wei.models import WEIClub
 
diff --git a/management/commands/make_su.py b/management/commands/make_su.py
index 85ad641..cab3c6f 100644
--- a/management/commands/make_su.py
+++ b/management/commands/make_su.py
@@ -1,23 +1,22 @@
-#!/usr/bin/env python3
-
+# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
+# SPDX-License-Identifier: GPL-3.0-or-later
 
 from django.core.management.base import BaseCommand
-
 from django.contrib.auth.models import User
 
 
-
 class Command(BaseCommand):
-    def add_arguments(self,parser):
-        parser.add_argument('username',nargs='+',type=str)
-        parser.add_argument('-S',"--SUPER",action='store_true',help='make superuser')
-        
+    def add_arguments(self, parser):
+        parser.add_argument('username', nargs='+', type=str)
+        parser.add_argument('-S', "--SUPER", action='store_true', help='make superuser')
+        parser.add_argument('-s', "--STAFF", action='store_true', help='make staff')
 
-    def handle(self,*args,**kwargs):
+    def handle(self, *args, **kwargs):
         for uname in kwargs["username"]:
             user = User.objects.get(username=uname)
             user.is_active = True
-            if kwargs['SUPER']:
+            if kwargs['STAFF']:
                 user.is_staff = True
+            if kwargs['SUPER']:
+                user.is_superuser = True
             user.save()
-                
diff --git a/management/commands/wei_algorithm.py b/management/commands/wei_algorithm.py
index 8d70a45..0164072 100644
--- a/management/commands/wei_algorithm.py
+++ b/management/commands/wei_algorithm.py
@@ -2,7 +2,6 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 
 from django.core.management import BaseCommand
-
 from wei.forms import CurrentSurvey
 
 
-- 
GitLab