예제 #1
0
/**
 * Fonction de desinstallation
 *
 * @param unknown_type $nom_meta_base_version
 */
function accesrestreint_vider_tables($nom_meta_base_version) {
	sql_drop_table("spip_zones");
	sql_drop_table("spip_zones_auteurs");
	sql_drop_table("spip_zones_rubriques");
	effacer_meta('creer_htaccess');
	effacer_meta($nom_meta_base_version);
}
function facteur_vieil_upgrade(){
	// migration depuis tres ancienne version, a la main
	if (isset($GLOBALS['meta']['spip_notifications_version'])) {
		ecrire_meta('facteur_smtp', $GLOBALS['meta']['spip_notifications_smtp']);
		ecrire_meta('facteur_smtp_auth', $GLOBALS['meta']['spip_notifications_smtp_auth']);
		ecrire_meta('facteur_smtp_secure', $GLOBALS['meta']['spip_notifications_smtp_secure']);
		ecrire_meta('facteur_smtp_sender', $GLOBALS['meta']['spip_notifications_smtp_sender']);
		ecrire_meta('facteur_filtre_images', $GLOBALS['meta']['spip_notifications_filtre_images']);
		ecrire_meta('facteur_filtre_css', $GLOBALS['meta']['spip_notifications_filtre_css']);
		ecrire_meta('facteur_filtre_iso_8859', $GLOBALS['meta']['spip_notifications_filtre_iso_8859']);
		ecrire_meta('facteur_adresse_envoi', $GLOBALS['meta']['spip_notifications_adresse_envoi']);
		ecrire_meta('facteur_adresse_envoi_nom', $GLOBALS['meta']['spip_notifications_adresse_envoi_nom']);
		ecrire_meta('facteur_adresse_envoi_email', $GLOBALS['meta']['spip_notifications_adresse_envoi_email']);
		// supprimer l'ancien nommage
		effacer_meta('spip_notifications_smtp');
		effacer_meta('spip_notifications_smtp_auth');
		effacer_meta('spip_notifications_smtp_secure');
		effacer_meta('spip_notifications_smtp_sender');
		effacer_meta('spip_notifications_filtre_images');
		effacer_meta('spip_notifications_filtre_css');
		effacer_meta('spip_notifications_filtre_iso_8859');
		effacer_meta('spip_notifications_adresse_envoi');
		effacer_meta('spip_notifications_adresse_envoi_nom');
		effacer_meta('spip_notifications_adresse_envoi_email');
		effacer_meta('spip_notifications_version');
		// KEZAKO ?
		include_spip('base/abstract_sql');
		sql_drop_table('spip_notifications', true);
	}
}
function agenda_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_evenements");
    #sql_drop_table("spip_mots_evenements"); // au cas ou ?
    sql_alter("TABLE spip_rubriques DROP COLUMN agenda");
    effacer_meta($nom_meta_base_version);
}
function vacarme_numeros_vider_tables($nom_meta_version_base)
{
    sql_drop_table('spip_vacarme_numeros');
    sql_drop_table('spip_vacarme_numeros_details');
    sql_drop_table('spip_vacarme_numeros_sommaires');
    effacer_meta($nom_meta_version_base);
}
예제 #5
0
/**
 * Desinstallation/suppression des tables urls
 *
 * @param string $nom_meta_base_version
 */
function urls_vider_tables($nom_meta_base_version)
{
    // repasser dans les urls par defaut
    ecrire_meta('type_urls', 'page');
    sql_drop_table("spip_urls");
    effacer_meta($nom_meta_base_version);
}
function fraap_candidatures_vider_tables($nom_meta_base_version)
{
    include_spip('base/abstract_sql');
    sql_drop_table("spip_candidatures");
    sql_alter("TABLE spip_auteurs DROP COLUMN prenom");
    sql_alter("TABLE spip_auteurs DROP COLUMN activite");
    effacer_meta($nom_meta_base_version);
}
예제 #7
0
/**
 * Desinstallation/suppression des tables mots et groupes de mots
 *
 * @param string $nom_meta_base_version
 */
