3 * Plugin Acces Restreint 3.0 pour Spip 2.0
4 * Licence GPL (c) 2006-2008 Cedric Morin
8 if (!defined("_ECRIRE_INC_VERSION")) return;
10 include_spip('inc/meta');
12 * Fonction d'installation, mise a jour de la base
14 * @param unknown_type $nom_meta_base_version
15 * @param unknown_type $version_cible
17 function accesrestreint_upgrade($nom_meta_base_version,$version_cible){
20 $maj['create'] = array(
21 array('maj_tables',array('spip_zones','spip_zones_liens')),
24 $maj['0.1.0'] = array(
25 array('maj_tables',array('spip_zones')), // publique, privee
27 $maj['0.2.0'] = array(
28 array('maj_tables',array('spip_zones')), // publique, privee
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 )"),
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 ''"),
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"),
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"),
53 $maj['0.4.2'] = array(
54 array('accesrestreint_upgrade_protection_documents'),
57 include_spip('base/upgrade');
58 maj_plugin($nom_meta_base_version, $version_cible, $maj);
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);
72 * Fonction de desinstallation
74 * @param unknown_type $nom_meta_base_version
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);