[PLUGINS] +acces restreint
[ptitvelo/web/www.git] / www / plugins / accesrestreint_3_5 / accesrestreint_administrations.php
1 <?php
2 /**
3 * Plugin Acces Restreint 3.0 pour Spip 2.0
4 * Licence GPL (c) 2006-2008 Cedric Morin
5 *
6 */
7
8 if (!defined("_ECRIRE_INC_VERSION")) return;
9
10 include_spip('inc/meta');
11 /**
12 * Fonction d'installation, mise a jour de la base
13 *
14 * @param unknown_type $nom_meta_base_version
15 * @param unknown_type $version_cible
16 */
17 function accesrestreint_upgrade($nom_meta_base_version,$version_cible){
18
19 $maj = array();
20 $maj['create'] = array(
21 array('maj_tables',array('spip_zones','spip_zones_liens')),
22 );
23
24 $maj['0.1.0'] = array(
25 array('maj_tables',array('spip_zones')), // publique, privee
26 );
27 $maj['0.2.0'] = array(
28 array('maj_tables',array('spip_zones')), // publique, privee
29 );
30 $maj['0.3.0'] = array(
31 array('sql_alter',"TABLE zones_auteurs DROP INDEX id_zone"),
32 array('sql_alter',"TABLE zones_auteurs ADD PRIMARY KEY ( id_zone , id_auteur )"),
33 array('sql_alter',"TABLE zones_rubriques DROP INDEX id_zone"),
34 array('sql_alter',"TABLE zones_rubriques ADD PRIMARY KEY ( id_zone , id_rubrique )"),
35 );
36 $maj['0.3.1'] = array(
37 array('sql_alter',"TABLE spip_zone ALTER titre SET DEFAULT ''"),
38 array('sql_alter',"TABLE spip_zone ALTER descriptif SET DEFAULT ''"),
39 );
40
41 include_spip('maj/svn10000');
42 $maj['0.4.0'] = array(
43 array('maj_liens','zone'), // creer la table zones_liens
44 array('maj_liens','zone','auteur'),
45 array('sql_drop_table',"spip_zones_auteurs"),
46 array('maj_liens','zone','rubrique'),
47 array('sql_drop_table',"spip_zones_rubriques"),
48 );
49 $maj['0.4.1'] = array(
50 array('sql_alter',"TABLE spip_zone CHANGE publique publique char(3) DEFAULT 'oui' NOT NULL"),
51 array('sql_alter',"TABLE spip_zone CHANGE privee privee char(3) DEFAULT 'oui' NOT NULL"),
52 );
53 $maj['0.4.2'] = array(
54 array('accesrestreint_upgrade_protection_documents'),
55 );
56
57 include_spip('base/upgrade');
58 maj_plugin($nom_meta_base_version, $version_cible, $maj);
59 }
60
61 function accesrestreint_upgrade_protection_documents(){
62 if (isset($GLOBALS['meta']["creer_htaccess"])
63 AND $GLOBALS['meta']["creer_htaccess"] == 'oui'
64 AND !isset($GLOBALS['meta']["accesrestreint_proteger_documents"])){
65 ecrire_meta("accesrestreint_proteger_documents","oui");
66 include_spip("inc/accesrestreint_documents");
67 accesrestreint_gerer_htaccess(true);
68 }
69 }
70
71 /**
72 * Fonction de desinstallation
73 *
74 * @param unknown_type $nom_meta_base_version
75 */
76 function accesrestreint_vider_tables($nom_meta_base_version) {
77 sql_drop_table("spip_zones");
78 sql_drop_table("spip_zones_liens");
79 effacer_meta('accesrestreint_proteger_documents');
80 include_spip("inc/accesrestreint_documents");
81 accesrestreint_gerer_htaccess(false);
82 effacer_meta($nom_meta_base_version);
83 }
84
85 ?>