Changeset 30152 in spip-zone


Ignore:
Timestamp:
Jul 24, 2009, 8:41:25 AM (12 years ago)
Author:
nicolas@…
Message:

Possibilite de forcer la lettre et la version dans le formulaire d'abonnement avec la syntaxe #FORMULAIRE_CLEVERMAIL{16,texte} pour la lettre d'id=6 et le format texte uniquement

Location:
_plugins_/clevermail/2_0
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/clevermail/2_0/formulaires/clevermail.html

    r30120 r30152  
    66            #ACTION_FORMULAIRE{#ENV{action}}
    77                [(#ENV{lst_id}|oui)
    8                   <input type="hidden" name="lst_id" value="#ENV{lst_id}" />
     8                  <input type="hidden" name="lst_id" value="[(#ENV{lst_id}|table_valeur{0})]" />
    99                ]
     10          [(#ENV{lsr_mode_force}|oui)
     11            <input type="hidden" name="lsr_mode" value="[(#ENV{lsr_mode_force}|=={texte}|?{0,1})]" />
     12          ]
    1013              <ul>
    1114                [(#ENV{lst_id}|non)
     
    2023            <input type="text" class="text" name="#GET{name}" id="#GET{name}" size="50" maxlength="255" value="#ENV{#GET{name}}" />
    2124                </li>
    22           #SET{name,lsr_mode}
    23                 #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
    24                 #SET{obli,''}
    25                 <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    26                   <label><:clevermail:version:></label>
    27                   [<span class='erreur_message'>(#GET{erreurs})</span>]
    28                     #SET{value,0}
    29                     <div class="choix">
    30                       <input type="radio" name="#GET{name}" id="#GET{name}#GET{value}" class="radio" value="#GET{value}"[ (#ENV{#GET{name}}|=={#GET{value}}|oui)checked="checked"] />
    31                       <label for="#GET{name}#GET{value}"><:clevermail:choix_version_texte:></label>
    32                     </div>
    33                     #SET{value,1}
    34                     <div class="choix">
    35                       <input type="radio" name="#GET{name}" id="#GET{name}#GET{value}" class="radio" value="#GET{value}"[ (#ENV{#GET{name}}|=={#GET{value}}|oui)checked="checked"] />
    36                       <label for="#GET{name}#GET{value}"><:clevermail:choix_version_html:></label>
    37                     </div>
    38                 </li>
     25          [(#ENV{lsr_mode_force}|non)
     26                  #SET{name,lsr_mode}
     27                        #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
     28                        #SET{obli,''}
     29                        <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     30                          <label><:clevermail:version:></label>
     31                          [<span class='erreur_message'>(#GET{erreurs})</span>]
     32                            #SET{value,0}
     33                            <div class="choix">
     34                              <input type="radio" name="#GET{name}" id="#GET{name}#GET{value}" class="radio" value="#GET{value}"[ (#ENV{#GET{name}}|=={#GET{value}}|oui)checked="checked"] />
     35                              <label for="#GET{name}#GET{value}"><:clevermail:choix_version_texte:></label>
     36                            </div>
     37                            #SET{value,1}
     38                            <div class="choix">
     39                              <input type="radio" name="#GET{name}" id="#GET{name}#GET{value}" class="radio" value="#GET{value}"[ (#ENV{#GET{name}}|=={#GET{value}}|oui)checked="checked"] />
     40                              <label for="#GET{name}#GET{value}"><:clevermail:choix_version_html:></label>
     41                            </div>
     42                        </li>
     43                ]
    3944              </ul>
    4045              <p class="boutons"><span class="image_loading"></span><input type="submit" class="submit" value="<:clevermail:bouton_inscription:>" /></p>
  • _plugins_/clevermail/2_0/formulaires/clevermail.php

    r30117 r30152  
    11<?php
    2 function formulaires_clevermail_charger_dist($lst_id = 0) {
     2function formulaires_clevermail_charger_dist($lst_id = 0, $lsr_mode_force = false) {
    33        $default = array('editable' => ' ', 'lsr_mode' => 0, 'sub_email' => '', 'lst_ids' => array());
     4        if ($lsr_mode !== false && in_array($lsr_mode_force, array('texte', 'html'))) {
     5                $default['lsr_mode_force'] = $lsr_mode_force;
     6        }
    47        if (intval($lst_id) != 0) {
    5                 if ($lst_id = sql_getfetsel("lst_id", "spip_cm_lists", "lst_id=".intval($lst_id)." AND lst_moderation!='closed'")) {
     8                if ($lst_id = sql_getfetsel("lst_id", "spip_cm_lists", "lst_id = ".intval($lst_id)." AND lst_moderation != 'closed'")) {
    69                        $valeurs = $default;
    710                        $valeurs['lst_id'] = array($lst_id);
     
    1114                }
    1215        } else {
    13           $nbLists = sql_countsel("spip_cm_lists", "lst_moderation!='closed'");
     16          $nbLists = sql_countsel("spip_cm_lists", "lst_moderation != 'closed'");
    1417          if ($nbLists == 0) {
    1518      return array('editable' => '');
    1619          } elseif ($nbLists == 1) {
    17                 $lst_id = sql_getfetsel("lst_id", "spip_cm_lists", "lst_moderation!='closed'");
     20                $lst_id = sql_getfetsel("lst_id", "spip_cm_lists", "lst_moderation != 'closed'");
    1821      $valeurs = $default;
    1922      $valeurs['lst_id'] = array($lst_id);
     
    2629}
    2730
    28 function formulaires_clevermail_verifier_dist($lst_id = 0) {
     31function formulaires_clevermail_verifier_dist($lst_id = 0, $lsr_mode_force = false) {
    2932  $erreurs = array();
    3033  if (!_request('lst_id') && !_request('lst_ids')) {
     
    4447}
    4548
    46 function formulaires_clevermail_traiter_dist($lst_id = 0) {
     49function formulaires_clevermail_traiter_dist($lst_id = 0, $lsr_mode_force = false) {
    4750        $ok = true;
    4851        $message = '';
     
    5962        $lists = array_map("intval", _request('lst_ids'));
    6063  }
     64  if (_request('lsr_mode_force')) {
     65        $lsr_mode = intval(_request('lsr_mode_force'));
     66  } else {
     67        $lsr_mode = intval(_request('lsr_mode'));
     68  }
    6169  foreach($lists as $list) {
    6270        $lst_id = intval($list);
    6371    $listData = sql_fetsel("*", "spip_cm_lists", "lst_id=".intval($lst_id));
    6472    if (sql_countsel("spip_cm_lists_subscribers", "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id)) == 1) {
    65         if (sql_getfetsel("lsr_mode", "spip_cm_lists_subscribers", "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id)) == intval(_request('lsr_mode'))) {
     73        if (sql_getfetsel("lsr_mode", "spip_cm_lists_subscribers", "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id)) == intval($lsr_mode)) {
    6674                // Déjà abonné avec ce mode
    6775                $message .= (strlen($message) > 0 ? '<br />' : '')._T('clevermail:inscription_deja_abonne_meme_mode', array('lst_name' => $listData['lst_name']));
    6876        } else {
    6977                // Déjà abonné mais changement de mode
    70         sql_updateq("spip_cm_lists_subscribers", array('lsr_mode' => intval(_request('lsr_mode'))), "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id));
     78        sql_updateq("spip_cm_lists_subscribers", array('lsr_mode' => intval($lsr_mode)), "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id));
    7179                $message .= (strlen($message) > 0 ? '<br />' : '')._T('clevermail:inscription_deja_abonne_autre_mode', array('lst_name' => $listData['lst_name']));
    7280        }
     
    7684                case 'open':
    7785                        $actionId = md5('subscribe#'.$lst_id.'#'.$sub_id.'#'.time());
    78           sql_insertq("spip_cm_lists_subscribers", array('lst_id' => intval($lst_id), 'sub_id' => intval($sub_id), 'lsr_mode' => intval(_request('lsr_mode')), 'lsr_id' => $actionId));
     86          sql_insertq("spip_cm_lists_subscribers", array('lst_id' => intval($lst_id), 'sub_id' => intval($sub_id), 'lsr_mode' => intval($lsr_mode), 'lsr_id' => $actionId));
    7987          $message .= (strlen($message) > 0 ? '<br />' : '')._T('clevermail:inscription_validee', array('lst_name' => $listData['lst_name']));
    8088                        break;
     
    8391          $actionId = md5('subscribe#'.$lst_id.'#'.$sub_id.'#'.time());
    8492          if (sql_countsel("spip_cm_pending", "lst_id=".intval($lst_id)." AND sub_id=".intval($sub_id)) == 0) {
    85                 sql_insertq("spip_cm_pending", array('lst_id' => intval($lst_id), 'sub_id' => intval($sub_id), 'pnd_action' => 'subscribe', 'pnd_mode' => intval(_request('lsr_mode')), 'pnd_action_date' => time(), 'pnd_action_id' => $actionId));
     93                sql_insertq("spip_cm_pending", array('lst_id' => intval($lst_id), 'sub_id' => intval($sub_id), 'pnd_action' => 'subscribe', 'pnd_mode' => intval($lsr_mode), 'pnd_action_date' => time(), 'pnd_action_id' => $actionId));
    8694          }
    8795          // Composition du message de demande de confirmation
     
    8997          $template['@@NOM_LETTRE@@'] = $listData['lst_name'];
    9098          $template['@@DESCRIPTION@@'] = $listData['lst_comment'];
    91           $template['@@FORMAT_INSCRIPTION@@']  = ($mode == 1 ? 'HTML' : 'texte');
     99          $template['@@FORMAT_INSCRIPTION@@']  = (intval($lsr_mode) == 1 ? _T('choix_version_html') : _T('choix_version_texte'));
    92100          $template['@@EMAIL@@'] = _request('sub_email');
    93101          $template['@@URL_CONFIRMATION@@'] = $GLOBALS['meta']['adresse_site'].'/spip.php?page=clevermail_do&id='.$actionId;
  • _plugins_/clevermail/2_0/lang/clevermail_fr.php

    r30117 r30152  
    2222          'choix_version_html' => 'HTML',
    2323          'choix_version_texte' => 'Texte brut',
    24           'choix_version_composite' => 'HTML et texte brut',
    2524                'inscription_lettre' => 'Inscrivez-vous &agrave; notre lettre d\'information :',
    2625                'inscription_lettres' => 'Inscrivez-vous &agrave; nos lettres d\'information :',
  • _plugins_/clevermail/2_0/plugin.xml

    r30120 r30152  
    99-* Gestion de {{multiples lettres}}
    1010-* Gestion des inscriptions/d&eacute;sinscriptions, {{les abonn&eacute;s &eacute;tant distincts des utilisateurs de SPIP}}
    11 -* Abonnement au choix de l'utilisateur en version {{HTML, texte brut ou multipart simultan&eacute; HTML + texte brut}} (attention, Lotus Notes n'aime pas)
     11-* Possibilit&eacute; de restreindre la liste des lettres propos&eacute;es dans le formulaire d'abonnement
     12-* Abonnement au choix de l'utilisateur en version {{texte brut ou multipart simultan&eacute; HTML + texte brut}} (attention, Lotus Notes n'aime pas)
     13-* Possibilit&eacute; de forcer la version dans le formulaire d'abonnement
    1214-* R&eacute;cup&eacute;ration des contenus HTML et texte brut &agrave; partir de deux URL, donc {{utilisation de squelettes SPIP}} d&eacute;di&eacute;s possible
    1315-* {{Automatisation des envois}} avec une fr&eacute;quence quotidienne, hebdomadaire ou mensuelle
Note: See TracChangeset for help on using the changeset viewer.