source: spip-zone/_plugins_/_test_/inscription2/inscription2_2_0/base/inscription2.php @ 28308

Last change on this file since 28308 was 28308, checked in by kent1@…, 10 years ago

Mmmmh ...

On ne saitplus à qui faire confiance de nos jours ...

File size: 2.3 KB
Line 
1<?php
2function inscription2_declarer_tables_interfaces($interface){
3        $interface['tables_jointures']['spip_auteurs'][] = 'auteurs_elargis';
4       
5        //-- Table des tables ----------------------------------------------------
6        $interface['table_des_tables']['auteurs_elargis']='auteurs_elargis';
7        $interface['table_des_tables']['geo_pays']='geo_pays';
8        return $interface;
9}
10
11function inscription2_declarer_tables_principales($tables_principales){
12        $exceptions_des_champs_auteurs_elargis = pipeline('i2_exceptions_des_champs_auteurs_elargis',array());
13       
14        $spip_auteurs_elargis['id_auteur'] = "bigint(21) NOT NULL";
15               
16        if(function_exists('lire_config')){
17                if((lire_config('inscription2') == '') OR !is_array(unserialize($GLOBALS['meta']['inscription2']))){
18                        spip_log('INSCRIPTION 2 : Reverifier les plugins');
19                        include_spip('inc/plugin');
20                        installe_plugins();
21                }
22                foreach(lire_config('inscription2',array()) as $cle => $val) {
23                        $cle = ereg_replace("_(obligatoire|fiche|table).*", "", $cle);
24                        if($val!='' and !in_array($cle,$exceptions_des_champs_auteurs_elargis) and !ereg("^(categories|zone|newsletter).*$", $cle) ){
25                                if($cle == 'naissance' )
26                                        $spip_auteurs_elargis[$cle] = "DATE DEFAULT '0000-00-00' NOT NULL";
27                                elseif($cle == 'validite' )
28                                        $spip_auteurs_elargis[$cle] = "datetime DEFAULT '0000-00-00 00:00:00 NOT NULL";
29                                elseif($cle == 'pays')
30                                        $spip_auteurs_elargis[$cle] = "int NOT NULL";
31                                elseif($cle == 'pays_pro')
32                                        $spip_auteurs_elargis[$cle] = "int NOT NULL";
33                                else
34                                        $spip_auteurs_elargis[$cle] = "text NOT NULL";
35                        }
36                }
37        }
38        $spip_auteurs_elargis_key = array(
39                "PRIMARY KEY" => "id_auteur");
40       
41        $tables_principales['spip_auteurs_elargis'] = array(
42                'field' => &$spip_auteurs_elargis,
43                '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 */
51
52        /* penser a modifier si le plugin geographie modifie cette table */
53        $spip_geo_pays = array(
54                        "id_pays"       => "smallint NOT NULL",
55                        "nom"   => "text DEFAULT '' NOT NULL",
56        );
57        $spip_geo_pays_key = array(
58                        "PRIMARY KEY"           => "id_pays"
59        );
60        $tables_principales['spip_geo_pays'] = array(
61                'field'=>&$spip_geo_pays,
62                'key'=>$spip_geo_pays_key);
63       
64        return $tables_principales;
65}
66?>
Note: See TracBrowser for help on using the repository browser.