Je viens de re-parcourir
      le code et je pense que je t'ai fait une fausse joie... 
       
      Au moment où on charge un scénario, on ne dispose pas d'objet
      liste (justement parce que ce chargement se produit pendant qu'on
      construit de tels objets). 
      Par conséquent, on ne peut pas savoir si la liste appartient ou
      non à une famille. 
       
      Pour réussir à utiliser une scénario spécifique à une famille, il
      faut que je change la manière dont on charge les configs de
      listes, ce qui semble un peut trop dangereux pour être introduit
      dans une version stable. 
       
      Je dois approfondir pour savoir comment m'y prendre et savoir si
      ça peut entrer dans la stable ou la prochaine instable. 
       
      Je vous tient au courant. En tout état de cause, cela ne sera
      certainement pas dans la 6.1.18. 
       
      Bon week-end à tous, 
       
      David 
       
    
    Le 22/11/13 15:02, François Périchon a
      écrit : 
     
    adresse@cachée">On
      11/05/2013 05:44 PM, David Verdin wrote:
       
      Bonjour,
         
         
        Je sais que ça fait longtemps...
         
       
       
      Bonjour,
       
       
      Je ne vais pas m'en plaindre, ça fait aussi très longtemps...
       
      
         
        Le 24/09/13 11:16, François Périchon a écrit :
         
        Bonjour,
           
           
          J'aimerais pouvoir utiliser des scénarios dédiés à une famille
          sans
           
          que ceux-ci ne polluent la liste des scénarios génériques (la
          liste de
           
          scénarios que l'on trouve dans l'interface web de
          configuration des
           
          listes).
           
           
          Pour obtenir cela, je copie manuellement le scénario dans
          chaque
           
          directory de liste, ce qui peut parfois se révéler assez
          fastidieux.
           
           
          Y-a-t-il un moyen plus pratique/automatique d'obtenir ce que
          je souhaite?
           
         
        Voui, si tu es prêt à appliquer ce patch (qui, s'il te donne
         
        satisfaction, finira dans la prochaine 6.1) :
         
       
       
      Donc, j'ai appliqué le patch sur mon List.pm, mais je n'arrive pas
      à le faire fonctionner.
       
      Voici ce que j'ai fait:
       
      Création d'une famille de test avec "send test" dans le config.tt2
       
      et un scenario send.test dans /etc/sympa/families/test/scenari/
       
       
      sympa.pl --instantiate_family=test
      --input_file=/etc/sympa/families/test/test-full.xml
       
       
      err Scenario::new() Unable to find scenario file 'send.test',
      please report to listmaster
       
       
      Quand je me connecte sur la page d'admin wwsympa, j'ai un scenario
      vide qui est sélectionné et le scenario send.test n'apparaît pas
      dasn la liste déroulante.
       
       
      Des idées sur ce que j'ai pu ne pas faire correctement?
       
       
      Cordialement,
       
      
         
        Index: src/lib/List.pm
         
===================================================================
         
        --- src/lib/List.pm    (révision 9950)
         
        +++ src/lib/List.pm    (copie de travail)
         
        @@ -7773,13 +7773,25 @@
         
              my $directory = "$self->{'dir'}";
         
              my %list_of_scenario;
         
              my %skip_scenario;
         
        -
         
        -    foreach my $dir (
         
        -        "$directory/scenari",
         
        -        "$Conf::Conf{'etc'}/$robot/scenari",
         
        -        "$Conf::Conf{'etc'}/scenari",
         
        -        Sympa::Constants::DEFAULTDIR . '/scenari'
         
        -    ) {
         
        +    my @list_of_scenario_dir;
         
        +    if (defined $self->{'admin'}{'family_name'} ) {
         
        +    @list_of_scenario_dir = (
         
        +        "$directory/scenari",
         
        +
         
"$Conf::Conf{'etc'}/$robot/families/$self->{'admin'}{'family_name'}/scenari",
         
        +
"$Conf::Conf{'etc'}/families/$self->{'admin'}{'family_name'}/scenari", 
        +        "$Conf::Conf{'etc'}/$robot/scenari",
         
        +        "$Conf::Conf{'etc'}/scenari",
         
        +        Sympa::Constants::DEFAULTDIR . '/scenari'
         
        +    );
         
        +    }else{
         
        +    @list_of_scenario_dir = (
         
        +        "$directory/scenari",
         
        +        "$Conf::Conf{'etc'}/$robot/scenari",
         
        +        "$Conf::Conf{'etc'}/scenari",
         
        +        Sympa::Constants::DEFAULTDIR . '/scenari'
         
        +    );
         
        +    }
         
        +    foreach my $dir (@list_of_scenario_dir) {
         
              next unless (-d $dir);
         
         
              my $scenario_regexp = &tools::get_regexp('scenario');
         
         
        Une petite explication tout de même. Par défaut, on cherche les
         
        scénarios dans les répertoires suivants (dans l'ordre) :
         
         
         1. répertoire de configuration de la liste
         
         2. répertoire de configuration de l'hôte virtuel
         
         3. répertoire de configuration du serveur
         
         4. répertoire des scénarios par défaut de Sympa.
         
         
        Avec le patch, cet ordre devient :
         
         
         1. répertoire de configuration de la liste
         
         2. répertoire de la famille de liste dans l'hôte virtuel
         
         3. répertoire de la famille de liste sans hôte virtuel
         
         4. répertoire de configuration de l'hôte virtuel
         
         5. répertoire de configuration du serveur (sans hôte virtuel)
         
         6. répertoire des scénarios par défaut de Sympa.
         
         
        On a donc la précédence suivante : liste > famille > hôte
        virtuel > install.
         
         
        Cordialement,
         
         
        David Verdin
         
        
           
          Cordialement,
           
           
          --
           
          A bug in Sympa? Quick! To the bug tracker!
           
          <https://sourcesup.renater.fr/tracker/?group_id=23>
           
          RENATER logo
           
          *David Verdin*
           
          Études et projets applicatifs
           
           
          Tél : +33 2 23 23 69 71
           
          Fax : +33 2 23 23 71 21
           
           
          www.renater.fr <http;//www.renater.fr>
           
              RENATER
           
          263 Avenue du Gal Leclerc
           
          35042 Rennes Cedex
           
           
           
           
         
       
       
       
       
      --  
        
        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 
                     | 
               
            
           
          
          
         
       
     
  
 |