Changeset 30357 in spip-zone


Ignore:
Timestamp:
Jul 31, 2009, 5:38:18 AM (10 years ago)
Author:
nicolas@…
Message:

on peut maintenant choisir plusieurs jours de la semaine dans les envois automatises hebdomadaires (si on les prend tous, cela fait des envois quotidiens, oui, j'envisage du coup de supprimer cette option pour simplifier).

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

Legend:

Unmodified
Added
Removed
  • _plugins_/clevermail/2_0/base/clevermail.php

    r30120 r30357  
    1919            "lst_auto_hour" => "TINYINT(2) NOT NULL default '8'",
    2020            "lst_auto_week_day" => "TINYINT(1) NOT NULL default '1'", // 0 = dimanche
     21      "lst_auto_week_days" => "VARCHAR(13) NOT NULL default '1'", // concatenation numeros des jours, 0 = dimanche
    2122            "lst_auto_month_day" => "TINYINT(2) NOT NULL default '1'",
    2223            "lst_auto_subscribers" => "VARCHAR(255) NOT NULL",
     
    224225      ecrire_meta($nom_meta_base_version,$current_version="0.5",'non');
    225226      spip_log('Mise à jour des tables du plugin CleverMail en version 0.5', 'clevermail');
     227    }
     228    if (version_compare($current_version,'0.6','<')) {
     229      include_spip('base/abstract_sql');
     230      include_spip('base/create');
     231      maj_tables('spip_cm_lists');
     232      sql_updateq("spip_cm_lists", "lst_auto_week_days=lst_auto_week_day");
     233      sql_alter("TABLE spip_cm_lists DROP lst_auto_week_day");
     234      ecrire_meta($nom_meta_base_version,$current_version="0.6",'non');
     235      spip_log('Mise à jour des tables du plugin CleverMail en version 0.6', 'clevermail');
    226236    }
    227237  }
  • _plugins_/clevermail/2_0/formulaires/clevermail_list_edit.html

    r30120 r30357  
    203203            </select>
    204204          </li>
    205           #SET{name,lst_auto_week_day}
    206           #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
    207           #SET{obli,''}
    208           <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
    209             <label for="#GET{name}"><:clevermail:auto_week_day:></label>
    210             [<span class='erreur_message'>(#GET{erreurs})</span>]
    211             <select name="#GET{name}" id="#GET{name}">
     205          #SET{name,lst_auto_week_days}
     206          #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
     207          #SET{obli,'obligatoire'}
     208          <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
     209            <label for="#GET{name}"><:clevermail:auto_week_days:></label>
     210            [<span class='erreur_message'>(#GET{erreurs})</span>]
     211            <p class="explication"><:clevermail:auto_jours_semaine_explication:></p>
     212            <select name="#GET{name}[]" multiple="multiple" size="7" id="#GET{name}">
    212213              #SET{day,1}
    213               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_monday:></option>
     214              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_monday:></option>
    214215              #SET{day,2}
    215               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_tuesday:></option>
     216              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_tuesday:></option>
    216217              #SET{day,3}
    217               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_wednesday:></option>
     218              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_wednesday:></option>
    218219              #SET{day,4}
    219               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_thursday:></option>
     220              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_thursday:></option>
    220221              #SET{day,5}
    221               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_friday:></option>
     222              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_friday:></option>
    222223              #SET{day,6}
    223               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_saturday:></option>
     224              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_saturday:></option>
    224225              #SET{day,0}
    225               <option value="#GET{day}"[(#GET{day}|=={#ENV{lst_auto_week_day}}|oui) selected="selected"]><:clevermail:auto_week_day_sunday:></option>
     226              <option value="#GET{day}"[(#GET{day}|in_array{#ENV{#GET{name}}}|oui) selected="selected"]><:clevermail:auto_week_day_sunday:></option>
    226227            </select>
    227228          </li>
  • _plugins_/clevermail/2_0/formulaires/clevermail_list_edit.php

    r30117 r30357  
    11<?php
    22function formulaires_clevermail_list_edit_charger_dist($lst_id = -1) {
    3         if ($lst_id == -1 || !$valeurs = sql_fetsel('*', 'spip_cm_lists', 'lst_id='.intval($lst_id))) {
     3        if ($valeurs = sql_fetsel('*', 'spip_cm_lists', 'lst_id='.intval($lst_id))) {
     4                $valeurs['lst_auto_week_days'] = explode(',', $valeurs['lst_auto_week_days']);
     5        } else {
    46    $cm_mail_admin = sql_getfetsel('set_value', 'spip_cm_settings', 'set_name="CM_MAIL_ADMIN"');
    57                $valeurs = array(
     
    1921                  'lst_auto_mode' => 'none',
    2022                  'lst_auto_hour' => 8,
    21                   'lst_auto_week_day' => 1,
     23      'lst_auto_week_days' => array(1),
    2224                  'lst_auto_month_day' => 1,
    2325                  'lst_auto_subscribers' => '',
     
    4345                $erreurs['lst_moderator_email'] = _T('clevermail:cette_adresse_email_n_est_pas_valide');
    4446        }
    45         if (_request('lst_auto_mode') && !in_array(_request('lst_auto_mode'), array('none', 'day', 'week', 'month'))) {
    46                 $erreurs['lst_auto_mode'] = _T('clevermail:auto_erreur_ce_mode_automatisation_existe_pas');
     47        if (_request('lst_auto_mode') && _request('lst_auto_mode') != 'none') {
     48                if (in_array(_request('lst_auto_mode'), array('day', 'week', 'month'))) {
     49                  if (_request('lst_auto_hour') && (intval(_request('lst_auto_hour')) < 0 || intval(_request('lst_auto_hour')) > 23)) {
     50                    $erreurs['lst_auto_hour'] = _T('clevermail:auto_erreur_cette_heure_existe_pas');
     51                  }
     52                        switch(_request('lst_auto_mode')) {
     53                                case 'day':
     54                                        break;
     55                          case 'week':
     56          if (!_request('lst_auto_week_days') || count(_request('lst_auto_week_days')) == 0) {
     57            $erreurs['lst_auto_week_days'] = _T('clevermail:auto_erreur_choisir_un_jour_minimum');
     58          } elseif (min(_request('lst_auto_week_days')) < 0 || max(_request('lst_auto_week_day')) > 6) {
     59            $erreurs['lst_auto_week_days'] = _T('clevermail:auto_erreur_ce_jour_semaine_existe_pas');
     60          }
     61                                        break;
     62                                case 'month':
     63                                  if (_request('lst_auto_month_day') && (intval(_request('lst_auto_month_day')) < 0 || intval(_request('lst_auto_month_day')) > 31)) {
     64                                    $erreurs['lst_auto_month_day'] = _T('clevermail:auto_erreur_ce_jour_mois_existe_pas');
     65                                  } elseif (intval(_request('lst_auto_month_day')) > 28) {
     66                                    $erreurs['lst_auto_month_day'] = _T('clevermail:auto_erreur_ce_jour_mois_pas_possible');
     67                                  }
     68                                        break;
     69                        }
     70                } else {
     71      $erreurs['lst_auto_mode'] = _T('clevermail:auto_erreur_ce_mode_automatisation_existe_pas');
     72                }
    4773        }
    48   if (_request('lst_auto_hour') && (intval(_request('lst_auto_hour')) < 0 || intval(_request('lst_auto_hour')) > 23)) {
    49     $erreurs['lst_auto_hour'] = _T('clevermail:auto_erreur_cette_heure_existe_pas');
    50   }
    51   if (_request('lst_auto_week_day') && (intval(_request('lst_auto_week_day')) < 0 || intval(_request('lst_auto_week_day')) > 6)) {
    52     $erreurs['lst_auto_week_day'] = _T('clevermail:auto_erreur_ce_jour_semaine_existe_pas');
    53   }
    54   if (_request('lst_auto_month_day') && (intval(_request('lst_auto_month_day')) < 0 || intval(_request('lst_auto_month_day')) > 31)) {
    55     $erreurs['lst_auto_month_day'] = _T('clevermail:auto_erreur_ce_jour_mois_existe_pas');
    56   } elseif (intval(_request('lst_auto_month_day')) > 28) {
    57     $erreurs['lst_auto_month_day'] = _T('clevermail:auto_erreur_ce_jour_mois_pas_possible');
    58   }
    5974  if (_request('lst_auto_subscribers') != '') {
    6075        include_spip('inc/distant');
     
    90105    'lst_auto_mode' => _request('lst_auto_mode'),
    91106    'lst_auto_hour' => intval(_request('lst_auto_hour')),
    92     'lst_auto_week_day' => intval(_request('lst_auto_week_day')),
     107    'lst_auto_week_days' => implode(',', _request('lst_auto_week_days')),
    93108    'lst_auto_month_day' => intval(_request('lst_auto_month_day')),
    94109    'lst_auto_subscribers' => _request('lst_auto_subscribers'),
  • _plugins_/clevermail/2_0/genie/clevermail_automatisation.php

    r30064 r30357  
    11<?php
    22function genie_clevermail_automatisation_dist() {
    3         if ($autoLists = sql_select("lst_id, lst_auto_mode, lst_auto_hour, lst_auto_week_day, lst_auto_month_day", "spip_cm_lists", "lst_auto_mode != 'none'")) {
     3        if ($autoLists = sql_select("lst_id, lst_auto_mode, lst_auto_hour, lst_auto_week_days, lst_auto_month_day", "spip_cm_lists", "lst_auto_mode != 'none'")) {
    44                while($list = sql_fetch($autoLists)) {
    55                        $createAuto = false;
     
    1515                                                break;
    1616                                        case 'week':
    17                                                 if (intval(date("w")) == intval($list['lst_auto_week_day'])) {     // Le bon jour de la semaine
     17                                                if (in_array(date("w"), explode(',', $list['lst_auto_week_days']))) {     // Le bon jour de la semaine
    1818              $createAuto = true;
    1919                  }
  • _plugins_/clevermail/2_0/js/clevermail_list_edit.js

    r30058 r30357  
    44                if (mode == 'none') {
    55                        $('#lst_auto_hour').parent('li').hide();
    6                         $('#lst_auto_week_day').parent('li').hide();
     6                        $('#lst_auto_week_days').parent('li').hide();
    77                        $('#lst_auto_month_day').parent('li').hide();
    88                } else {
    99                        $('#lst_auto_hour').parent('li').show();
    1010                        if (mode == 'day') {
    11                                 $('#lst_auto_week_day').parent('li').hide();
     11                                $('#lst_auto_week_days').parent('li').hide();
    1212                                $('#lst_auto_month_day').parent('li').hide();
    1313                        } else {
    1414                                if (mode == 'week') {
    15                                         $('#lst_auto_week_day').parent('li').show();
     15                                        $('#lst_auto_week_days').parent('li').show();
    1616                                        $('#lst_auto_month_day').parent('li').hide();
    1717                                } else {
    18                                         $('#lst_auto_week_day').parent('li').hide();
     18                                        $('#lst_auto_week_days').parent('li').hide();
    1919                                        $('#lst_auto_month_day').parent('li').show();
    2020                                }
  • _plugins_/clevermail/2_0/lang/clevermail_fr.php

    r30155 r30357  
    120120          'auto_heure_creation_minutes' => 'h00',
    121121          'auto_erreur_cette_heure_existe_pas' => 'Cette heure n\'existe pas.',
    122           'auto_week_day' => 'Jour de la semaine',
     122          'auto_jours_semaine_explication' => 'Les messages seront cr&eacute;&eacute;s ces jours l&agrave;.',
     123          'auto_erreur_choisir_un_jour_minimum' => 'Vous devez choisir au moins un jour.',
     124          'auto_week_days' => 'Jour(s) de la semaine',
    123125          'auto_week_day_monday' => 'Lundi',
    124126    'auto_week_day_tuesday' => 'Mardi',
  • _plugins_/clevermail/2_0/plugin.xml

    r30153 r30357  
    33        <auteur>Thomas Beaumanoir et Nicolas Hoizey de [Clever Age->http://www.clever-age.com/]</auteur>
    44        <version>2.2.1</version>
    5   <version_base>0.5</version_base>
     5  <version_base>0.6</version_base>
    66        <etat>test</etat>
    77        <description>
     
    1313-* Possibilit&eacute; de forcer la version dans le formulaire d'abonnement
    1414-* 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
    15 -* {{Automatisation des envois}} avec une fr&eacute;quence quotidienne, hebdomadaire ou mensuelle
     15-* {{Automatisation des envois}} avec une fr&eacute;quence quotidienne, hebdomadaire (multiples jours de la semaine possibles) ou mensuelle
    1616-* {{Automatisation des inscriptions}} depuis un fichier distant
    1717
Note: See TracChangeset for help on using the changeset viewer.