Changeset 45196 in spip-zone


Ignore:
Timestamp:
Mar 6, 2011, 3:15:19 PM (10 years ago)
Author:
jluc@…
Message:

Meilleur traitement des thématiques d'abonnement public

  • Création d'un sélecteur de thématique
  • Dans le privé, les administrateurs ne peuvent attribuer un abonnement qu'aux rubriques qui sont des thématiques d'abonnement déclarées et proposées au public - ça évite de perdre des abonnements dans la nature.
  • Une nouvelle option de config (mode toutes-rubriques) leur permet quand même de faire des abonnements à des rubriques non proposées au public.
  • Afficher le nom des thématiques et non celui des rubriques associées (sauf pour créer une nouvelle thématique à partir d'une rubrique, et sauf en mode toutes-rubriques)
  • Elimination du terme "thème" au profit de "thématique", ajustement des chaînes de langue, tenir compte du mode toutes-rubrique et du nombre de thématiques pour les affichages,... (il en reste encore un peu à faire).
  • Petits allégements de code html
  • Incrément de version et gestion des upgrades récents pour la valeur par défaut de la config
Location:
_plugins_/spip-lettres
Files:
3 added
11 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spip-lettres/base/lettres.php

    r44903 r45196  
    350350                                ecrire_meta($nom_meta_base_version,$current_version='4.0.2','non');
    351351                        }
     352                        if (version_compare($current_version,'4.5.4','<'))
     353                                ecrire_meta('spip_lettres_cliquer_anonyme', 'oui');
     354                        if (version_compare($current_version,'4.5.5','<'))
     355                                ecrire_meta('spip_lettres_admin_abo_toutes_rubriques', 'non');
    352356                }
    353357        }
    354 
    355358
    356359        function lettres_vider_tables($nom_meta_base_version) {
     
    394397                effacer_meta('spip_lettres_cron');
    395398                effacer_meta('spip_lettres_abonnement_par_defaut');
     399                effacer_meta('spip_lettres_cliquer_anonyme');
     400                effacer_meta('spip_lettres_admin_abo_toutes_rubriques');
    396401                include_spip('inc/getdocument');
    397402                effacer_repertoire_temporaire(_DIR_LETTRES);
  • _plugins_/spip-lettres/exec/abonnes.php

    r36976 r45196  
    113113                        echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/rubrique-24.png', true, "", _T('lettresprive:boite_abonnements'));
    114114                        echo '<table cellpadding="2" cellspacing="0" width="100%" class="arial2" style="border: 1px solid #aaaaaa;">';
    115                         while ($abo = sql_fetch($abonnements)) {       
     115                        while ($abo = sql_fetch($abonnements)) {
    116116                                $id_rubrique = $abo['id_rubrique'];
    117117                                $statut = $abo['statut'];
     118                                if ($GLOBALS['meta']['spip_lettres_admin_abo_toutes_rubriques']=='oui') {
     119                                        $rubouthem = "spip_rubriques";
     120                                        $titre0 = _T('lettresprive:racine_du_site');
     121                                } else {
     122                                        $rubouthem = "spip_themes";
     123                                        $titre0 = _T('lettres:tout_le_site');
     124                                };
    118125                                if ($id_rubrique == 0)
    119                                         $titre = _T('lettresprive:racine_du_site');
     126                                        $titre = $titre0;
    120127                                else
    121                                         $titre = sql_getfetsel('titre', 'spip_rubriques', 'id_rubrique='.intval($id_rubrique));
     128                                        $titre = sql_getfetsel('titre', $rubouthem, 'id_rubrique='.intval($id_rubrique));
    122129                                echo "<tr style='background-color: #eeeeee;'>";
    123130                                echo '<td width="12">'.http_img_pack(_DIR_PLUGIN_LETTRES.'prive/images/rubrique-12.png', "rub", '').'</td>';
     
    136143                        echo '<form method="post" action="'.generer_url_ecrire('abonnes', 'id_abonne='.$abonne->id_abonne).'">';
    137144                        echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/rubrique-24.png', true, "", _T('lettresprive:nouvel_abonnement'));
    138                         $selecteur_rubrique = charger_fonction('chercher_rubrique', 'inc');
    139                         echo $selecteur_rubrique(0, 'rubrique', false);
    140                         echo "<table width='100%'><tr>";
    141                         echo "<td class='arial2' width='80%'>";
    142                         echo _T('lettresprive:selectionnez_rubrique');
    143                         echo "</td>\n";
    144                         echo '<td>';
    145                         echo '<div align="right">';
    146                         echo "<input type='submit' name='abonner' class='fondo' value='"._T('lettresprive:abonner')."' STYLE='font-size:10px'>";
     145                        echo "<div class='arial2'>";
     146                        if (($GLOBALS['meta']['spip_lettres_admin_abo_toutes_rubriques']=='oui')
     147                                or (lettres_nombre_themes()>1))
     148                                echo _T('lettresprive:selectionnez_rubrique')."<br>";
     149                        echo choisir_thematique();
     150                        echo "<input type='submit' name='abonner' class='fondo'
     151                                        value='"._T('lettresprive:abonner')."' style='float:right; font-size:10px'>";
    147152                        echo "</div>";
    148                         echo "</td>";
    149                         echo "</tr></table>";
    150153                        echo fin_cadre_enfonce(true);
    151154                        echo '</form>';
  • _plugins_/spip-lettres/exec/config_lettres_cron.php

    r36924 r45196  
    116116                    echo '<p>';
    117117                        echo '<label for="id_parent">'._T('lettresprive:choix_rubrique').'</label>';
    118                         $selecteur_rubrique = charger_fonction('chercher_rubrique', 'inc');
    119                         echo $selecteur_rubrique(0, 'rubrique', false);
     118                        echo choisir_thematique();
    120119                        echo '</p>';
    121120                        echo '<p style="text-align: right;"><input class="fondo" name="valider" type="submit" value="'._T('lettresprive:ajouter').'" /></p>';
  • _plugins_/spip-lettres/exec/config_lettres_formulaire.php

    r42774 r45196  
    127127                                               
    128128                        echo '<p>'._T('lettresprive:theme_par_defaut_actuel')
    129                                                 .lettres_titre_theme_par_defaut();;
     129                                                .lettres_titre_theme_par_defaut();
    130130                        if ($GLOBALS['meta']['spip_lettres_abonnement_par_defaut']>=0)
    131                                 echo '<input class="fondo" style="float: right;" name="supprimer" type="submit" value="'._T('lettresprive:supprimer').'" />';
    132                         echo '</p><p>';
    133                         echo '<label for="id_parent">'._T('lettresprive:theme_par_defaut_modifier').'</label>';
    134                         echo $selecteur_rubrique(0, 'rubrique', false);
     131                                echo '<input class="fondo" style="float: right;"
     132                                        name="supprimer" type="submit" value="'._T('lettresprive:supprimer').'" />';
    135133                        echo '</p>';
    136                         echo '<p style="text-align: right;"><input class="fondo" name="enregistrer" type="submit" value="'._T('lettresprive:enregistrer').'" /></p>';
     134                        if (sql_countsel("spip_themes")>1) {
     135                                echo '<p style="margin-top:1em;">';
     136                                echo '<label for="id_parent">'._T('lettresprive:theme_par_defaut_modifier').':</label>';
     137                                echo choisir_thematique();
     138                                echo '<input class="fondo" style="float: right;"
     139                                        name="enregistrer" type="submit" value="'._T('lettresprive:enregistrer').'" />
     140                                </p>';
     141                        };
    137142                        echo fin_cadre_trait_couleur(true);
    138143                        echo '</form>';
  • _plugins_/spip-lettres/exec/config_lettres_squelettes.php

    r45195 r45196  
    6969                        $spip_lettres_cliquer_anonyme = $_POST['spip_lettres_cliquer_anonyme'];
    7070                        ecrire_meta('spip_lettres_cliquer_anonyme', $spip_lettres_cliquer_anonyme);
     71
     72                        $spip_lettres_admin_abo_toutes_rubriques = $_POST['spip_lettres_admin_abo_toutes_rubriques'];
     73                        ecrire_meta('spip_lettres_admin_abo_toutes_rubriques', $spip_lettres_admin_abo_toutes_rubriques);
    7174                       
    7275                        ecrire_metas();
     
    8790                $spip_lettres_notifier_suppression_abonne       = $GLOBALS['meta']['spip_lettres_notifier_suppression_abonne'];
    8891                $spip_lettres_cliquer_anonyme                           = $GLOBALS['meta']['spip_lettres_cliquer_anonyme'];
     92                $spip_lettres_admin_abo_toutes_rubriques                                = $GLOBALS['meta']['spip_lettres_admin_abo_toutes_rubriques'];
    8993
    9094                $commencer_page = charger_fonction('commencer_page', 'inc');
     
    188192
    189193            echo '<tr>';
    190                 echo '<td><label>'._T("Statistiques anonymes sur les clics de liens").'</label></td>';
     194                echo '<td><label>'._T("lettresprive:cliquer_anonyme").'</label></td>';
    191195                echo '<td>';
    192196                echo '<input type="radio" class="radio" name="spip_lettres_cliquer_anonyme" value="oui" id="spip_lettres_cliquer_anonyme_oui" '.($spip_lettres_cliquer_anonyme == 'oui' ? 'checked="checked" ' : '').'/><label for="spip_lettres_cliquer_anonyme_oui">'._T('lettresprive:oui').'</label>';
    193197                echo '&nbsp;';
    194198                echo '<input type="radio" class="radio" name="spip_lettres_cliquer_anonyme" value="non" id="spip_lettres_cliquer_anonyme_non" '.($spip_lettres_cliquer_anonyme == 'non' ? 'checked="checked" ' : '').'/><label for="spip_lettres_cliquer_anonyme_non">'._T('lettresprive:non').'</label>';
     199                echo '</td>';
     200                echo '</tr>';
     201 
     202            echo '<tr>';
     203                echo '<td><label>'._T("lettresprive:admin_abo_toutes_rubriques").'</label></td>';
     204                echo '<td>';
     205                echo '<input type="radio" class="radio" name="spip_lettres_admin_abo_toutes_rubriques" value="oui" id="spip_lettres_admin_abo_toutes_rubriques_oui" '.($spip_lettres_admin_abo_toutes_rubriques == 'oui' ? 'checked="checked" ' : '').'/><label for="spip_lettres_admin_abo_toutes_rubriques_oui">'._T('lettresprive:oui').'</label>';
     206                echo '&nbsp;';
     207                echo '<input type="radio" class="radio" name="spip_lettres_admin_abo_toutes_rubriques" value="non" id="spip_lettres_admin_abo_toutes_rubriques_non" '.($spip_lettres_admin_abo_toutes_rubriques == 'non' ? 'checked="checked" ' : '').'/><label for="spip_lettres_admin_abo_toutes_rubriques_non">'._T('lettresprive:non').'</label>';
    195208                echo '</td>';
    196209                echo '</tr>';
  • _plugins_/spip-lettres/exec/naviguer_export.php

    r37251 r45196  
    6969                echo '<form action="'.generer_url_action('export_abonnes', '', false, true).'" method="post">';
    7070                echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/export.png', true, "", _T('lettresprive:depuis_rubrique'));
    71                 $selecteur_rubrique = charger_fonction('chercher_rubrique', 'inc');
    72                 echo $selecteur_rubrique($id_rubrique, 'rubrique', false);
     71                echo choisir_thematique($id_rubrique);
    7372                echo '<div align="right">';
    7473                echo '<input type="submit" name="telecharger" class="fondo" value="'._T('lettresprive:telecharger').'" />';
  • _plugins_/spip-lettres/exec/naviguer_import.php

    r37665 r45196  
    168168                } else {
    169169                        echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/import.png', true, "", _T('lettresprive:rubrique_destination'));
    170                         $selecteur_rubrique = charger_fonction('chercher_rubrique', 'inc');
    171                         echo $selecteur_rubrique($id_rubrique, 'rubrique', false);
     170                        echo choisir_thematique($id_rubrique);
    172171                        echo fin_cadre_enfonce(true);
    173172                        echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/preferences.png', true, "", _T('lettresprive:boite_format'));
  • _plugins_/spip-lettres/exec/naviguer_purge.php

    r43319 r45196  
    7676                } else {
    7777                        echo debut_cadre_enfonce(_DIR_PLUGIN_LETTRES.'prive/images/purge.png', true, "", _T('lettresprive:selectionnez_rubrique'));
    78                         $selecteur_rubrique = charger_fonction('chercher_rubrique', 'inc');
    79                         echo $selecteur_rubrique($id_rubrique, 'rubrique', false);
     78                        echo choisir_thematique($id_rubrique);
     79
    8080                        echo '<input type="hidden" name="id_rubrique" value="'.$id_rubrique.'" />';
    8181                        echo '<div align="right">';
  • _plugins_/spip-lettres/lang/lettres_fr.php

    r38375 r45196  
    2121                'themes' => "Thèmes",
    2222                'racine' => "Racine du site",
    23                 'tout_le_site' => "Tout le site",
     23                'tout_le_site' => "Toutes les th&eacute;matiques",
    2424                'email' => "Email",
    2525                'nom' => "Nom",
  • _plugins_/spip-lettres/lang/lettresprive_fr.php

    r44222 r45196  
    5555                'ajouter_abonne' => "Ajouter un abonné",
    5656                'aller_liste_lettres' => "Aller à la liste des lettres d'information",
    57                 'configurer_formulaire_abonnement' => "Configuration du formulaire d'abonnement",
     57                'configurer_formulaire_abonnement' => "Configurer", // lien dans bloc raccourcis
    5858                'import_abonnes' => "Importer des abonnés",
    5959                'export_abonnes' => "Exporter des abonnés",
     
    6363                'aller_au_formulaire_abonnement' => "Aller au formulaire d'abonnement",
    6464                'aide_config_lettres_formulaire' => "Pour rappel : un internaute s'abonne à une ou plusieurs rubriques de votre site. Pour un abonné, chacune de ces rubriques correspond à un abonnement.<br /><br />Les thèmes disponibles suivants sont les rubriques dans lesquelles les internautes ont le droit de s'abonner.<br /><br />Cette restriction n'est valable que sur la partie publique puisque vous êtes libres de gérer les abonnements comme bon vous semble dans l'espace privé.<br /><br />Si vous proposez aux internautes de s'abonner à la racine du site, alors ces abonnés recevront <strong>toutes</strong> les lettres d'information rédigées sur ce site.",
    65                 'themes_disponibles' => "Thèmes disponibles",
    66                 'supprimer_theme' => "supprimer ce thème",
    67                 'aucun_theme_selectionne' => "Aucun thème sélectionné",
    68                 'ajouter_theme' => "Ajouter un thème",
     65                'themes_disponibles' => "Thématiques disponibles",
     66                'supprimer_theme' => "supprimer cette thématique",
     67                'aucun_theme_selectionne' => "Aucune thématique sélectionnée",
     68                'ajouter_theme' => "Ajouter une thématique",
    6969                'titre' => "Titre",
    7070                'choix_rubrique' => "Choix de la rubrique",
     
    7272                'aide_config_lettres_squelettes' => "Indiquez le nom des squelettes sans leur extension",
    7373                'logo_lettres' => "LOGO PAR DEFAUT DES LETTRES",
    74                 'configuration_squelettes' => "Configuration des squelettes",
     74                'configuration_squelettes' => "Choix des squelettes",
    7575                'squelette_formulaire_abonnement' => "Formulaire d'abonnement",
    7676                'squelette_titre_lettre' => "Titre des lettres",
     
    8282                'voir_en_ligne' => "Voir en ligne",
    8383                'logo_lettre' => "LOGO DE LA LETTRE",
     84
    8485                'statistiques' => "Statistiques",
    8586                'envoi' => "Envoi",
     
    9394                'taux_ouverture' => "taux d'ouverture",
    9495                'clics' => "Clics",
     96                'cliquer_anonyme' => "Les statistiques de clics dans les lettres doivent-elles respecter l'anonymat des destinataires ?",
     97
    9598                'creer_nouvelle_lettre' => "Créer une nouvelle lettre",
    9699                'aide_lettres_envoi_en_cours' => "L'envoi de votre lettre est en cours et peut prendre plusieurs minutes selon le nombre d'abonnés, merci de patienter.",
     
    149152                Seuls les abonnés \"directs\" seront supprimés.",
    150153                'nb_abonnements_supprimes' => "Nombre d'abonnements supprimés",
    151                 'config_formulaire' => "Configuration du formulaire d'abonnement",
    152                 'config_squelettes' => "Configuration avancée du plugin",
     154                'config_formulaire' => "Thématiques des abonnements",
     155                'config_squelettes' => "Configuration avancée",
    153156                'tous_abonnes_rubrique' => "Tous les abonnés de cette rubrique",
    154157                'en_cours_redaction' => "en cours de rédaction",
     
    190193                'abonne_inexistant' => "Abonné inexistant",
    191194
    192                 'config_cron' => "Configuration des envois récurrents",
     195                'config_cron' => "Envois récurrents",
    193196                'spip_lettres_envois_recurrents' => "Activer les envois récurrents",
    194197                'note_code_cron' => "Votre crontab devra exécuter le script :",
     
    199202                'aucun_envoi_programme' => "Aucun envoi programmé.",
    200203               
    201 // Themes par defaut
     204// Thematiques et abonnement par defaut
    202205                'theme_par_defaut'                      => 'Abonnement par défaut',
    203206                'theme_par_defaut_actuel'       => 'Abonnement par défaut actuel : ',
    204                 'theme_racine'                          => 'Tous les thèmes',
     207                'theme_racine'                          => 'Toutes les thématiques',
    205208                'theme_par_defaut_modifier'     => "Modifier l'abonnement par défaut",
     209                'admin_abo_toutes_rubriques' => 'Les administrateurs peuvent ils attribuer des abonnements en dehors des th&eacute;matiques publiques ?',
    206210               
    207211                'Z' => 'ZZzZZzzz',
  • _plugins_/spip-lettres/lettres_options.php

    r36976 r45196  
    1616$GLOBALS['logo_libelles']['id_lettre'] = _T('lettresprive:logo_lettre');
    1717#define('_DEBUG_BLOCK_QUEUE',true);
     18
     19include_spip ("inc/choisir_thematique");
    1820?>
Note: See TracChangeset for help on using the changeset viewer.