Changeset 111135 in spip-zone


Ignore:
Timestamp:
Jul 15, 2018, 9:02:21 PM (3 years ago)
Author:
rastapopoulos@…
Message:

On fait une branche expe, pour essayer d'y voir plus clair. Et en premier on déplace la config plus proprement avec une case par id_rubrique, pas mélangé dans le nom des champs genre truc_123. Pour le défaut, on a une clé defaut. Et donc on modifie le code pour appeler ce nouveau rangement.

Location:
_plugins_/multidomaines/branches/nettoyage
Files:
10 edited
1 copied

Legend:

Unmodified
Added
Removed
  • _plugins_/multidomaines/branches/nettoyage/balise/url_auteur_absolu.php

    r105400 r111135  
    33function balise_URL_AUTEUR_ABSOLU_dist($p) {
    44        include_spip('balise/url_');
    5         $p->code              = 'lire_config("multidomaines/editer_url").' . generer_generer_url('auteur', $p);
     5        $p->code              = 'lire_config("multidomaines/defaut/url").' . generer_generer_url('auteur', $p);
    66        $p->interdire_scripts = false;
    77
  • _plugins_/multidomaines/branches/nettoyage/balise/url_document_absolu.php

    r105400 r111135  
    33function balise_URL_DOCUMENT_ABSOLU_dist($p) {
    44        include_spip('balise/url_');
    5         $p->code              = 'lire_config("multidomaines/editer_url").' . generer_generer_url('document', $p);
     5        $p->code              = 'lire_config("multidomaines/defaut/url").' . generer_generer_url('document', $p);
    66        $p->interdire_scripts = false;
    77
  • _plugins_/multidomaines/branches/nettoyage/balise/url_mot_absolu.php

    r105400 r111135  
    33function balise_URL_MOT_ABSOLU_dist($p) {
    44        include_spip('balise/url_');
    5         $p->code              = 'lire_config("multidomaines/editer_url").' . generer_generer_url('mot', $p);
     5        $p->code              = 'lire_config("multidomaines/defaut/url").' . generer_generer_url('mot', $p);
    66        $p->interdire_scripts = false;
    77
  • _plugins_/multidomaines/branches/nettoyage/balise/url_page_absolu.php

    r105400 r111135  
    99                $p->code .= ',""';
    1010        }
    11         $p->code              = 'lire_config("multidomaines/editer_url").generer_url_public(' . $p->code . ',false,true)';
     11        $p->code              = 'lire_config("multidomaines/defaut/url").generer_url_public(' . $p->code . ',false,true)';
    1212        $p->interdire_scripts = true;
    1313
  • _plugins_/multidomaines/branches/nettoyage/formulaires/configurer_multidomaines.html

    r106095 r111135  
    1212                                                <:multidomaines:label_editer_url:>
    1313                                        </label>
    14                                         <input type="text" name="editer_url" class="text" id="editer_url" value="#ENV{editer_url}"/>
     14                                        <input type="text" name="defaut[url]" class="text" id="editer_url" value="#ENV{defaut/url}"/>
    1515                                </li>
    1616                                <li class="editer squelette">
     
    1818                                                <:multidomaines:label_squelette:>
    1919                                        </label>
    20                                         <input type="text" name="squelette" class="text" id="squelette" value="#ENV{squelette}"/>
     20                                        <input type="text" name="defaut[squelette]" class="text" id="squelette" value="#ENV{defaut/squelette}"/>
    2121                                </li>
    2222                                <BOUCLE_multiracine(RUBRIQUES){id_parent=#VAL{_MULTIDOMAINE_RACINE}|constant|sinon{0}}{tous} {par num titre, titre}>
     
    2929                                                                        <:multidomaines:label_editer_url_secteur:>
    3030                                                                </label>
    31                                                                 <input type="text" name="editer_url_#ID_RUBRIQUE" class="text" id="editer_url_#ID_RUBRIQUE" value="#ENV{editer_url_#ID_RUBRIQUE}"/>
     31                                                                <input type="text" name="#ID_RUBRIQUE[url]" class="text" id="editer_url_#ID_RUBRIQUE" value="#ENV{#ID_RUBRIQUE/url}"/>
    3232                                                        </li>
    3333                                                        <li class="editer squelette">
     
    3535                                                                        <:multidomaines:label_squelette_secteur:>
    3636                                                                </label>
    37                                                                 <input type="text" name="squelette_#ID_RUBRIQUE" class="text" id="squelette_#ID_RUBRIQUE" value="#ENV{squelette_#ID_RUBRIQUE}"/>
     37                                                                <input type="text" name="#ID_RUBRIQUE[squelette]" class="text" id="squelette_#ID_RUBRIQUE" value="#ENV{#ID_RUBRIQUE/squelette}"/>
    3838                                                        </li>
    3939                                                </ul>
     
    5050                                                                                                <:multidomaines:label_editer_url_rubrique:>
    5151                                                                                        </label>
    52                                                                                         <input type="text" name="editer_url_#ID_RUBRIQUE" class="text" id="editer_url_#ID_RUBRIQUE" value="#ENV{editer_url_#ID_RUBRIQUE}"/>
     52                                                                                        <input type="text" name="#ID_RUBRIQUE[url]" class="text" id="editer_url_#ID_RUBRIQUE" value="#ENV{#ID_RUBRIQUE/url}"/>
    5353                                                                                </li>
    5454                                                                                <li class="editer squelette">
     
    5656                                                                                                <:multidomaines:label_squelette_rubrique:>
    5757                                                                                        </label>
    58                                                                                         <input type="text" name="squelette_#ID_RUBRIQUE" class="text" id="squelette_#ID_RUBRIQUE" value="#ENV{squelette_#ID_RUBRIQUE}"/>
     58                                                                                        <input type="text" name="#ID_RUBRIQUE[squelette]" class="text" id="squelette_#ID_RUBRIQUE" value="#ENV{#ID_RUBRIQUE/squelette}"/>
    5959                                                                                </li>
    6060                                                                        </ul>
  • _plugins_/multidomaines/branches/nettoyage/multidomaines_administrations.php

    r105400 r111135  
    1010        $maj = array();
    1111       
     12        $maj['0.1.0'] = array(
     13                array('multidomaines_maj_0_1_0'),
     14        );
     15       
    1216        include_spip('base/upgrade');
    1317        maj_plugin($nom_meta_base_version, $version_cible, $maj);
     
    1519}
    1620
     21function multidomaines_maj_0_1_0() {
     22        include_spip('inc/config');
     23       
     24        $config = lire_config('multidomaines');
     25        $nouvelle_config = array();
     26       
     27        if (isset($config['editer_url'])) {
     28                $nouvelle_config['defaut']['url'] = $config['editer_url'];
     29                unset($config['editer_url']);
     30        }
     31        if (isset($config['squelette'])) {
     32                $nouvelle_config['defaut']['squelette'] = $config['squelette'];
     33                unset($config['squelette']);
     34        }
     35       
     36        foreach ($config as $champ => $valeur) {
     37                if ($valeur and strpos($champ, 'editer_url_') === 0) {
     38                        $id_rubrique = explode('_', $champ);
     39                        $id_rubrique = array_pop($id_rubrique);
     40                        $nouvelle_config[$id_rubrique]['url'] = $valeur;
     41                }
     42                elseif ($valeur and strpos($champ, 'squelette_') === 0) {
     43                        $id_rubrique = explode('_', $champ);
     44                        $id_rubrique = array_pop($id_rubrique);
     45                        $nouvelle_config[$id_rubrique]['squelette'] = $valeur;
     46                }
     47        }
     48       
     49        effacer_meta('multidomaines');
     50        ecrire_config('multidomaines', $nouvelle_config);
     51}
     52
    1753function multidomaines_vider_tables($nom_meta_base_version) {
    1854        effacer_meta($nom_meta_base_version);
  • _plugins_/multidomaines/branches/nettoyage/multidomaines_fonctions.php

    r110065 r111135  
    2727        // remonter les rubriques jusqu'à trouver une url multidomaine
    2828        include_spip('inc/config');
    29         $url = lire_config('multidomaines/editer_url_' . $id_rubrique);
     29        $url = lire_config("multidomaines/$id_rubrique/url");
    3030        $id_rubrique_courante = $id_rubrique;
    3131        while (!$url && $id_rubrique_courante) {
    3232                $id_parent = sql_getfetsel("id_parent", "spip_rubriques", "id_rubrique=" . intval($id_rubrique_courante));
    33                 $url = lire_config('multidomaines/editer_url_' . $id_parent);
     33                $url = lire_config("multidomaines/$id_parent/url");
    3434                $id_rubrique_courante = $id_parent;
    3535        }
     
    3737        // sinon, url par défaut
    3838        if (empty($url)) {
    39                 $url = lire_config('multidomaines/editer_url');
     39                $url = lire_config('multidomaines/defaut/url');
    4040        }
    4141        if (empty($url)) {
  • _plugins_/multidomaines/branches/nettoyage/multidomaines_options.php

    r110065 r111135  
    1919
    2020if (is_array($options)) {
    21         foreach ($options as $cle => $valeur) {
    22                 if (strpos($cle, 'editer_url_') === 0) {
    23                         if (empty($valeur)) {
    24                                 $valeur = $options['editer_url'];
     21        foreach ($options as $id_rubrique => $config) {
     22                if ($id_rubrique != 'defaut') {
     23                        if (!isset($config['url']) or !$config['url']) {
     24                                $url = $options['defaut']['url'];
    2525                        }
    26                         list(, , $id_secteur) = explode('_', $cle);
    27                         $partie_url = parse_url($valeur);
     26                        else {
     27                                $url = $config['url'];
     28                        }
     29                       
     30                        $partie_url = parse_url($url);
    2831                        if (!isset($partie_url['port'])) {
    2932                                $partie_url['port'] = $partie_url['scheme'] == 'https' ? 443 : 80;
    3033                        }
    3134                        if ($partie_url['host'] == $_SERVER['HTTP_HOST'] AND $partie_url['port'] == $_SERVER['SERVER_PORT']) {
    32                                 if ($options['squelette_' . $id_secteur]) {
    33                                         $GLOBALS['multidomaine_id_secteur_courant'] = $id_secteur;
    34                                         $GLOBALS['dossier_squelettes'] = trim($GLOBALS['dossier_squelettes'] . ':' . $options['squelette_' . $id_secteur], ':');
     35                                if (isset($config['squelette']) and $config['squelette']) {
     36                                        $GLOBALS['multidomaine_id_secteur_courant'] = $id_rubrique;
     37                                        $GLOBALS['dossier_squelettes'] = trim($GLOBALS['dossier_squelettes'] . ':' . $config['squelette'], ':');
    3538                                        $GLOBALS["multidomaine_site_principal"] = false;
    3639                                }
     
    4447
    4548function multidomaines_squelettespardefaut_dist() {
    46 
    4749        if (function_exists('multidomaines_squelettespardefaut')) {
    4850                return multidomaines_squelettespardefaut();
     
    5355        if (strpos($_SERVER['HTTP_HOST'], '.') === false) {
    5456                // ex: localhost
    55                 $dossiers = ':' . lire_config('multidomaines/squelette') . '/' . $_SERVER['HTTP_HOST'];
     57                $dossiers = ':' . lire_config('multidomaines/defaut/squelette') . '/' . $_SERVER['HTTP_HOST'];
    5658        } else {
    5759                $parties_domaine = explode('.', $_SERVER['HTTP_HOST']);
    5860                $extention = array_pop($parties_domaine);
    5961                do {
    60                         $base = ':' . lire_config('multidomaines/squelette') . '/' . implode('.', $parties_domaine);
     62                        $base = ':' . lire_config('multidomaines/defaut/squelette') . '/' . implode('.', $parties_domaine);
    6163                        $dossiers_port .= $base . '.' . $extention . '.' . $_SERVER['SERVER_PORT'];
    6264                        $dossiers_port .= $base . '.' . $_SERVER['SERVER_PORT'];
  • _plugins_/multidomaines/branches/nettoyage/multidomaines_pipelines.php

    r105400 r111135  
    5656                                $url_multidom = calculer_URL_SECTEUR($id_rubrique);
    5757                                if (!$url_multidom) {
    58                                         $url_multidom = lire_config('multidomaines/editer_url');
     58                                        $url_multidom = lire_config('multidomaines/defaut/url');
    5959                                }
    6060                                $url_spip         = generer_url_entite_absolue($objet_num, 'article');
  • _plugins_/multidomaines/branches/nettoyage/paquet.xml

    r110673 r111135  
    77        logo="prive/themes/spip/images/multidomaines-72.png"
    88        documentation="https://contrib.spip.net/?article4182"
    9         schema="0.0.2"
     9        schema="0.1.0"
    1010>
    1111        <nom>Multidomaines</nom>
Note: See TracChangeset for help on using the changeset viewer.