Changeset 31637 in spip-zone


Ignore:
Timestamp:
Sep 18, 2009, 11:23:52 AM (10 years ago)
Author:
kent1@…
Message:

les ereg_replace deviennent preg_replace

On passe par les apis SPIP pour mettre à jour les tables (maj_tables)

On indente correctement le code

Location:
_plugins_/inscription2/inscription2_2_0
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/inscription2/inscription2_2_0/base/inscription2.php

    r28308 r31637  
    22function inscription2_declarer_tables_interfaces($interface){
    33        $interface['tables_jointures']['spip_auteurs'][] = 'auteurs_elargis';
    4        
     4
    55        //-- Table des tables ----------------------------------------------------
    66        $interface['table_des_tables']['auteurs_elargis']='auteurs_elargis';
     
    1111function inscription2_declarer_tables_principales($tables_principales){
    1212        $exceptions_des_champs_auteurs_elargis = pipeline('i2_exceptions_des_champs_auteurs_elargis',array());
    13        
     13
    1414        $spip_auteurs_elargis['id_auteur'] = "bigint(21) NOT NULL";
    15                
     15
    1616        if(function_exists('lire_config')){
    1717                if((lire_config('inscription2') == '') OR !is_array(unserialize($GLOBALS['meta']['inscription2']))){
     
    2121                }
    2222                foreach(lire_config('inscription2',array()) as $cle => $val) {
    23                         $cle = ereg_replace("_(obligatoire|fiche|table).*", "", $cle);
     23                        $cle = preg_replace("/_(obligatoire|fiche|table).*/", "", $cle);
    2424                        if($val!='' and !in_array($cle,$exceptions_des_champs_auteurs_elargis) and !ereg("^(categories|zone|newsletter).*$", $cle) ){
    2525                                if($cle == 'naissance' )
     
    3838        $spip_auteurs_elargis_key = array(
    3939                "PRIMARY KEY" => "id_auteur");
    40        
     40
    4141        $tables_principales['spip_auteurs_elargis'] = array(
    4242                'field' => &$spip_auteurs_elargis,
    4343                'key' => &$spip_auteurs_elargis_key);
    44                
    45 /*
    46  * A partir de Inscription 2 (0.70)
    47  * on utilise le plugin geographie pour gerer les pays.
    48  * on ne le rend pas obligatoire en creant la table spip_geo_pays
    49  * si le plugin n'est pas installe
    50  */
     44
     45        /*
     46        * A partir de Inscription 2 (0.70)
     47        * on utilise le plugin geographie pour gerer les pays.
     48        * on ne le rend pas obligatoire en creant la table spip_geo_pays
     49        * si le plugin n'est pas installe
     50        */
    5151
    5252        /* penser a modifier si le plugin geographie modifie cette table */
     
    6161                'field'=>&$spip_geo_pays,
    6262                'key'=>$spip_geo_pays_key);
    63        
     63
    6464        return $tables_principales;
    6565}
  • _plugins_/inscription2/inscription2_2_0/base/inscription2_installer.php

    r29482 r31637  
    11<?php
     2/**
     3 * Plugin Inscription2 pour SPIP
     4 * Licence GPL v3
     5 *
     6 */
    27
    38$GLOBALS['inscription2_version'] = 0.71;
    49
     10/**
     11 * Fonction d'installation et de mise à jour du plugin
     12 * @return
     13 */
    514function inscription2_upgrade(){
    615        spip_log('INSCRIPTION 2 : installation','inscription2');
    716        $exceptions_des_champs_auteurs_elargis = pipeline('i2_exceptions_des_champs_auteurs_elargis',array());
    817        include_spip('cfg_options');
    9        
     18
    1019        //On force le fait d accepter les visiteurs
    1120        $accepter_visiteurs = $GLOBALS['meta']['accepter_visiteurs'];
     
    1322                ecrire_meta("accepter_visiteurs", "oui");
    1423        }
    15        
     24
    1625        $version_base = $GLOBALS['inscription2_version'];
    1726        $current_version = 0.0;
     
    1928        //insertion des infos par defaut
    2029        $inscription2_meta = $GLOBALS['meta']['inscription2'];
    21        
     30
    2231        //Certaines montées de version ont oublié de corriger la meta de I2
    2332        //si ce n'est pas un array alors il faut reconfigurer la meta
     
    3342                && (($current_version = $GLOBALS['meta']['inscription2_version'])==$version_base))
    3443        return;
    35                
     44
    3645        //Si c est une nouvelle installation toute fraiche
    3746        if ($current_version==0.0){
    3847                //inclusion des fonctions pour les requetes sql
    3948                include_spip('base/abstract_sql');
    40                
     49
    4150                // à passer en sous plugin
    4251
     
    7079                        );
    7180                }
    72        
     81
    7382                //inserer les auteurs qui existent deja dans la table spip_auteurs en non pas dans la table elargis
    7483                $s = sql_select("a.id_auteur","spip_auteurs a left join spip_auteurs_elargis b on a.id_auteur=b.id_auteur","b.id_auteur is null");
     
    7685                        sql_insertq("spip_auteurs_elargis",array('id_auteur' => $q['id_auteur']));
    7786                }
    78                
     87
    7988                /** Inscription 2 (0.70)
    8089                 * Les pays sont maintenant pris dans le plugin Geographie
     
    95104                $table_pays = "spip_geo_pays";
    96105                $descpays = sql_showtable($table_pays, '', false);
    97                
     106
    98107                $descpays_old = sql_showtable('spip_pays', '', false);
    99108                if(isset($descpays_old['field'])){
    100109                        sql_drop_table("spip_pays");
    101110                }
    102                
     111
    103112                if(!isset($descpays['field']['pays'])){
    104                         spip_query("CREATE TABLE spip_geo_pays (id_pays SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY, nom varchar(255) NOT NULL );");
     113                        sql_create("spip_geo_pays",
     114                                array("id_pays"=> "SMALLINT NOT NULL AUTO_INCREMENT","nom" => "varchar(255) NOT NULL"),
     115                                array('PRIMARY KEY' => "id_pays")
     116                        );
    105117                        spip_query("INSERT INTO spip_geo_pays (nom) VALUES (\"".join('"), ("',$liste_pays)."\")");
    106118                }
    107                
     119
    108120                echo "Inscription2 update @ 0.6<br/>Spip_pays devient spip_geo_pays homogeneite avec spip_geo";
    109121                ecrire_meta('inscription2_version',$current_version=0.6);
     
    114126                $table_pays = "spip_geo_pays";
    115127                $descpays = sql_showtable($table_pays, '', false);
    116                
     128
    117129                if((isset($descpays['field']['nom'])) && (!isset($descpays['field']['pays']))){
    118130                        sql_alter("TABLE spip_geo_pays CHANGE nom pays varchar(255) NOT NULL");
    119131                }
    120                
     132
    121133                echo "Inscription2 update @ 0.61<br/>On retablit le champs pays sur la table pays et pas nom";
    122134                ecrire_meta('inscription2_version',$current_version=0.61);
     
    132144                ecrire_meta('inscription2_version',$current_version=0.65);
    133145        }
    134        
     146
    135147        if ($current_version<0.71){
    136148                /*
     
    142154                ecrire_meta('inscription2_version',$current_version=0.71);
    143155        }
    144        
     156
    145157        ecrire_metas();
    146        
     158
    147159        // Creation de la table et des champs
    148160        $verifier_tables = charger_fonction('inscription2_verifier_tables','inc');
     
    151163
    152164
    153 //supprime les donnees depuis la table spip_auteurs_elargis
     165/**
     166 * Fonction de suppession du plugin
     167 *
     168 * Supprime les donnees de la table spip_auteurs_elargis
     169 * Supprime la table si plus nécessaire
     170 * Supprime la table des pays si nécessaire
     171 */
    154172function inscription2_vider_tables() {
    155173        $exceptions_des_champs_auteurs_elargis = pipeline('i2_exceptions_des_champs_auteurs_elargis',array());
    156174        include_spip('cfg_options');
    157175        include_spip('base/abstract_sql');
    158        
     176
    159177        //supprime la table spip_auteurs_elargis
    160178        if (is_array(lire_config('inscription2'))){
     
    201219                include_spip('inc/charset');
    202220                foreach($GLOBALS['liste_pays'] as $k=>$p)
    203                         sql_insertq('spip_geo_pays',array('id_pays'=>$k,'nom'=>unicode2charset(html2unicode($p))));             
    204         }
    205 }
    206 
    207 /*
     221                        sql_insertq('spip_geo_pays',array('id_pays'=>$k,'nom'=>unicode2charset(html2unicode($p))));
     222        }
     223}
     224
     225/**
    208226 * Surcharge de l'installe de SPIP par defaut
    209227 * car inscription2 gere une seconde meta pour tester son installation correcte.
  • _plugins_/inscription2/inscription2_2_0/exec/inscription2_adherents.php

    r31346 r31637  
    22
    33/**
    4 * Plugin Inscription2
     4* Plugin Inscription2 pour SPIP
    55*
    6 * Copyright (c) 2007-2008
     6* Copyright (c) 2007-2009 - Licence GPL v3
    77* Sergio and co
    8 * Ce programme est un logiciel libre distribue sous licence GNU/GPL.
    9 * Pour plus de details voir le fichier COPYING.txt.
    108*
    119**/
  • _plugins_/inscription2/inscription2_2_0/formulaires/config_inscription2.html

    r31527 r31637  
    1313                <fieldset>
    1414                        <ul>
    15                         <li>
    16                                                 <div class="explication">
    17                                                                         <p><:inscription2:info_defaut_desc:></p>
    18                                                                         <small id="legend">
    19                                                                                 <strong><:inscription2:form:></strong><:inscription2:form_expl:><br />
    20                                                                                 <strong><span style="color:red">*</span></strong><:inscription2:form_oblig_expl:><br />
    21                                                                                 <strong><:inscription2:fiche_mod:></strong><:inscription2:fiche_mod_expl:><br />
    22                                                                                 <strong><:inscription2:fiche:></strong><:inscription2:fiche_expl:><br />
    23                                                                                 <strong><:inscription2:table:></strong><:inscription2:table_expl:><br />
    24                                                                         </small>
    25                                                 </div>
    26                          </li>
    27                                                        
     15                                <li>
     16                                        <div class="explication">
     17                                                <p><:inscription2:info_defaut_desc:></p>
     18                                                <small id="legend">
     19                                                        <strong><:inscription2:form:></strong><:inscription2:form_expl:><br />
     20                                                        <strong><span style="color:red">*</span></strong><:inscription2:form_oblig_expl:><br />
     21                                                        <strong><:inscription2:fiche_mod:></strong><:inscription2:fiche_mod_expl:><br />
     22                                                        <strong><:inscription2:fiche:></strong><:inscription2:fiche_expl:><br />
     23                                                        <strong><:inscription2:table:></strong><:inscription2:table_expl:><br />
     24                                                </small>
     25                                        </div>
     26                                </li>
     27
    2828                                <li class="fieldset">
    2929                                        <fieldset>
     
    105105                                </li>
    106106
    107                 [(#REM) ------------------------ INFORMATIONS PERSONNELLES? ------------------------ ]
    108                 <INCLURE{fond=fonds/inscription2_infos_persos}>
    109 
    110                 [(#REM) ------------------------ INFORMATIONS PROFESSIONNELLES? ------------------------ ]
    111                 <INCLURE{fond=fonds/inscription2_infos_pros}>
    112 
    113                 [(#REM) ------------------------ GREFFONS
    114                     geomap
    115                     echoppe
    116                     spiplistes
    117                     association
    118                     accesrestreint
    119                     abonnement
    120                     ...
    121                 ------------------------ ]
    122                 #PIPELINE{i2_cfg_form}
    123 
    124                 [(#REM) ------------------------ OPTIONS DES AUTEURS ------------------------ ]
    125                 <li>
    126                                                 <div class="explication">
    127                                                                         <p><:inscription2:Autres_informations:></p>
    128                                                                
    129                                                 </div>
    130                          </li>
    131                        
    132                 <li class="fieldset" id="option">
    133                         <fieldset>
    134                         <h3 class="legend"><:inscription2:info_gener:></h3>
    135                         <ul>
     107                                [(#REM) ------------------------ INFORMATIONS PERSONNELLES? ------------------------ ]
     108                                <INCLURE{fond=fonds/inscription2_infos_persos}>
     109
     110                                [(#REM) ------------------------ INFORMATIONS PROFESSIONNELLES? ------------------------ ]
     111                                <INCLURE{fond=fonds/inscription2_infos_pros}>
     112
     113                                [(#REM) ------------------------ GREFFONS
     114                                    geomap
     115                                    echoppe
     116                                    spiplistes
     117                                    association
     118                                    accesrestreint
     119                                    abonnement
     120                                    ...
     121                                ------------------------ ]
     122                                #PIPELINE{i2_cfg_form}
     123
     124                                [(#REM) ------------------------ OPTIONS DES AUTEURS ------------------------ ]
    136125                                <li>
    137                                         <p class="explication">
    138                                                 <:inscription2:info_gener_desc:>
    139                                         </p>
    140                                 </li>
    141 
    142                                 [(#SAISIE{case,divers}
    143                                         {label=<:inscription2:publication:>}
    144                                         {explication=<:inscription2:exp_publication:>})]
    145 
    146                         </ul>
    147                         </fieldset>
    148                 </li>
    149 
    150                 <li class="fieldset">
    151                         <fieldset>
    152                         <h3 class="legend"><:inscription2:info_internes:></h3>
    153                         <ul>
    154                                 <li>
    155                                         <p class="explication">
    156                                                 <:inscription2:info_internes_desc:>
    157                                         </p>
    158                                 </li>
    159 
    160                                 [(#SAISIE{case,divers}
    161                                         {label=<:inscription2:divers:>}
    162                                         {explication=<:inscription2:exp_divers:>})]
    163 
    164                                 <li>
    165                                         <label><:inscription2:statut:></label>
    166                                         <p class="explication"><:inscription2:exp_statut:></p>
    167                                         <select name="statut_nouveau" id="statut_nouveau">
    168                                                 <option value='6forum' [selected="(#ENV{statut_nouveau}|=={6forum}|oui)selected"]><:inscription2:visiteur:></option>
    169                                                 <option value='1comite' [selected="(#ENV{statut_nouveau}|=={1comite}|oui)selected"]><:inscription2:auteur:></option>
    170                                         </select>
    171                                 </li>
    172 
    173                                 [(#SAISIE{case,creation}
    174                                         {label=<:inscription2:creation:>})]
    175 
    176                                 <li>
    177                                         <label><:inscription2:statut_rel:></label>
    178                                         <p class="explication"><:inscription2:exp_statut_rel:></p>
    179                                         <input type="checkbox" name="statut_int" onclick="showhide(this, '#statut_interne')" [checked="(#ENV{statut_int}?{checked})"] id="statut_int" />
    180                                         <input type="text" name="statut_interne" id="statut_interne" style="[(#ENV{statut_int}|=={on}|?{display: block;, display:none;})]" value="#ENV{statut_interne}" />
    181                                 </li>
    182                         </ul>
    183                         </fieldset>
    184                 </li>
     126                                        <div class="explication">
     127                                                <p><:inscription2:autres_informations:></p>
     128                                        </div>
     129                                </li>
     130
     131                                <li class="fieldset" id="option">
     132                                        <fieldset>
     133                                        <h3 class="legend"><:inscription2:info_gener:></h3>
     134                                        <ul>
     135                                                <li>
     136                                                        <p class="explication">
     137                                                                <:inscription2:info_gener_desc:>
     138                                                        </p>
     139                                                </li>
     140
     141                                                [(#SAISIE{case,divers}
     142                                                        {label=<:inscription2:publication:>}
     143                                                        {explication=<:inscription2:exp_publication:>})]
     144
     145                                        </ul>
     146                                        </fieldset>
     147                                </li>
     148
     149                                <li class="fieldset">
     150                                        <fieldset>
     151                                        <h3 class="legend"><:inscription2:info_internes:></h3>
     152                                        <ul>
     153                                                <li>
     154                                                        <p class="explication">
     155                                                                <:inscription2:info_internes_desc:>
     156                                                        </p>
     157                                                </li>
     158
     159                                                [(#SAISIE{case,divers}
     160                                                        {label=<:inscription2:divers:>}
     161                                                        {explication=<:inscription2:exp_divers:>})]
     162
     163                                                <li>
     164                                                        <label><:inscription2:statut:></label>
     165                                                        <p class="explication"><:inscription2:exp_statut:></p>
     166                                                        <select name="statut_nouveau" id="statut_nouveau">
     167                                                                <option value='6forum' [selected="(#ENV{statut_nouveau}|=={6forum}|oui)selected"]><:inscription2:visiteur:></option>
     168                                                                <option value='1comite' [selected="(#ENV{statut_nouveau}|=={1comite}|oui)selected"]><:inscription2:auteur:></option>
     169                                                        </select>
     170                                                </li>
     171
     172                                                [(#SAISIE{case,creation}
     173                                                        {label=<:inscription2:creation:>})]
     174
     175                                                <li>
     176                                                        <label><:inscription2:statut_rel:></label>
     177                                                        <p class="explication"><:inscription2:exp_statut_rel:></p>
     178                                                        <input type="checkbox" name="statut_int" onclick="showhide(this, '#statut_interne')" [checked="(#ENV{statut_int}?{checked})"] id="statut_int" />
     179                                                        <input type="text" name="statut_interne" id="statut_interne" style="[(#ENV{statut_int}|=={on}|?{display: block;, display:none;})]" value="#ENV{statut_interne}" />
     180                                                </li>
     181                                        </ul>
     182                                        </fieldset>
     183                                </li>
    185184                                <li class="fieldset">
    186185                                        <fieldset>
     
    200199                                        </fieldset>
    201200                                </li>
    202                
    203         </ul>
    204         <p class="boutons">
    205                 <input type="submit" name="_cfg_ok" class="submit" value="<:valider:>" />
    206                 <input type="submit" name="_cfg_delete" class="reset" value="<:effacer:>" />
    207         </p>
     201                        </ul>
     202                        <p class="boutons">
     203                                <input type="submit" name="_cfg_ok" class="submit" value="<:valider:>" />
     204                                <input type="submit" name="_cfg_delete" class="reset" value="<:effacer:>" />
     205                        </p>
    208206                </fieldset>
    209207        </div>
  • _plugins_/inscription2/inscription2_2_0/inc/inscription2_compat_php4.php

    r26230 r31637  
    11<?php
    2 /**
     2/**
     3 * Plugin Inscription2 pour SPIP
     4 * Licence GPL v3
     5 *
    36 * Fichier de retrocompatibilité pour php4
    47 */
    58
    6 /* 
     9/**
    710 * Calcul de l'intersection de deux tableaux
    811 * Emule la fonction pour php <5.1
    9  * 
     12 *
    1013 * @author Rod Byrnes
    1114 * @see http://fr.php.net/manual/fr/function.array-intersect-key.php#74956
     
    1316
    1417if (!function_exists('array_intersect_key')) {
    15   function array_intersect_key($isec, $keys) {
    16     $argc = func_num_args();
    17     if ($argc > 2)
    18     {
    19       for ($i = 1; !empty($isec) && $i < $argc; $i++)
    20       {
    21         $arr = func_get_arg($i);
    22         foreach (array_keys($isec) as $key)
    23         {
    24           if (!isset($arr[$key]))
    25           {
    26             unset($isec[$key]);
    27           }
    28         }
    29       }
    30       return $isec;
    31     }
    32     else
    33     {
    34       $res = array();
    35       foreach (array_keys($isec) as $key)
    36       {
    37         if (isset($keys[$key]))
    38         {
    39           $res[$key] = $isec[$key];
    40         }
    41       }
    42       return $res;
    43     }
    44   }
     18        function array_intersect_key($isec, $keys) {
     19                $argc = func_num_args();
     20                if ($argc > 2){
     21                        for ($i = 1; !empty($isec) && $i < $argc; $i++){
     22                                $arr = func_get_arg($i);
     23                                foreach (array_keys($isec) as $key){
     24                                        if (!isset($arr[$key])){
     25                                                unset($isec[$key]);
     26                                        }
     27                                }
     28                        }
     29                        return $isec;
     30                }
     31                else{
     32                        $res = array();
     33                        foreach (array_keys($isec) as $key){
     34                                if (isset($keys[$key])){
     35                                        $res[$key] = $isec[$key];
     36                                }
     37                        }
     38                        return $res;
     39                }
     40        }
    4541}
    4642
    47 /* 
     43/**
    4844 * Création d'un tableau à partir de deux autres tableaux
    4945 * Requis pour array_fill_keys
     
    5248 * @see http://fr2.php.net/manual/fr/function.array-combine.php#82244
    5349 */
    54  
     50
    5551if (!function_exists('array_combine')) {
    56     function array_combine($arr1, $arr2) {
    57         $out = array();
    58        
    59         $arr1 = array_values($arr1);
    60         $arr2 = array_values($arr2);
    61        
    62         foreach($arr1 as $key1 => $value1) {
    63             $out[(string)$value1] = $arr2[$key1];
    64         }
    65        
    66         return $out;
    67     }
     52        function array_combine($arr1, $arr2) {
     53                $out = array();
     54
     55                $arr1 = array_values($arr1);
     56                $arr2 = array_values($arr2);
     57
     58                foreach($arr1 as $key1 => $value1) {
     59                        $out[(string)$value1] = $arr2[$key1];
     60                }
     61
     62                return $out;
     63        }
    6864}
    6965
    70 /* 
     66/**
    7167 * Remplissage d'un tableau avec des valeurs, en spécifiant les clés
    7268 *
     
    7470 * @see http://fr2.php.net/manual/fr/function.array-fill-keys.php#83962
    7571 */
    76  
     72
    7773if (!function_exists('array_fill_keys')) {
    78     function array_fill_keys($keys ,$value){
    79         return array_combine($keys,array_fill(0,count($keys),$value));
    80     }
     74        function array_fill_keys($keys ,$value){
     75                return array_combine($keys,array_fill(0,count($keys),$value));
     76        }
    8177}
    8278?>
  • _plugins_/inscription2/inscription2_2_0/inc/inscription2_verifier_tables.php

    r28059 r31637  
    11<?php
     2/**
     3 * Plugin Inscription2 pour SPIP
     4 * Licence GPL v3
     5 *
     6 */
     7
     8
     9/**
     10 * Fonction de vérification des tables pour inscription2
     11 * Appelée à chaque validation du formulaire CFG
     12 */
    213function inc_inscription2_verifier_tables_dist(){
    314        $exceptions_des_champs_auteurs_elargis = pipeline('i2_exceptions_des_champs_auteurs_elargis',array());
    415        spip_log('INCRIPTION 2 : verification des tables','inscription2');
    5        
     16
     17        include_spip('base/serial');
     18        global $tables_principales;
     19    base_serial($tables_principales);
     20
    621        //definition de la table cible
    7         $table_nom = "spip_auteurs_elargis";
    8         $desc = sql_showtable($table_nom,'', false);
    9                
    10         if(isset($desc['field']) and $desc['key']['PRIMARY KEY']!='id_auteur'){
    11                 if(!isset($desc['field']['id_auteur'])){
    12                         sql_alter("TABLE ".$table_nom." ADD id_auteur INT NOT NULL PRIMARY KEY");
     22        $table = "spip_auteurs_elargis";
     23
     24        if(isset($tables_principales[$table]['field']) and $tables_principales[$table]['key']['PRIMARY KEY']!='id_auteur'){
     25                if(!isset($tables_principales[$table]['field']['id_auteur'])){
     26                        sql_alter("TABLE ".$table." ADD id_auteur INT NOT NULL PRIMARY KEY");
    1327                }
    14                 sql_alter("TABLE ".$table_nom." DROP id, DROP INDEX id_auteur, ADD PRIMARY KEY (id_auteur)");
    15         }else if(!$desc){
    16                 sql_create($table_nom,
     28                sql_alter("TABLE ".$table." DROP id, DROP INDEX id_auteur, ADD PRIMARY KEY (id_auteur)");
     29        }else if(!$tables_principales[$table]){
     30                sql_create($table,
    1731                        array("id_auteur"=> "bigint(21) NOT NULL default '0'"),
    1832                        array('PRIMARY KEY' => "id_auteur")
    1933                );
    2034        }
    21        
     35
    2236        if (is_array(lire_config('inscription2'))){
    2337                $clef_passee = array();
    2438                foreach(lire_config('inscription2',array()) as $clef => $val) {
    25                         $cle = ereg_replace("_(obligatoire|fiche|table).*", "", $clef);
     39                        $cle = preg_replace("/_(obligatoire|fiche|table).*/", "", $clef);
    2640                        if(!in_array($cle,$clef_passee)){
    2741                                if(!in_array($cle,$exceptions_des_champs_auteurs_elargis) and !ereg("^(categories|zone|newsletter).*$", $cle) ){
    28                                         if($cle == 'naissance' and !isset($desc['field'][$cle]) and _request($clef)!=''){
    29                                                 sql_alter("TABLE ".$table_nom." ADD ".$cle." DATE DEFAULT '0000-00-00' NOT NULL");
    30                                                 $desc['field'][$cle] = "DATE DEFAULT '0000-00-00' NOT NULL";
    31                                         }elseif(_request($clef)!='' and !isset($desc['field'][$cle]) and $cle == 'validite'){
    32                                                 sql_alter("TABLE ".$table_nom." ADD ".$cle." datetime DEFAULT '0000-00-00 00:00:00' NOT NULL");
    33                                                 $desc['field'][$cle] = "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL";
    34                                         }elseif(_request($clef)!='' and !isset($desc['field'][$cle]) and $cle == 'pays'){
    35                                                 sql_alter("TABLE ".$table_nom." ADD ".$cle." int NOT NULL");
    36                                                 $desc['field'][$cle] = " int NOT NULL";
    37                                         }elseif(!isset($desc['field'][$cle]) and _request($clef)!=''){
    38                                                 sql_alter("TABLE ".$table_nom." ADD ".$cle." text NOT NULL");
    39                                                 $desc['field'][$cle] = "text NOT NULL";
     42                                        if($cle == 'naissance' and !isset($tables_principales[$table]['field'][$cle]) and _request($clef)!=''){
     43                                                $tables_principales[$table]['field'][$cle] = "DATE DEFAULT '0000-00-00' NOT NULL";
     44                                        }elseif(_request($clef)!='' and !isset($tables_principales[$table]['field'][$cle]) and $cle == 'validite'){
     45                                                $tables_principales[$table]['field'][$cle] = "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL";
     46                                        }elseif(_request($clef)!='' and !isset($tables_principales[$table]['field'][$cle]) and $cle == 'pays'){
     47                                                $tables_principales[$table]['field'][$cle] = " int NOT NULL";
     48                                        }elseif(!isset($tables_principales[$table]['field'][$cle]) and _request($clef)!=''){
     49                                                $tables_principales[$table]['field'][$cle] = "text NOT NULL";
    4050                                        }
    4151                                }
     
    4757                }
    4858        }
    49        
    50         if($GLOBALS['meta']['spiplistes_version'] and !isset($desc['field']['spip_listes_format']))
    51                 sql_alter("TABLE `".$table_nom."` ADD `spip_listes_format` VARCHAR(8) DEFAULT 'non' NOT NULL");
     59
     60        if($GLOBALS['meta']['spiplistes_version'] and !isset($tables_principales[$table]['field']['spip_listes_format']))
     61                $tables_principales[$table]['field']['spip_listes_format'] = "VARCHAR(8) DEFAULT 'non' NOT NULL";
     62
     63        include_spip('base/create');
     64        maj_tables($table);
     65        return;
    5266}
    5367?>
  • _plugins_/inscription2/inscription2_2_0/inscription2_mes_fonctions.php

    r28489 r31637  
    33
    44/**
    5  * 
     5 *
    66 * Transforme les /n en <br />
    7  * 
     7 *
    88 */
    99function n_to_br($texte){
     
    1313
    1414/**
    15  * 
     15 *
    1616 * Donne le nom d'un pays en fonction de son id
    17  * 
    18  * @return false|string false dans le cas ou il ne reçoit pas de paramètres ou si le paramètre n'est pas bon 
     17 *
     18 * @return false|string false dans le cas ou il ne reçoit pas de paramètres ou si le paramètre n'est pas bon
    1919 * @param int $id_pays L'id_pays de la table spip_geo_pays
    2020 */
     
    2828
    2929/**
    30  * 
     30 *
    3131 * Récupère la valeur d'un champs d'un auteur si on ne possède que le nom du champs
    3232 * Dans le cas de la boucle FOR par exemple
    33  * 
    34  * @return 
     33 *
     34 * @return
    3535 * @param object $champs
    3636 * @param object $id_auteur
     
    4141        }
    4242        if($champs == 'pays'){
    43                 spip_log('champs = pays');
    4443                $resultat = sql_getfetsel("b.nom","spip_auteurs_elargis a LEFT JOIN spip_geo_pays b on a.pays = b.id_pays","a.id_auteur=$id_auteur");
    4544                return typo($resultat);
    4645        }
    4746        if($champs == 'pays_pro'){
    48                 spip_log('champs = pays_pro');
    4947                $resultat = sql_getfetsel("b.nom","spip_auteurs_elargis a LEFT JOIN spip_geo_pays b on a.pays_pro = b.id_pays","a.id_auteur=$id_auteur");
    5048                return typo($resultat);
     
    5553
    5654/**
    57  * 
     55 *
    5856 * Fonction utilisée par le critère i2_recherche
    59  * 
     57 *
    6058 * @return array Le tableau des auteurs correspondants aux critères de recherche
    61  * @param string $quoi[optional] Le contenu textuel recherché 
     59 * @param string $quoi[optional] Le contenu textuel recherché
    6260 * @param object $ou[optional] Le champs dans lequel on recherche
    6361 * @param object $table[optional]
     
    8280                        }
    8381                }
    84                 return "($auteurs)";   
     82                return "($auteurs)";
    8583        }
    8684}
    8785
    8886/**
    89  * 
     87 *
    9088 * Critère utilisé pour rechercher dans les utilisateurs (page ?exec=inscription2_adherents)
    91  * 
     89 *
    9290 */
    9391function critere_i2_recherche_dist($idb, &$boucles){
  • _plugins_/inscription2/inscription2_2_0/inscription2_mes_options.php

    r28820 r31637  
    44
    55/**
    6  * 
     6 *
    77 * Déclaration des pipelines introduits par le plugin inscription2
    8  * 
     8 *
    99 */
    1010
     
    2525$GLOBALS['spip_pipeline']['i2_form_debut'] = '';
    2626$GLOBALS['spip_pipeline']['i2_form_fin'] = '';
    27  
     27
    2828/**
    29  * 
     29 *
    3030 * Surcharge de la boucle auteurs (à l'origine: http://doc.spip.org/@boucle_AUTEURS_dist)
    3131 * <BOUCLE(AUTEURS)>
    3232 * Création d'une jointure automatique avec spip_auteurs_elargis
    33  * 
    34  * @return 
     33 *
     34 * @return
    3535 * @param object $id_boucle
    3636 * @param object $boucles
     
    6161        }
    6262
    63         return calculer_boucle($id_boucle, $boucles); 
     63        return calculer_boucle($id_boucle, $boucles);
    6464}
    6565
    6666/**
    67  * 
     67 *
    6868 * Autorisation pour la table spip_auteurs_elargis
    6969 * Autorise les visiteurs a modifier leurs infos dans cette table
    70  * 
    71  * @return 
     70 *
     71 * @return
    7272 * @param object $faire
    7373 * @param object $type
     
    8686
    8787/**
    88  * 
     88 *
    8989 * Autorisation de modification pour la table spip_auteurs
    9090 * Autorise les visiteurs a modifier leurs infos dans cette table
    91  * 
    92  * @return 
     91 *
     92 * @return
    9393 * @param object $faire
    9494 * @param object $type
  • _plugins_/inscription2/inscription2_2_0/inscription2_pipelines.php

    r31105 r31637  
    11<?php
     2/**
     3 * Plugin Inscription2
     4 * Licence GPL v3
     5 *
     6 */
    27
    38if (!defined("_ECRIRE_INC_VERSION")) return;
     
    7479 * Insertion dans le pipeline post_edition
    7580 * ajouter les champs inscription2 soumis lors de la soumission du formulaire CVT editer_auteur
     81 *
    7682 * @return
    7783 * @param object $flux
     
    8389                $id_auteur = $flux['args']['id_objet'];
    8490                foreach(lire_config('inscription2',array()) as $cle => $val){
    85                         $cle = ereg_replace("_(obligatoire|fiche|table).*$", "", $cle);
     91                        $cle = preg_replace("/_(obligatoire|fiche|table).*/", "", $cle);
    8692                        if($val=='on' AND !in_array($cle,$exceptions_des_champs_auteurs_elargis) and !ereg("^(categories|zone|newsletter).*$", $cle)){
    8793                                $var_user[$cle] = _request($cle);
  • _plugins_/inscription2/inscription2_2_0/plugin.xml

    r31358 r31637  
    44        </nom>
    55        <auteur>
    6                 &copy; cmtmt2003 - 2007/2009 - Distribu&eacute; sous licence GNU/LGPL
     6                &copy; cmtmt2003 - 2007/2009 - Distribu&eacute; sous licence GNU/GPL v3
    77        </auteur>
    88
Note: See TracChangeset for help on using the changeset viewer.