function organiseur_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_messages");
    sql_alter("TABLE spip_auteurs DROP imessage");
    sql_alter("TABLE spip_auteurs DROP messagerie");
    effacer_meta('messagerie_agenda');
    effacer_meta($nom_meta_base_version);
}
예제 #8
0
/**
 * Désinstallation du plugin
 *
 * Supprime les tables SQL du plugin (spip_depots, spip_plugins, spip_depots_plugins, spip_paquets)
 * 
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
**/
function svp_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_depots");
    sql_drop_table("spip_plugins");
    sql_drop_table("spip_depots_plugins");
    sql_drop_table("spip_paquets");
    effacer_meta($nom_meta_base_version);
    spip_log('DESINSTALLATION BDD', 'svp_actions.' . _LOG_INFO);
}
/**
 * Fonction de desinstallation
 *
 * @param unknown_type $nom_meta_base_version
 */
function accesrestreint_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_zones");
    sql_drop_table("spip_zones_liens");
    effacer_meta('accesrestreint_proteger_documents');
    include_spip("inc/accesrestreint_documents");
    accesrestreint_gerer_htaccess(false);
    effacer_meta($nom_meta_base_version);
}
예제 #10
0
/**
 * Desinstallation/suppression des tables mots et groupes de mots
 *
 * @param string $nom_meta_base_version
 */
function mots_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_mots");
    sql_drop_table("spip_groupes_mots");
    sql_drop_table("spip_mots_liens");
    effacer_meta('articles_mots');
    effacer_meta('config_precise_groupes');
    effacer_meta($nom_meta_base_version);
}
/**
 * Désinstallation du plugin
 *
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
 **/
function stats_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_visites");
    sql_drop_table("spip_visites_articles");
    sql_drop_table("spip_referers");
    sql_drop_table("spip_referers_articles");
    effacer_meta("activer_statistiques");
    effacer_meta("activer_captures_referers");
    effacer_meta($nom_meta_base_version);
}
/**
 * Fonction de désinstallation du plugin Réseŕvations Crédits.
 * 
 * Vous devez :
 *
 * - nettoyer toutes les données ajoutées par le plugin et son utilisation
 * - supprimer les tables et les champs créés par le plugin. 
 *
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
**/
function reservations_credits_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_reservation_credit_mouvements");
    sql_drop_table("spip_reservation_credits");
    # Nettoyer les versionnages et forums
    sql_delete("spip_versions", sql_in("objet", array('reservation_credit_mouvement', 'reservation_credit')));
    sql_delete("spip_versions_fragments", sql_in("objet", array('reservation_credit_mouvement', 'reservation_credit')));
    sql_delete("spip_forum", sql_in("objet", array('reservation_credit_mouvement', 'reservation_credit')));
    effacer_meta($nom_meta_base_version);
}
예제 #13
0
/**
 * Fonction de désinstallation du plugin Livraison.
 *
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
**/
function livraison_vider_tables($nom_meta_base_version)
{
    livraison_generer_csv_installation();
    sql_drop_table("spip_livraisonmodes");
    # Nettoyer les versionnages et forums
    sql_delete("spip_versions", sql_in("objet", array('livraisonmode')));
    sql_delete("spip_versions_fragments", sql_in("objet", array('livraisonmode')));
    sql_delete("spip_forum", sql_in("objet", array('livraisonmode')));
    effacer_meta($nom_meta_base_version);
}
예제 #14
0
/**
 * Desinstallation/suppression des tables vhplab
 *
 * @param string $nom_meta_base_version
 */
function vhplab_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_vhplab_gis");
    sql_drop_table("spip_vhplab_gis_liens");
    sql_drop_table("spip_vhplab_related");
    sql_drop_table("spip_vhplab_related_liens");
    sql_drop_table("spip_vhplab_json");
    sql_drop_table("spip_vhplab_json_liens");
    effacer_meta($nom_meta_base_version);
}
예제 #15
0
/**
 * Fonction de désinstallation du plugin cPublicité.
 *
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
**/
function cpub_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_publicites");
    sql_drop_table("spip_bannieres");
    sql_drop_table("spip_stats_pubs");
    # Nettoyer les versionnages et forums
    sql_delete("spip_versions", sql_in("objet", array('publicite', 'banniere')));
    sql_delete("spip_versions_fragments", sql_in("objet", array('publicite', 'banniere')));
    sql_delete("spip_forum", sql_in("objet", array('publicite', 'banniere')));
    effacer_meta($nom_meta_base_version);
}
function adhclub_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_adhassurs_liens");
    sql_drop_table("spip_adhcotis_liens");
    sql_drop_table("spip_adhnivs_liens");
    sql_drop_table("spip_adhassurs");
    sql_drop_table("spip_adhcotis");
    sql_drop_table("spip_adhnivs");
    sql_drop_table("spip_adhsaisons");
    sql_drop_table("spip_adhintgs");
    cextras_api_vider_tables(adhclub_declarer_champs_extras());
    effacer_meta($nom_meta_base_version);
}
function vacarme_commande_vider_tables($nom_meta_base_version)
{
    sql_alter("TABLE spip_contacts DROP organisation");
    sql_alter("TABLE spip_contacts DROP service");
    sql_alter("TABLE spip_contacts DROP type_client");
    sql_alter("TABLE spip_contacts_abonnements DROP numero_debut");
    sql_alter("TABLE spip_contacts_abonnements DROP numero_fin");
    sql_alter("TABLE spip_abonnements DROP reference");
    sql_alter("TABLE spip_abonnements DROP cadeau");
    sql_alter("TABLE spip_paniers_liens DROP numero");
    sql_alter("TABLE spip_commandes DROP paiement");
    sql_alter("TABLE spip_commandes_details DROP numero");
    sql_drop_table('spip_commandes_transactions');
    effacer_meta($nom_meta_base_version);
}
function clevermail_vider_tables($nom_meta_base_version)
{
    sql_drop_table('spip_cm_lists');
    sql_drop_table('spip_cm_lists_subscribers');
    sql_drop_table('spip_cm_pending');
    sql_drop_table('spip_cm_posts');
    sql_drop_table('spip_cm_posts_done');
    sql_drop_table('spip_cm_posts_links');
    sql_drop_table('spip_cm_posts_queued');
    sql_drop_table('spip_cm_settings');
    sql_drop_table('spip_cm_subscribers');
    sql_drop_table('spip_cm_champ_exercice');
    effacer_meta($nom_meta_base_version);
    spip_log('Suppression des tables du plugin CleverMail', 'clevermail');
}
예제 #19
0
/**
 * Desinstallation/suppression des tables forum
 *
 * @param string $nom_meta_base_version
 */
function forum_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_forum");
    effacer_meta("mots_cles_forums");
    effacer_meta("forums_titre");
    effacer_meta("forums_texte");
    effacer_meta("forums_urlref");
    effacer_meta("forums_afficher_barre");
    effacer_meta("formats_documents_forum");
    effacer_meta("forums_publics");
    effacer_meta("forum_prive");
    effacer_meta("forum_prive_objets");
    effacer_meta("forum_prive_admin");
    effacer_meta($nom_meta_base_version);
}
예제 #20
0
function base_delete_all_dist($titre)
{
    $delete = _request('delete');
    $res = array();
    if (is_array($delete)) {
        foreach ($delete as $table) {
            if (sql_drop_table($table)) {
                $res[] = $table;
            } else {
                spip_log("SPIP n'a pas pu detruire {$table}.", _LOG_ERREUR);
            }
        }
        // un pipeline pour detruire les tables installees par les plugins
        pipeline('delete_tables', '');
        spip_unlink(_FILE_CONNECT);
        spip_unlink(_FILE_CHMOD);
        spip_unlink(_FILE_META);
        spip_unlink(_ACCESS_FILE_NAME);
        spip_unlink(_CACHE_RUBRIQUES);
    }
    $d = count($delete);
    $r = count($res);
    spip_log("Tables detruites: {$r} sur {$d}: " . join(', ', $res), _LOG_INFO_IMPORTANTE);
}
예제 #21
0
파일: delete_all.php 프로젝트: rhertzog/lcs
function base_delete_all_dist($titre)
{
	$delete = _request('delete');
	$res = array();
	if (is_array($delete)) {
		foreach ($delete as $table) {
			if (sql_drop_table($table))
				$res[] = $table;
			else spip_log("SPIP n'a pas pu detruire $table.");
		}

	// un pipeline pour detruire les tables installees par les plugins
		pipeline('delete_tables', '');

		spip_unlink(_FILE_CONNECT);
		spip_unlink(_FILE_CHMOD);
		spip_unlink(_FILE_META);
		spip_unlink(_ACCESS_FILE_NAME);
		spip_unlink(_CACHE_RUBRIQUES);
	}
	$d = count($delete);
	$r = count($res);
	spip_log("Tables detruites: $r sur $d: " . join(', ',$res));
}
예제 #22
0
/**
 * Desinstallation
 *
 * @param string $nom_meta_base_version
 */
function bank_vider_tables($nom_meta_base_version)
{
    include_spip('base/abstract_sql');
    effacer_meta($nom_meta_base_version);
    sql_drop_table("spip_transactions");
    sql_drop_table("spip_forms_donnees_transactions");
}
예제 #23
0
파일: dump.php 프로젝트: loorenzooo/aslfc
/**
 * Copier de base a base
 *
 * @param string $status_file
 *   nom avec chemin complet du fichier ou est stocke le status courant
 * @param array $tables
 *   liste des tables a copier
 * @param string $serveur_source
 * @param string $serveur_dest
 * @param array $options
 *   parametres optionnels sous forme de tableau :
 *   param string $callback_progression
 *     fonction a appeler pour afficher la progression, avec les arguments (compteur,total,table)
 *   param int $max_time
 *     limite de temps au dela de laquelle sortir de la fonction proprement (de la forme time()+15)
 *   param bool $drop_source
 *     vider les tables sources apres copie
 *   param array $no_erase_dest
 *     liste des tables a ne pas vider systematiquement (ne seront videes que si existent dans la base source)
 *   param array $where
 *     liste optionnelle de condition where de selection des donnees pour chaque table
 *   param string $racine_fonctions_dest
 *     racine utilisee pour charger_fonction() des operations elementaires sur la base de destination.
 *     Permet de deleguer vers une autre voie de communication.
 *     Par defaut on utilise 'base', ce qui route vers les fonctions de ce fichier. Concerne :
 *     - vider_tables_destination_copie
 *     - preparer_table_dest
 *     - detruire_copieur_si_besoin
 *     - inserer_copie
 *   param array $fonction_base_inserer
 *     fonction d'insertion en base. Par defaut "inserer_copie" qui fait un insertq a l'identique.
 *     Attention, la fonction appelee est prefixee par $racine_fonctions_dest via un charger_fonction()
 *     Peut etre personalisee pour filtrer, renumeroter....
 *   param array $desc_tables_dest
 *     description des tables de destination a utiliser de preference a la description de la table source
 *   param int data_pool
 *     nombre de ko de donnees a envoyer d'un coup en insertion dans la table cible (par defaut 1)
 *     permet des envois groupes pour plus de rapidite, notamment si l'insertion est distante
 *
 * @return bool
 */
