Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] Utilisation des custom_vars pour supprimer la suspension d'abonnements à des listes

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: David Verdin <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: [sympa-fr] Utilisation des custom_vars pour supprimer la suspension d'abonnements à des listes
  • Date: Tue, 05 Nov 2013 17:41:03 +0100


Le 05/11/13 16:35, Benoît Marchal a écrit :
Bonjour,

J'étais en train de regarder le code de wwsympa pour regarder comment récupérer cela.
Ta solution est plus simple et fonctionne tout à fait. Surtout, il n'y a pas de modification du code et ceci est très important pour la maintenabilité .
Ben oui, c'est une solution à peu de frias. tout le charme du TT2 est là.

J'ai même mis le code un peu différemment pour ne pas afficher la case à cocher pour une liste que l'on ne veut pas suspendre. Cela permet à l'utilisateur de voir l'ensemble de ces listes sans pouvoir intervenir sur celles où je lui interdis la suspension.

Bonne idée. C'est moins troublant pour l'utilisateur.
Est ce que cette modification du TT2 t'intéresse ? Si oui, il faut que je réécrive un peu plus propre car je l'ai fait sur un robot de test pour l'instant. En plus, j'écris aussi des messages en français, il faudrait peut-être localiser ceci.
Complètement !
On peut même l'ajouter dans la doc (je traduirai en anglais) comme solution de suspension des abonnements - éventuellement temporaire, en attendant qu'on trouve une solution plus générique, mais il n'est même pas sûr que cela soit nécessaire.
Les abonnés à la liste donneront leur avis là-dessus.

Cdlt

PS1 : franchement TT2 m'épate sur ses possibilités
N'est-ce pas ? C'est pour ça qu'on est contents d'avoir utilisé ce langage pour les templates de Sympa.
Au passage, je recommande aux admins Sympa les lectures suivantes :
- la doc de TT2 : http://www.template-toolkit.org/docs/manual/index.html
- le "livre au blaireau" écrit par l'auteur de TT2, plein de bonnes idées : http://shop.oreilly.com/product/9780596004767.do
PS2 : es tu dans ta journée réponse aux utilisateurs ? :)
On peut dire ça. Je vais devoir plonger tête baissée dans quelques correctifs de bug, la sortie de la 6.1.18, une formation dans quinze jours et quelques déploiement, donc j'essaie de caser le support avant d'être submergé... ;-)



Bonjour Benoît,

Le 25/10/13 12:01, Benoît Marchal a écrit :
Bonjour,

Je viens de découvrir, en lisant la documentation les variables personnalisables sur les listes et leur utilisation dans les templates web.

J'ai donc défini sur une liste une variable disable_suspend et lui ai mis une valeur 'on'. On retrouve donc dans le fichier de configuration de la liste :
custom_vars
value on
name disable_suspend

Maintenant, je voudrais pour faire un test l'utiliser dans le template suspend_request.tt2. On a une boucle sur la variable sub pour toutes les listes d'une personne.
J'avais compris qu'il fallait utiliser [% sub.custom_vars.disable_suspend %]. Mais cela n'a pas l'air de fonctionner : le simple affichage de cette valeur ne donne rien qu'elle soit ou non positionnée.

Est ce que je me trompe quelque part ? Faut-il que cette variable soit valuée pour chaque liste ?
Sans le "sub", normalement : [% custom_vars.disable_suspend %]
Malheureusement, la variable n'est disponible aussi simplement que dans un contexte de liste.

Cela dit, j'ai creusé ton idée et je suis arrivé à cette solution : Ajouter ce bloc ligne 18 de suspend_request.tt2 (juste après le code "[% FOREACH sub = suspend_list %]")

           [% SET allowed_suspension = 1 %]
           [% current_list = get_which.shift %]
           [% IF current_list.admin.custom_vars %]
             [% FOREACH cvar IN current_list.admin.custom_vars %]
                 [% IF cvar.name == 'disable_suspend' && cvar.value == 'on' %]
                     [% allowed_suspension = 0 %]
                 [% END %]
             [% END %]
           [% END %]
           [% IF allowed_suspension %]

Et pour que ça marche, fermer le gros IF ligne 41 :

          [% END %]

Voilà, avec ça, j'arrive à faire disparaître de la liste des listes à suspendre celles pour lesquelles on a défini une custom_var nommée "disable_suspend" avec la valeur "on".

Dis-moi si c'est OK chez toi aussi.

Bonne journée !

David

Merci d'avance pour votre aide.

Cdlt
--
Benoît MARCHAL Sous direction Infrastructure Direction du Numérique Université de Lorraine Tél : 03.83.68.20.66 mél : adresse@cachée


--
A bug in Sympa? Quick! To the bug tracker!

 
David Verdin
Études et projets applicatifs
 

Tél : +33 2 23 23 69 71
Fax : +33 2 23 23 71 21
 

www.renater.fr
RENATER
263 Avenue du Gal Leclerc
35042 Rennes Cedex






--
Benoît MARCHAL Sous direction Infrastructure Direction du Numérique Université de Lorraine Tél : 03.83.68.20.66 mél : adresse@cachée


--
A bug in Sympa? Quick! To the bug tracker!

 
David Verdin
Études et projets applicatifs
 

Tél : +33 2 23 23 69 71
Fax : +33 2 23 23 71 21
 

www.renater.fr
RENATER
263 Avenue du Gal Leclerc
35042 Rennes Cedex



Attachment: pngFjh42nbTJg.png
Description: PNG image

PNG image

Attachment: smime.p7s
Description: Signature cryptographique S/MIME




Archives gérées par MHonArc 2.6.19+.

Haut de le page