Changeset 1168 in spip-zone


Ignore:
Timestamp:
Oct 25, 2005, 4:20:41 PM (14 years ago)
Author:
booz.bloog@…
Message:

installation spip-listes

Location:
_squelettes_/bloog
Files:
24 added
1 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/bloog/abonnement.php3

    r17 r1168  
    11<?php
    2 /******************************************************************************************/
    3 /* La bloOgletter est un système de gestion de listes d'information par email pour SPIP   */
    4 /* Copyright (C) 2004 Vincent CARON  v.caron<at>laposte.net , http://bloog.net            */
    5 /*                                                                                        */
    6 /* Ce programme est libre, vous pouvez le redistribuer et/ou le modifier selon les termes */
    7 /* de la Licence Publique Générale GNU publiée par la Free Software Foundation            */
    8 /* (version 2).                                                                           */
    9 /*                                                                                        */
    10 /* Ce programme est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE,       */
    11 /* ni explicite ni implicite, y compris les garanties de commercialisation ou             */
    12 /* d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique Générale GNU  */
    13 /* pour plus de détails.                                                                  */
    14 /*                                                                                        */
    15 /* Vous devez avoir reçu une copie de la Licence Publique Générale GNU                    */
    16 /* en même temps que ce programme ; si ce n'est pas le cas, écrivez à la                  */
    17 /* Free Software Foundation,                                                              */
    18 /* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, États-Unis.                   */
    19 /******************************************************************************************/
    20 
    212
    223include ("ecrire/inc_version.php3");
     
    3516
    3617
     18
     19// 3 Cas : 
     20// 1) La personne valide le formulaire de modif, traitement des données
     21// 2) Recuperer le cookie de relance désabonnement / afficher le forumlaire de modif
     22// 3) Envoyer par mail le cookie de relance modif abonnement
     23//presentation
     24
     25
     26 // La personne valide le formulaire
     27
     28 // revoir le test ?
    3729if($champs_extra AND ($confirm == 'oui') ){
    3830
    3931$res = spip_query("SELECT * FROM spip_auteurs WHERE cookie_oubli='$d' AND statut<>'5poubelle' AND pass<>''");
    4032   if ($row = spip_fetch_array($res)) {
     33    $id_auteur = $row['id_auteur'];
     34        $statut = $row['statut'];
     35        $nom = $row['nom'];
     36        $mail_abo = $row['email'];
     37
     38    // abonnement aux listes
     39    //(http://www.phpfrance.com/tutorials/index.php?page=2&id=13)
     40
     41//selectionne les listes et desabonne l'auteur
     42$listes = spip_query ("SELECT * FROM spip_articles WHERE statut = 'liste'");
     43while($row = spip_fetch_array($listes)) {
     44$id_liste = $row['id_article'] ;       
     45$query="DELETE FROM spip_auteurs_articles WHERE id_auteur='$id_auteur' AND id_article='$id_liste'";
     46$result=spip_query($query);
     47}
     48
     49if(is_array($list)){
     50
     51 // on abonne l'auteur aux listes choisies
     52 while( list(,$val) = each($list) ){
     53               
     54        $query="INSERT INTO spip_auteurs_articles (id_auteur,id_article) VALUES ('$id_auteur','$val')";
     55        $result=spip_query($query);
     56               
     57 }
     58} else { $desabo="oui"; }
     59
     60// fin de l'abo  aux listes
     61
     62 // prendre en compte les extras
    4163
    4264   $extras = bloog_extra_recup_saisie('auteurs');
     
    4466   spip_query("UPDATE spip_auteurs SET extra = '$extras' WHERE cookie_oubli ='$d'");
    4567   spip_query("UPDATE spip_auteurs SET cookie_oubli = '0' WHERE cookie_oubli ='$d'");
    46    
    47    
    48    $extra = get_extra($row['id_auteur'],'auteur');
    49    
     68
     69   // affichage des modifs
     70
     71   $extra = get_extra($id_auteur,'auteur');
     72
    5073   If ($extra['abo'] == 'non')  {
    51    bdebut_html(_T('bloog:desabonnement_valid'));
    52    echo"<h4>"._T('bloog:desabonnement_valid')."</h4>".$row['email']."<br>\n";
     74   bdebut_html(_T('spiplistes:desabonnement_valid'));
     75   echo"<h4>"._T('spiplistes:desabonnement_valid')."</h4>".$mail_abo."<br>\n";
    5376   bfin_html();
    5477   }
    5578   else {
    56    bdebut_html(_T('bloog:abonnement_modifie'));
    57    echo"<h4>"._T('bloog:abonnement_modifie')."</h4><p>"._T('bloog:abonnement_nouveau_format').$extra['abo']."<br>\n";
     79   bdebut_html(_T('spiplistes:abonnement_modifie'));
     80   echo"<h4>"._T('spiplistes:abonnement_modifie')."</h4>" ;
     81
     82
     83
     84   // $message .= _T('spiplistes:mail_format', array('nom_site_spip' => $nom_site_spip))." : ".$GLOBALS['suppl_abo']."\n";
     85        $message = "";
     86
     87        //SELECT des listes de l'abonné
     88        $query = "SELECT * FROM spip_auteurs_articles AS abonnements, spip_articles AS listes WHERE abonnements.id_auteur='$id_auteur' AND abonnements.id_article=listes.id_article AND listes.statut='liste'";
     89                $res = spip_query($query);
     90
     91                 //lister les listes
     92         $nb_listes_abo = spip_num_rows($res);
     93         if($nb_listes_abo>0){
     94                        while($row = spip_fetch_array($res)) {
     95                        $id_article = $row['id_article'] ;
     96                        $query = "SELECT * FROM spip_articles WHERE statut='liste' AND id_article=$id_article";
     97                    $result = spip_query($query);
     98                                if(spip_num_rows($result)>0){
     99                                $row = spip_fetch_array($result);
     100                                $titre = $row['titre'] ;
     101                                $message .= "<li>".$titre."</li>" ;
     102                                }
     103                        }
     104        echo "<ul>".$message."</ul>";
     105        }else{
     106        //echo " vous n'êtes plus abonné aux lettres d'information" ;
     107        }
     108   echo"<p>"._T('spiplistes:abonnement_nouveau_format').$extra['abo']."<br>\n";
    58109   bfin_html();
    59110   }
     
    67118}
    68119
    69 // recuperer le cookie de relance désabonnement
     120// recuperer le cookie de relance désabonnement, et afficher le formulaire de modif
    70121if ($d = addslashes($d) AND ($confirm != 'oui')) {
    71122
    72123        $res = spip_query ("SELECT * FROM spip_auteurs WHERE cookie_oubli='$d' AND statut<>'5poubelle' AND pass<>''");
    73124        if ($row = spip_fetch_array($res)) {
    74 
    75          // Modifier la valeur du champs .
    76 
    77                  
    78          bdebut_html(_T('bloog:abonnement'));
    79          echo "[".$row['nom']."]";
    80                  echo "<h4>"._T('bloog:abonnement')."</h4>"   ;
    81          echo"<form action='abonnement.php3' method='post'>";
    82          echo"<p align='center'>";
    83          bloog_extra_saisie($row['extra'], 'auteurs', 'inscription');
    84          echo"<input type='submit' name='Valider' value='"._T('bloog:abonnement_bouton')."'>";
    85          echo"<input type='hidden' name='d'  value=$d >";
    86          echo"<input type='hidden' name='confirm'  value='oui' >";
    87          echo"</p>";
    88          echo"</form>";
     125             $id_auteur = $row['id_auteur'];
     126                         $nom = $row['nom'];
     127                         $extra_aut = $row['extra'];
     128
     129          //SELECT des listes de l'abonné
     130       
     131                $listes = spip_query ("SELECT * FROM spip_articles WHERE statut = 'liste' OR statut = 'inact'");
     132                        while($row = spip_fetch_array($listes)) {
     133                        $id_liste = $row['id_article'] ;       
     134                        $query = "SELECT * FROM spip_auteurs_articles WHERE id_auteur=$id_auteur AND id_article=$id_liste";
     135                        $res = spip_query($query);
     136                        //lister les listes
     137            while($row2 = spip_fetch_array($res)) {
     138                        $tab_articles[] = $row2['id_article'] ;
     139            }
     140            }   
     141             
     142                 if(!is_array($tab_articles)) { $desabo="oui"; }
     143
     144         // permettre de modifier la valeur des champs d'abo .
     145
     146
     147         bdebut_html(_T('spiplistes:abonnement'));
     148         echo "[$nom]";
     149                 echo "<h4>"._T('spiplistes:abonnement')."</h4>"   ;
     150         echo "<form action='abonnement.php3' method='post'>";
     151         echo "<div style='text-align:left'>";
     152
     153                /***********/
     154
     155
     156            $list = spip_query ("SELECT * FROM spip_articles WHERE statut = 'liste' ");
     157                        $nb_listes = spip_num_rows($list);
     158                        if($nb_listes == 0){
     159                        echo "<fieldset>";
     160                        echo "<legend> Abonnement à la lettre d'information </legend>";
     161                        }
     162                        elseif($nb_listes == 1){
     163                        echo "<fieldset>";
     164                        echo "<legend> Abonnement à la lettre d'information </legend>";
     165                        echo "<ul style='width:350px'>" ;
     166                        while($row2 = spip_fetch_array($list)) {
     167
     168                        echo "<li>" ;
     169                        $id_article = $row2['id_article'] ;
     170                        $titre = $row2['titre'] ;
     171
     172
     173            echo "<div style='float:right'>"."<input type=\"checkbox\" name=\"list[]\" checked=\"checked\" value=\"".$id_article."\" />"."</div><a href='?liste=$id_article'>$titre</a>" ;
     174                        echo "</li>" ;
     175                        }
     176                        echo "</ul>" ;
     177                        }
     178                        else{
     179                       
     180
     181
     182
     183            echo "<fieldset> ";
     184                        echo "<legend> Abonnement aux listes de diffusion </legend>";
     185                        echo "<ul style='width:350px'>" ;
     186                        while($row3 = spip_fetch_array($list)) {
     187
     188                        echo "<li>" ;
     189                        $id_article = $row3['id_article'] ;
     190                        $titre = $row3['titre'] ;
     191                       
     192                        //Gérer les CHECKED
     193                        if ($desabo != "oui"){
     194                         if (in_array ($id_article, $tab_articles)) {
     195                         $checked = "checked=\"checked\"";
     196                         }else{$checked = "";}
     197                         
     198                        }
     199
     200            echo "<div style='float:right'>"."<input type=\"checkbox\" name=\"list[]\" ".$checked."  value=\"".$id_article."\" />"."</div><a href='?liste=$id_article' title='informations sur cette liste'>$titre</a>" ;
     201                        echo "</li>" ;
     202                        }
     203                        echo "</ul>" ;
     204
     205
     206                    } // fin du test nb listes
     207               
     208
     209
     210
     211               /**************/
     212
     213
     214
     215         bloog_extra_saisie($extra_aut, 'auteurs', 'inscription');
     216        echo "<input type='submit' name='Valider' value='"._T('spiplistes:abonnement_bouton')."' />";
     217        echo "<input type='hidden' name='d'  value=$d  />";
     218        echo "<input type='hidden' name='confirm'  value='oui' />";
     219        echo "</fieldset> </div> </form>";
    89220        bfin_html();
    90221
     
    110241                                spip_query("UPDATE spip_auteurs SET cookie_oubli = '$cookie' WHERE email ='$email'");
    111242
    112                                 $message = _T('bloog:abonnement_mail_passcookie', array('nom_site_spip' => $nomsite, 'adresse_site' => $urlsite, 'cookie' => $cookie));
    113                                 if (envoyer_mail($email, "[$nomsite] "._T('bloog:abonnement_titre_mail'), $message))
    114                                         $erreur = _T('bloog:pass_recevoir_mail');
     243                                $message = _T('spiplistes:abonnement_mail_passcookie', array('nom_site_spip' => $nomsite, 'adresse_site' => $urlsite, 'cookie' => $cookie));
     244                                if (envoyer_mail($email, "[$nomsite] "._T('spiplistes:abonnement_titre_mail'), $message))
     245                                        $erreur = _T('spiplistes:pass_recevoir_mail');
    115246                                else
    116247                                        $erreur = _T('pass_erreur_probleme_technique');
     
    126257if($confirm != 'oui'){
    127258        // debut presentation
    128         bdebut_html(_T('bloog:abonnement_change_format'));
    129         echo"["._T('bloog:lettre_d_information')."]";
    130                 echo"<h4>"._T('bloog:abonnement_change_format', array('nom_site_spip' => $nomsite))."</h4>\n";
    131        
    132         echo "<p>";
     259        bdebut_html(_T('spiplistes:abonnement_change_format'));
     260       
     261       
     262          echo "<fieldset> ";
     263        echo "<legend>"._T('spiplistes:lettre_d_information')." </legend>";
     264
     265       
     266        echo"<h4>"._T('spiplistes:abonnement_change_format', array('nom_site_spip' => $nomsite))."</h4>\n";
     267
     268
    133269        if ($erreur)
    134270                echo $erreur;
    135271        else {
    136                 echo _T('bloog:abonnement_texte_mail');
    137 
    138                 echo "<p>";
     272                echo _T('spiplistes:abonnement_texte_mail');
     273
    139274                echo "<form action='".$PHP_SELF."' method='post'>";
    140                 echo "<div align='right'>";
    141                 echo "<input type='text' class='fondo' name='email_desabo' value=''>";
    142                 echo "<input type='hidden' name='desabo' value='oui'>";
    143                 echo "<input type=submit class='fondl' name='oubli' value='OK'></div></form>";
    144 
     275                echo "<div style='text-align:right'>";
     276                echo "<input type='text' class='fondo' name='email_desabo' value='' />";
     277                echo "<input type='hidden' name='desabo' value='oui' />";
     278                echo "<input type='submit' class='fondl' name='oubli' value='OK' /></div></form>";
    145279        }
     280
     281        echo "</fieldset> ";
    146282      bfin_html();
    147283}
     
    164300        @Header("Content-Type: text/html; charset=$charset");
    165301
    166         echo "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n<head>\n<html>\n<title>[$nom_site_spip] $titre</title>\n";
    167         echo '<meta http-equiv="Content-Type" content="text/html; charset='.$charset.'">';
     302        echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">';
     303        echo '<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">';
     304        echo "<head>";
     305        echo "<title>[$nom_site_spip] $titre</title>";
     306        echo "<meta http-equiv='Content-Type' content='text/html; charset=".$charset."' />";
    168307        echo '
    169      
    170       <style>
     308
     309      <style type="text/css">
    171310<!--
    172311
     312body {
     313        color:#000000;
     314        background-color:#F5F5F5;
     315}
     316
     317
    173318.cadre {
    174         border: 1px #000000 solid;
     319        /*border: 1px #000000 solid;*/
    175320        background-color:#FFFFFF;
    176321        text-align: justify;
     
    203348</style>
    204349  ';
    205      
    206         echo "</head><body text='#000000' bgcolor='#e4e4e4' ";
     350
     351        echo "</head><body ";
    207352        if ($spip_lang_rtl)
    208353                echo " dir='rtl'";
    209         echo "><div class='bloc'><h1>".$nom_site_spip."</h1><div class='cadre' align='center' >";
     354        echo "><div class='bloc'><h1>".$nom_site_spip."</h1><div class='cadre'>";
    210355}
    211356
     
    213358 $urlsite=lire_meta("adresse_site");
    214359
    215         echo "</div><p><a href='".$urlsite."'>"._T('pass_retour_public')."</a></p><br><div class='cdt'>"._T('bloog:desabonnement_cdt')."</div></div></body></html>\n";
     360        echo "</div><p><a href='".$urlsite."'>"._T('pass_retour_public')."</a></p><br /><div class='cdt'>"._T('spiplistes:abonnement_cdt')."</div></div></body></html>\n";
    216361
    217362}
  • _squelettes_/bloog/ecrire/mes_options.php3

    r17 r1168  
    11<?php
    22
     3$dossier_squelettes = "_template" ;
    34
    4 $dossier_squelettes = "_template" ;
     5//$type_urls= 'propres2' ;
    56
    67//
     
    89//
    910
    10 
    1111$champs_extra = true;
    1212
    1313        $GLOBALS['champs_extra'] = Array (
    1414                'auteurs' => Array (
    15                                 "abo" => "radio|brut|Abonnement &agrave; lettre d'information|Format Html,Format texte,Ne pas recevoir de courrier|html,texte,non"
     15                        "abo" => "radio|brut|Format|Format Html,Format texte,se désabonner|html,texte,non"
     16
     17
     18                        ),
     19                       
     20                'articles' => Array (
     21                                "squelette" => "bloc|propre|Bibliographie",
    1622
    1723                        )
     
    2430                'inscription' => 'abo',
    2531                'fiche_auteur' => 'abo'
     32                ),
     33'articles' => Array (
     34                '0' => 'squelette',
     35                'tous' => '',
     36               
    2637                )
     38                               
    2739);
    2840
    2941
    30 /******************************************************************************************/
    31 /* La bloOgletter est un système de gestion de listes d'information par email pour SPIP   */
    32 /* Copyright (C) 2004 Vincent CARON  v.caron<at>laposte.net , http://bloog.net            */
    33 /*                                                                                        */
    34 /* Ce programme est libre, vous pouvez le redistribuer et/ou le modifier selon les termes */
    35 /* de la Licence Publique Générale GNU publiée par la Free Software Foundation            */
    36 /* (version 2).                                                                           */
    37 /*                                                                                        */
    38 /* Ce programme est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE,       */
    39 /* ni explicite ni implicite, y compris les garanties de commercialisation ou             */
    40 /* d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique Générale GNU  */
    41 /* pour plus de détails.                                                                  */
    42 /*                                                                                        */
    43 /* Vous devez avoir reçu une copie de la Licence Publique Générale GNU                    */
    44 /* en même temps que ce programme ; si ce n'est pas le cas, écrivez à la                  */
    45 /* Free Software Foundation,                                                              */
    46 /* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, États-Unis.                   */
    47 /******************************************************************************************/
    48 
    49 
    50 //
    51 // Definition de fonctions bloog
    52 //
    53 
    54 
    55 
    56 // Récupération des extra dans la base
    57 // Retourne un tableau associatif.
    58 // NB on retourne extra
    59 // sous forme de tableau associatif
    60 // Merci a beatnick
    61 
    62 function get_extra ($id, $objet) {
    63         if(!$id) return false;
    64         // On construit qqch qui ressemble à "SELECT extra FROM spip_articles WHERE id_article=$id_article"
    65         $query = "SELECT statut, extra FROM spip_".$objet."s";
    66         $query .= " WHERE id_".$objet."=".$id;
    67         $res = spip_query($query);
    68         $cells = spip_fetch_array($res);
    69        
    70         if(!$cells["extra"]) return false ;
    71         $extra = unserialize ($cells["extra"]);
    72         return $extra;
    73 }
    74 
    75 // Enregistrement des extras
    76 // On testera avec bonheur la valeur de retour
    77 // de cette fonction lors de son appel
    78 function set_extra ($id, $extra, $objet) {
    79         if(!$id) return false;
    80         $extra = addslashes(serialize($extra));
    81         // On construit qqch qui ressemble à "UPDATE spip_articles SET extra='$extra' WHERE id_article=$id_article"
    82         $query = "UPDATE spip_".$objet."s";
    83         $query .= " SET extra='$extra' ";
    84         $query .= " WHERE id_".$objet."=".$id;
    85         return spip_query($query);
    86 }
    87 
    88 
    89 
    90 // a partir de la liste des champs, generer la liste des input
    91 function bloog_extra_saisie($extra, $type, $ensemble='') {
    92         $extra = unserialize($extra);
    93 
    94         // quels sont les extras de ce type d'objet
    95         if (!$champs = $GLOBALS['champs_extra'][$type])
    96                 $champs = Array();
    97 
    98         // prendre en compte, eventuellement, les champs presents dans la base
    99         // mais oublies dans mes_options.
    100         if (is_array($extra))
    101                 while (list($key,) = each($extra))
    102                         if (!$champs[$key])
    103                                 $champs[$key] = "masque||($key?)";
    104 
    105         // quels sont les extras proposes...
    106         // ... si l'ensemble est connu
    107         if ($ensemble && isset($GLOBALS['champs_extra_proposes'][$type][$ensemble]))
    108                 $champs_proposes = explode('|', $GLOBALS['champs_extra_proposes'][$type][$ensemble]);
    109         // ... sinon, les champs proposes par defaut
    110         else if (isset($GLOBALS['champs_extra_proposes'][$type]['tous'])) {
    111                 $champs_proposes = explode('|', $GLOBALS['champs_extra_proposes'][$type]['tous']);
    112         }
    113 
    114         // sinon tous les champs extra du type
    115         else {
    116                 $champs_proposes =  Array();
    117                 reset($champs);
    118                 while (list($ch, ) = each($champs)) $champs_proposes[] = $ch;
    119         }
    120 
    121         // bug explode
    122         if($champs_proposes == explode('|', '')) $champs_proposes = Array();
    123 
    124         // maintenant, on affiche les formulaires pour les champs renseignes dans $extra
    125         // et pour les champs proposes
    126         reset($champs_proposes);
    127         while (list(, $champ) = each($champs_proposes)) {
    128                 $desc = $champs[$champ];
    129                 list($form, $filtre, $prettyname, $choix, $valeurs) = explode("|", $desc);
    130 
    131                 if (!$prettyname) $prettyname = ucfirst($champ);
    132                 $affiche .= "<b>$prettyname&nbsp;:</b><br />";
    133 
    134                 switch($form) {
    135 
    136                         case "case":
    137                         case "checkbox":
    138                                 $affiche = ereg_replace("<br />$", "&nbsp;", $affiche);
    139                                 $affiche .= "<INPUT TYPE='checkbox' NAME='suppl_$champ'";
    140                                 if ($extra[$champ] == 'true')
    141                                         $affiche .= " CHECKED ";
    142                                 break;
    143 
    144                         case "list":
    145                         case "liste":
    146                         case "select":
    147                                 $choix = explode(",",$choix);
    148                                 if (!is_array($choix)) {
    149                                         $affiche .= "Pas de choix d&eacute;finis.\n";
    150                                         break;
    151                                 }
    152 
    153                                 // prendre en compte les valeurs des champs
    154                                 // si elles sont renseignees
    155                                 $valeurs = explode(",",$valeurs);
    156                                 if($valeurs == explode(",",""))
    157                                         $valeurs = $choix ;
    158 
    159                                 $affiche .= "<SELECT NAME='suppl_$champ' ";
    160                                 $affiche .= "CLASS='forml'>\n";
    161                                 $i = 0 ;
    162                                 while (list(, $choix_) = each($choix)) {
    163                                         $val = $valeurs[$i] ;
    164                                         $affiche .= "<OPTION VALUE=\"$val\"";
    165                                         if ($val == entites_html($extra[$champ]))
    166                                                 $affiche .= " SELECTED";
    167                                         $affiche .= ">$choix_</OPTION>\n";
    168                                         $i++;
    169                                 }
    170                                 $affiche .= "</SELECT>";
    171                                 break;
    172 
    173                         case "radio":
    174                                 $choix = explode(",",$choix);
    175                                 if (!is_array($choix)) {
    176                                         $affiche .= "Pas de choix d&eacute;finis.\n";
    177                                         break;
    178                                 }
    179                                 $valeurs = explode(",",$valeurs);
    180                                 if($valeurs == explode(",",""))
    181                                         $valeurs = $choix ;
    182 
    183                                 $i=0;
    184                                 while (list(, $choix_) = each($choix)) {
    185                                         $affiche .= "<INPUT TYPE='radio' NAME='suppl_$champ' ";
    186                                         $val = $valeurs[$i] ;
    187                                         if (entites_html($extra["$champ"])== $val)
    188                                                 $affiche .= " CHECKED";
    189 
    190                                         // premiere valeur par defaut
    191                                         if (!$extra["$champ"] AND $i == 0)
    192                                                 $affiche .= " CHECKED";
    193 
    194                                         $affiche .= " VALUE='$val'>$choix_</INPUT><br>";
    195                                         $i++;
    196                                 }
    197                                 break;
    198 
    199                         // A refaire car on a pas besoin de renvoyer comme pour checkbox
    200                         // les cases non cochees
    201                         case "multiple":
    202                                 $choix = explode(",",$choix);
    203                                 if (!is_array($choix)) {
    204                                         $affiche .= "Pas de choix d&eacute;finis.\n";
    205                                         break; }
    206                                 for ($i=0; $i < count($choix); $i++) {
    207                                         $affiche .= "<INPUT TYPE='checkbox' NAME='suppl_$champ$i'";
    208                                         if (entites_html($extra["$champ"][$i])=="on")
    209                                                 $affiche .= " CHECKED";
    210                                         $affiche .= ">\n";
    211                                         $affiche .= $choix[$i];
    212                                         $affiche .= "</INPUT>\n";
    213                                 }
    214                                 break;
    215 
    216                         case "bloc":
    217                         case "block":
    218                                 $affiche .= "<TEXTAREA NAME='suppl_$champ' CLASS='forml' ROWS='5' COLS='40'>".entites_html($extra[$champ])."</TEXTAREA>\n";
    219                                 break;
    220 
    221                         case "masque":
    222                                 $affiche .= "<font color='#555555'>".interdire_scripts($extra[$champ])."</font>\n";
    223                                 break;
    224 
    225                         case "ligne":
    226                         case "line":
    227                         default:
    228                                 $affiche .= "<INPUT TYPE='text' NAME='suppl_$champ' CLASS='forml'\n";
    229                                 $affiche .= " VALUE=\"".entites_html($extra[$champ])."\" SIZE='40'>\n";
    230                                 break;
    231                 }
    232 
    233                 $affiche .= "<p>\n";
    234         }
    235 
    236         if ($affiche) {
    237                 echo" <div align='left'>";
    238                 echo $affiche;
    239                 echo"</div>";
    240 
    241         }
    242 }
    243 
    244 // recupere les valeurs postees pour reconstituer l'extra
    245 function bloog_extra_recup_saisie($type) {
    246         $champs = $GLOBALS['champs_extra'][$type];
    247         if (is_array($champs)) {
    248                 $extra = Array();
    249                 while(list($champ,)=each($champs)) {
    250                         list($style, $filtre, , $choix,) = explode("|", $GLOBALS['champs_extra'][$type][$champ]);
    251                         list(, $filtre) = explode(",", $filtre);
    252                         switch ($style) {
    253                         case "multiple":
    254                                 $choix =  explode(",", $choix);
    255                                 $extra["$champ"] = array();
    256                                 for ($i=0; $i < count($choix); $i++) {
    257                                         if ($filtre && function_exists($filtre))
    258                                                  $extra["$champ"][$i] =
    259                                                         $filtre($GLOBALS["suppl_$champ$i"]);
    260                                         else
    261                                                 $extra["$champ"][$i] = $GLOBALS["suppl_$champ$i"];
    262                                 }
    263                                 break;
    264 
    265                         case 'case':
    266                         case 'checkbox':
    267                                 if ($GLOBALS["suppl_$champ"] == 'on')
    268                                         $GLOBALS["suppl_$champ"] = 'true';
    269                                 else
    270                                         $GLOBALS["suppl_$champ"] = 'false';
    271 
    272                         default:
    273                                 if ($filtre && function_exists($filtre))
    274                                 $extra["$champ"]=$filtre($GLOBALS["suppl_$champ"]);
    275                                 else $extra["$champ"]=$GLOBALS["suppl_$champ"];
    276                                 break;
    277                         }
    278                 }
    279                 return serialize($extra);
    280         } else
    281                 return '';
    282 }
    283 
    284 function bloog_onglets($rubrique, $onglet){
    285         global $id_auteur, $connect_id_auteur, $connect_statut, $statut_auteur, $options;
    286 
    287         debut_onglet();
    288 
    289        
    290 
    291         if ($rubrique == "administration"){
    292                 onglet("parametrage", "bloog_parametrage.php3", "parametrage", $onglet, "base-24.gif");
    293                 onglet("couleurs", "voircouleurs.php3", "couleurs", $onglet, "Palette-24.gif");
    294                 onglet("CSS", "voircss.php3", "CSS", $onglet, "cache-24.gif");
    295                 onglet("Langue", "voir_langues.php3", "messagerie", $onglet, "cache-24.gif");
    296                 }
    297                
    298                 if ($rubrique == "messagerie"){
    299                 onglet("Historique des envois", "bloogletter.php3?mode=historique", "messagerie", $onglet, "stock_mail_hist.gif");
    300                 onglet("Nouveau courrier", "bloogletter.php3?mode=courrier_edit&new=oui&type=nl", "messagerie", $onglet, "stock_mail_send.gif");
    301                 }
    302 
    303        
    304        
    305 
    306         fin_onglet();
    307 }
     42include('options_spip_listes.php3');
    30843
    30944?>
  • _squelettes_/bloog/patron.php3

    r17 r1168  
    11<?php
    2 /******************************************************************************************/
    3 /* La bloOgletter est un système de gestion de listes d'information par email pour SPIP   */
    4 /* Copyright (C) 2004 Vincent CARON  v.caron<at>laposte.net , http://bloog.net            */
    5 /*                                                                                        */
    6 /* Ce programme est libre, vous pouvez le redistribuer et/ou le modifier selon les termes */
    7 /* de la Licence Publique Générale GNU publiée par la Free Software Foundation            */
    8 /* (version 2).                                                                           */
    9 /*                                                                                        */
    10 /* Ce programme est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE,       */
    11 /* ni explicite ni implicite, y compris les garanties de commercialisation ou             */
    12 /* d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique Générale GNU  */
    13 /* pour plus de détails.                                                                  */
    14 /*                                                                                        */
    15 /* Vous devez avoir reçu une copie de la Licence Publique Générale GNU                    */
    16 /* en même temps que ce programme ; si ce n'est pas le cas, écrivez à la                  */
    17 /* Free Software Foundation,                                                              */
    18 /* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, États-Unis.                   */
    19 /******************************************************************************************/
    20 
    212
    223if (!$patron) $patron = $_GET["patron"] ;
     4if (!$date) $date = $_GET["date"] ;
    235
    24 $fond = "squelettes_bloogletter/$patron";
     6$contexte_inclus['date']= $date ;
     7
     8if($format == "texte") {header("Location: patron-texte.php3?patron=$patron&date=$date");exit();}
     9$fond = "patrons/$patron";
    2510$delais = 1;
     11$flag_preserver=true ;
    2612
    2713include ("inc-public.php3");
Note: See TracChangeset for help on using the changeset viewer.