X-Git-Url: http://git.cyclocoop.org/?p=velocampus%2Fweb%2Fwww.git;a=blobdiff_plain;f=www%2Fplugins%2Fauto%2Faveline%2Fbase%2Faveline_installation.php;fp=www%2Fplugins%2Fauto%2Faveline%2Fbase%2Faveline_installation.php;h=a8796f38477b484cdc904db22d6e90e8b69adfd5;hp=0000000000000000000000000000000000000000;hb=80b4d3e85f78d402ed2e73f8f5d1bf4c19962eed;hpb=aaf970bf4cdaf76689ecc10609048e18d073820c diff --git a/www/plugins/auto/aveline/base/aveline_installation.php b/www/plugins/auto/aveline/base/aveline_installation.php new file mode 100644 index 0000000..a8796f3 --- /dev/null +++ b/www/plugins/auto/aveline/base/aveline_installation.php @@ -0,0 +1,233 @@ +0) { + // On remet au propre les parametres + foreach ($noisettes as $cle => $noisette) + $noisettes[$cle]['parametres'] = unserialize($noisette['parametres']); + + // On applique les mises à jour + $noisettes = aveline_maj_noisettes($noisettes,$version_actuelle); + + // Il faut serializer les paramètres avant mise en base + foreach ($noisettes as $cle => $noisette) + $noisettes[$cle]['parametres'] = serialize($noisette['parametres']); + + // On update la base + sql_replace_multi('spip_noisettes',$noisettes); + } + } + ecrire_meta($nom_meta_version_base, $version_actuelle=$version_cible, 'non'); + } + +} + +// Désinstallation +function aveline_vider_tables($nom_meta_version_base){ + // On efface la version enregistrée + effacer_meta($nom_meta_version_base); +} + +// Mise à jour des noisettes + +function aveline_maj_noisettes($noisettes, $version_actuelle) { + if (version_compare($current_version,'0.1','>') && version_compare($current_version,'0.3.0','<')){ + foreach ($noisettes as $cle => $noisette) + $noisettes[$cle]['parametres'] = str_replace('gn_public:','avelinepublic:',$noisettes[$cle]['parametres']); + } + if (version_compare($current_version,'0.3.2','<')){ + foreach ($noisettes as $cle => $noisette) { + if(in_array($noisette['noisette'],array( + 'auteur-articles', + 'liste_articles', + 'mot-articles', + 'page-recherche-articles', + 'liste_breves', + 'mot-breves', + 'page-recherche-breves', + 'liste_auteurs', + 'page-recherche-auteurs', + 'rubrique-sous_rubriques', + 'rubriques_secteur_langue', + 'rubriques_racine', + 'page-recherche-rubriques', + 'liste_forums', + 'mot-forums', + 'selecteur_archives' + ))){ + foreach($noisette['parametres'] as $param => $valeur) { + if ($param == 'tri' and $valeur == 'nb_articles') + $noisettes[$cle]['parametres'][$param] = 'compteur_articles'; + if ($param == 'senstri' and intval($valeur) == 0) + $noisettes[$cle]['parametres'][$param] = ''; + if ($param == 'senstri' and intval($valeur) == 1) + $noisettes[$cle]['parametres'][$param] = 'inverse'; + if ($param == 'tri' and $valeur == 'nbre_commentaires') + $noisettes[$cle]['parametres'][$param] = 'compteur_forum'; + if ($param == 'tri' and $valeur == 'note') + $noisettes[$cle]['parametres'][$param] = 'moyenne'; + if ($param == 'liste_articles') { + $noisettes[$cle]['parametres']['branche'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + if ($param == 'exclure_article_en_cours') { + $noisettes[$cle]['parametres']['exclure_objet_en_cours'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + if ($param == 'pas_selecteur_archives' and $valeur == 'annee_mois') + $noisettes[$cle]['parametres'][$param] = 'mois'; + if ($param == 'liste_breves') { + $noisettes[$cle]['parametres']['branche'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + if ($param == 'exclure_breve_en_cours') { + $noisettes[$cle]['parametres']['exclure_objet_en_cours'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + } + } + if(in_array($noisette['noisette'],array('page-recherche-articles','page-recherche-auteurs','page-recherche-rubriques','page-recherche-breves'))){ + $noisettes[$cle]['parametres']['tri'] = 'points'; + $noisettes[$cle]['parametres']['senstri'] = 'inverse'; + } + if(in_array($noisette['noisette'],array( + 'liste_documents', + 'article-documents', + 'rubrique-documents', + 'page-recherche-documents' + ))){ + foreach($noisette['parametres'] as $param => $valeur) { + if ($param == 'senstri' and intval($valeur) == 0) + $noisettes[$cle]['parametres'][$param] = ''; + if ($param == 'senstri' and intval($valeur) == 1) + $noisettes[$cle]['parametres'][$param] = 'inverse'; + } + } + } + } + if (version_compare($current_version,'0.3.3','<')){ + foreach ($noisettes as $cle => $noisette) { + if(in_array($noisette['noisette'],array( + 'liste_documents', + 'article-documents', + 'rubrique-documents', + 'page-recherche-documents' + ))){ + foreach($noisette['parametres'] as $param => $valeur) { + if ($param == 'tri' and $valeur == 'multi titre') + $noisettes[$cle]['parametres'][$param] = 'titre'; + } + } + } + } + if (version_compare($current_version,'0.3.4','<')){ + foreach ($noisettes as $cle => $noisette) { + if(in_array($noisette['noisette'],array( + 'auteur-articles', + 'liste_articles', + 'mot-articles', + 'page-recherche-articles', + 'liste_breves', + 'mot-breves', + 'page-recherche-breves', + 'liste_auteurs', + 'page-recherche-auteurs', + 'rubrique-sous_rubriques', + 'rubriques_secteur_langue', + 'rubriques_racine', + 'page-recherche-rubriques', + 'liste_forums', + 'mot-forums', + 'selecteur_archives' + ))){ + foreach($noisette['parametres'] as $param => $valeur) { + if ($param == 'tri' and $valeur == 'num titre') + $noisettes[$cle]['parametres'][$param] = 'titre'; + } + } + } + } + if (version_compare($current_version,'0.3.5','<')){ + foreach ($noisettes as $cle => $noisette) { + if(in_array($noisette['noisette'],array( + 'liste_sites', + 'mot-sites', + 'page-recherche-sites', + 'liste_syndic_articles', + 'site-syndic_articles', + 'page-recherche-syndic_articles' + ))){ + foreach($noisette['parametres'] as $param => $valeur) { + if ($param == 'liste_sites') { + $noisettes[$cle]['parametres']['branche'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + if ($param == 'exclure_site_en_cours') { + $noisettes[$cle]['parametres']['exclure_objet_en_cours'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + if ($param == 'liste_syndic_articles') { + $noisettes[$cle]['parametres']['branche'] = $noisettes[$cle]['parametres'][$param]; + unset($noisettes[$cle]['parametres'][$param]); + } + } + } + } + } + if (version_compare($current_version,'0.3.6','<')){ + foreach ($noisettes as $cle => $noisette) + $noisettes[$cle]['parametres'] = str_replace('aveline_public:','avelinepublic:',$noisettes[$cle]['parametres']); + } + if (version_compare($current_version,'0.3.7')==0){ + // Réparation d'une boulette qui ne concerne que la version 0.3.7 + foreach ($noisettes as $cle => $noisette) { + $noisettes[$cle]['parametres'] = str_replace('avelinepublic:colon2','::',$noisettes[$cle]['parametres']); + $noisettes[$cle]['parametres'] = str_replace('avelinepublic:gt','>',$noisettes[$cle]['parametres']); + } + } + if (version_compare($current_version,'0.3.8','<')){ + foreach ($noisettes as $cle => $noisette) { + foreach($noisette['parametres'] as $param => $valeur) { + if (in_array($param,array( + 'texte_devant_mots_cles', + 'liste_texte_devant_mots_cles', + 'texte_devant_rubrique', + 'liste_texte_devant_rubrique', + 'texte_devant_article', + 'liste_texte_devant_article' + ))) { + if ($valeur=='::') + $noisettes[$cle]['parametres'][$param] = 'avelinepublic:colon2'; + if ($valeur=='>') + $noisettes[$cle]['parametres'][$param] = 'avelinepublic:gt'; + } + } + } + } + return $noisettes; +} + +?>