function base_copier_tables($status_file, $tables, $serveur_source, $serveur_dest, $options = array())
{
    $callback_progression = isset($options['callback_progression']) ? $options['callback_progression'] : '';
    $max_time = isset($options['max_time']) ? $options['max_time'] : 0;
    $drop_source = isset($options['drop_source']) ? $options['drop_source'] : false;
    $no_erase_dest = isset($options['no_erase_dest']) ? $options['no_erase_dest'] : array();
    $where = isset($options['where']) ? $options['where'] : array();
    $fonction_base_inserer = isset($options['fonction_base_inserer']) ? $options['fonction_base_inserer'] : 'inserer_copie';
    $desc_tables_dest = isset($options['desc_tables_dest']) ? $options['desc_tables_dest'] : array();
    $racine_fonctions = isset($options['racine_fonctions_dest']) ? $options['racine_fonctions_dest'] : 'base';
    $data_pool = isset($options['data_pool']) ? $options['data_pool'] : 50 * 1024;
    spip_log("Copier " . count($tables) . " tables de '{$serveur_source}' vers '{$serveur_dest}'", 'dump.' . _LOG_INFO_IMPORTANTE);
    if (!($inserer_copie = charger_fonction($fonction_base_inserer, $racine_fonctions, true))) {
        spip_log("Fonction '{$racine_fonctions}_{$fonction_base_inserer}' inconnue. Abandon", 'dump.' . _LOG_INFO_IMPORTANTE);
        return true;
        // echec mais on a fini, donc true
    }
    if (!($preparer_table_dest = charger_fonction('preparer_table_dest', $racine_fonctions, true))) {
        spip_log("Fonction '{$racine_fonctions}_{$preparer_table_dest}' inconnue. Abandon", 'dump.' . _LOG_INFO_IMPORTANTE);
        return true;
        // echec mais on a fini, donc true
    }
    if (!lire_fichier($status_file, $status) or !($status = unserialize($status))) {
        $status = array();
    }
    $status['etape'] = 'basecopie';
    // puis relister les tables a importer
    // et les vider si besoin, au moment du premier passage ici
    $initialisation_copie = !isset($status["dump_status_copie"]) ? 0 : $status["dump_status_copie"];
    // si init pas encore faite, vider les tables du serveur destination
    if (!$initialisation_copie) {
        if (!($vider_tables_destination_copie = charger_fonction('vider_tables_destination_copie', $racine_fonctions, true))) {
            spip_log("Fonction '{$racine_fonctions}_vider_tables_destination_copie' inconnue. Abandon", 'dump.' . _LOG_INFO_IMPORTANTE);
            return true;
            // echec mais on a fini, donc true
        }
        $vider_tables_destination_copie($tables, $no_erase_dest, $serveur_dest);
        $status["dump_status_copie"] = 'ok';
        ecrire_fichier($status_file, serialize($status));
    }
    // les tables auteurs et meta doivent etre copiees en dernier !
    if (in_array('spip_auteurs', $tables)) {
        $tables = array_diff($tables, array('spip_auteurs'));
        $tables[] = 'spip_auteurs';
    }
    if (in_array('spip_meta', $tables)) {
        $tables = array_diff($tables, array('spip_meta'));
        $tables[] = 'spip_meta';
    }
    spip_log("Tables a copier :" . implode(", ", $tables), 'dump.' . _LOG_INFO);
    $trouver_table = charger_fonction('trouver_table', 'base');
    foreach ($tables as $table) {
        // en principe, pas de spip_ dans le nom de table passe a trouver_table
        $desc_source = $trouver_table(preg_replace(",^spip_,", "", $table), $serveur_source, false);
        if (!$desc_source) {
            $desc_source = $trouver_table($table, $serveur_source, false);
        }
        // verifier que la table est presente dans la base source
        if ($desc_source) {
            // $status['tables_copiees'][$table] contient l'avancement
            // de la copie pour la $table : 0 a N et -N quand elle est finie (-1 si vide et finie...)
            if (!isset($status['tables_copiees'][$table])) {
                $status['tables_copiees'][$table] = 0;
            }
            if (is_numeric($status['tables_copiees'][$table]) and $status['tables_copiees'][$table] >= 0 and $desc_dest = $preparer_table_dest($table, isset($desc_tables_dest[$table]) ? $desc_tables_dest[$table] : $desc_source, $serveur_dest, $status['tables_copiees'][$table] == 0)) {
                if ($callback_progression) {
                    $callback_progression($status['tables_copiees'][$table], 0, $table);
                }
                while (true) {
                    $n = intval($status['tables_copiees'][$table]);
                    // on copie par lot de 400
                    $res = sql_select('*', $table, isset($where[$table]) ? $where[$table] : '', '', '', "{$n},400", '', $serveur_source);
                    while ($row = sql_fetch($res, $serveur_source)) {
                        $rows = array($row);
                        // lire un groupe de donnees si demande en option
                        // (permet un envoi par lot vers la destination)
                        if ($data_pool > 0) {
                            $s = strlen(serialize($row));
                            while ($s < $data_pool and $row = sql_fetch($res, $serveur_source)) {
                                $s += strlen(serialize($row));
                                $rows[] = $row;
                            }
                        }
                        // si l'enregistrement est deja en base, ca fera un echec ou un doublon
                        // mais si ca renvoie false c'est une erreur fatale => abandon
                        if ($inserer_copie($table, $rows, $desc_dest, $serveur_dest) === false) {
                            // forcer la sortie, charge a l'appelant de gerer l'echec
                            // copie finie
                            return true;
                        }
                        $status['tables_copiees'][$table] += count($rows);
                        if ($max_time and time() > $max_time) {
                            break;
                        }
                    }
                    if ($n == $status['tables_copiees'][$table]) {
                        break;
                    }
                    spip_log("recopie {$table} " . $status['tables_copiees'][$table], 'dump.' . _LOG_INFO_IMPORTANTE);
                    if ($callback_progression) {
                        $callback_progression($status['tables_copiees'][$table], 0, $table);
                    }
                    ecrire_fichier($status_file, serialize($status));
                    if ($max_time and time() > $max_time) {
                        return false;
                    }
                    // on a pas fini, mais le temps imparti est ecoule
                }
                if ($drop_source) {
                    sql_drop_table($table, '', $serveur_source);
                    spip_log("drop {$table} sur serveur source '{$serveur_source}'", 'dump.' . _LOG_INFO_IMPORTANTE);
                }
                $status['tables_copiees'][$table] = $status['tables_copiees'][$table] ? -$status['tables_copiees'][$table] : "zero";
                ecrire_fichier($status_file, serialize($status));
                spip_log("tables_recopiees " . implode(',', $status['tables_copiees']), 'dump.' . _LOG_INFO);
                if ($callback_progression) {
                    $callback_progression($status['tables_copiees'][$table], $status['tables_copiees'][$table], $table);
                }
            } else {
                if ($status['tables_copiees'][$table] < 0) {
                    spip_log("Table {$table} deja copiee : " . $status['tables_copiees'][$table], "dump." . _LOG_INFO);
                }
                if ($callback_progression) {
                    $callback_progression(0, $status['tables_copiees'][$table], "{$table}" . ((is_numeric($status['tables_copiees'][$table]) and $status['tables_copiees'][$table] >= 0) ? "[Echec]" : ""));
                }
            }
        } else {
            $status['errors'][] = "Impossible de lire la description de la table {$table}";
            ecrire_fichier($status_file, serialize($status));
            spip_log("Impossible de lire la description de la table {$table}", "dump." . _LOG_ERREUR);
        }
    }
    // si le nombre de tables envoyees n'est pas egal au nombre de tables demandees
    // abandonner
    if (count($status['tables_copiees']) < count($tables)) {
        spip_log("Nombre de tables copiees incorrect : " . count($status['tables_copiees']) . "/" . count($tables), "dump." . _LOG_ERREUR);
        $status['errors'][] = "Nombre de tables copiees incorrect : " . count($status['tables_copiees']) . "/" . count($tables);
        ecrire_fichier($status_file, serialize($status));
    }
    if ($detruire_copieur_si_besoin = charger_fonction('detruire_copieur_si_besoin', $racine_fonctions, true)) {
        $detruire_copieur_si_besoin($serveur_dest);
    } else {
        spip_log("Fonction '{$racine_fonctions}_detruire_copieur_si_besoin' inconnue.", 'dump.' . _LOG_INFO_IMPORTANTE);
    }
    // OK, copie complete
    return true;
}
/**
 * Fonction de désinstallation du plugin Souscription.
 *
 * @param string $nom_meta_base_version
 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
 * @return void
 **/
function souscription_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_souscriptions");
    sql_drop_table("spip_souscription_campagnes");
    /* Nettoyer les versionnages et forums */
    sql_delete("spip_versions", sql_in("objet", array('souscription')));
    sql_delete("spip_versions_fragments", sql_in("objet", array('souscription')));
    sql_delete("spip_forum", sql_in("objet", array('souscription')));
    effacer_meta($nom_meta_base_version);
}
예제 #25
0
/**
 * Desinstallation/suppression des tables breves
 *
 * @param string $nom_meta_base_version
 */
function breves_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_breves");
    effacer_meta("activer_breves");
    effacer_meta($nom_meta_base_version);
}
예제 #26
0
	function agenda_vider_tables() {
		include_spip('base/agenda_evenements');
		include_spip('base/abstract_sql');
		sql_drop_table("spip_evenements");
		sql_drop_table("spip_mots_evenements");
		sql_alter("TABLE spip_rubriques DROP COLUMN agenda");
		effacer_meta('agenda_base_version');
	}
예제 #27
0
/**
 * Desinstallation/suppression des tables petitions et signatures
 *
 * @param string $nom_meta_base_version
 */
function petitions_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_petitions");
    sql_drop_table("spip_signatures");
    effacer_meta($nom_meta_base_version);
}
예제 #28
0
/**
 * Desinstallation/suppression des tables revisions
 *
 * @param string $nom_meta_base_version
 */
function revisions_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_versions");
    sql_drop_table("spip_versions_fragments");
    effacer_meta($nom_meta_base_version);
}
예제 #29
0
파일: meta.php 프로젝트: genma/spip_ynh
/**
 * Une fonction pour supprimer une table de configuration supplementaire
 * si $force=true, on ne verifie pas qu'elle est bien vide
 * 
 * @param string $table
 * @param bool $force
 */
function supprimer_table_meta($table, $force = false)
{
    if ($table == 'meta') {
        return;
    }
    // interdit !
    if ($force or !sql_countsel("spip_{$table}")) {
        unset($GLOBALS[$table]);
        sql_drop_table("spip_{$table}");
        // vider le cache des tables
        $trouver_table = charger_fonction('trouver_table', 'base');
        $trouver_table('');
    }
}
예제 #30
0
/**
 * Desinstallation/suppression des tables mots et groupes de mots
 *
 * @param string $nom_meta_base_version
 */
function sites_vider_tables($nom_meta_base_version)
{
    sql_drop_table("spip_syndic");
    sql_drop_table("spip_syndic_articles");
    effacer_meta($nom_meta_base_version);
}