EsupPortail / Esup-Pod

plateforme de gestion de fichier vidéo
https://pod.esup-portail.org/
GNU Lesser General Public License v3.0
35 stars 75 forks source link

Modifier la période d'obscolence par défaut pour certains logins #869

Open MathieuDomingo opened 1 year ago

MathieuDomingo commented 1 year ago

Salut,

l'idée serait de pouvoir indiquer les logins de certains utilisateurs pour outrepasser la valeur par défaut obtenue via l'affiliation :

ACCOMMODATION_YEARS={'faculty': 3, 'employee': 3, 'staff': 3} => ACCOMMODATION_YEARS={'faculty': 3, 'employee': 3, 'staff': 3, 'MonLogin': 5}

Et niveau code il faudrait juste modifier la fonction save du fichier podv2/pod/video/models.py en rajoutant le 2e if :

...
            # fix date_delete depends of owner affiliation
            ACCOMMODATION_YEARS = getattr(settings, "ACCOMMODATION_YEARS", {})
            if ACCOMMODATION_YEARS.get(self.owner.owner.affiliation):
                new_year = ACCOMMODATION_YEARS[self.owner.owner.affiliation]
                self.date_delete = date(
                    date.today().year + new_year,
                    date.today().month,
                    date.today().day,
                )
            if ACCOMMODATION_YEARS.get(self.owner.username):
                new_year = ACCOMMODATION_YEARS[self.owner.username]
                self.date_delete = date(
                    date.today().year + new_year,
                    date.today().month,
                    date.today().day,
                )
...

Bonne journée, Mathieu

ptitloup commented 1 year ago

Bonjour Mathieu, Pour information le prochain atelier du GT ESUP dématérialisation aura lieu le mardi 20 juin prochain de 9h à 12h00 en distanciel. Il portera sur le sujet de l'archivage numérique avec Pod comme exemple. J'en ferai la promo sur le canal pod des que j'aurai recu le mail "officiel". Bonne journée Nicolas

ptitloup commented 1 year ago

Et pour érpondre à ta proposition, je partirai plutot sur un groupe que sur un individu ;)

MathieuDomingo commented 1 year ago

Salut Nicolas,

Je suis parti sur individu parce que :

Si on utilise des groupes, on perd la simplicité induite par l'unicité, et il faut donc établir des règles pour savoir ce que l'on fait pour les utilisateurs qui appartiennent à plusieurs groupes :-/ (de base sans trop réfléchir j'aurai tendance à dire qu'on garde la plus grande valeur par défaut mais il y a peut être des cas où ce n'est pas le comportement voulu ?)

On doit pouvoir envisager de combiner les 3 (a priori avec une priorité lié à la généricité : affiliation < groupe < login)

J'ai voulu faire quelques petits tests à tatons pour les groupes, mais je ne sais pas comment on y accède :sweat_smile: for group in self.owner.owner.groups.all():

ptitloup commented 1 year ago

Hello, Alors cette migration en V3, ca avance ? Sinon, oui il faudrait partir sur un group, sinon, tu vas devoir redemarrer ton Pod à chaque ajout d'individu. On partirait bien sur les groupes de gestions (groups) si on suit ton idée. Je vais en parler en Copil et en Cotech, je te tiens informé @+ Nicolas

MathieuDomingo commented 1 year ago

C'est en phase de test, bascule pour cet été normalement :+1: