Changeset 111257 in spip-zone


Ignore:
Timestamp:
Aug 3, 2018, 8:08:25 AM (3 years ago)
Author:
riedel.nobuyuki@…
Message:

Le plugin SoyezCréateurs? utilise le pipeline ieconfig_meta désormais

La fonctions dans soyezcreateurs_fonctions_ieconfig.php fait une importation en prenant en entrée le chemin du fichier ./fichier.yaml et l'option à utiliser.
Les options disponible ne changent pas

Location:
_squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/paquet.xml

    r111219 r111257  
    8686        <pipeline nom="jqueryui_plugins" inclure="soyezcreateurs_pipelines.php" />
    8787        <pipeline nom="formulaire_traiter" inclure="soyezcreateurs_pipelines.php" />
    88         <!-- ajout pipeline ieconfig -->
    89         <!--
     88       
     89        <!-- ajout pipeline ieconfig -->       
    9090        <pipeline nom="ieconfig_metas" inclure="soyezcreateurs_ieconfig_metas.php" />
    91         -->
    92         <pipeline nom="ieconfig" inclure="soyezcreateurs_ieconfig.php" />
     91
     92        <!-- <pipeline nom="ieconfig" inclure="soyezcreateurs_ieconfig.php" /> -->
    9393        <pipeline nom="noizetier_blocs_defaut" inclure="soyezcreateurs_pipelines.php" />
    9494       
  • _squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/prive/exec/sc_import.html

    r111021 r111257  
    11<h1><:soyezcreateursprive:ieconfig_import_spe:></h1>
    2 <div id="couleurs" class="ajax">
    3 #FORMULAIRE_IECONFIG_IMPORT_SPECIFIQUE_COULEURS{"couleurs"}
    4 </div>
    5 <div id="police" class="ajax">
    6 #FORMULAIRE_IECONFIG_IMPORT_SPECIFIQUE_COULEURS{"police"}
    7 </div>
    8 <div id="layout" class="ajax">
    9 #FORMULAIRE_IECONFIG_IMPORT_SPECIFIQUE_COULEURS{"layout"}
    10 </div>
    11 <script type='text/javascript' src='jwplayer.js'></script>
    12 <script type='text/javascript'>
    13         function idRandom() {
    14                 var length = 9;
    15                 var prefix = 'id-formulaire-import-'; // To be 100% sure id starts with letter
    16                 // Convert it to base 36 (numbers + letters), and grab the first 9 characters
    17                 // after the decimal.
    18                 var id = prefix + Math.random().toString(36).substr(2, length);
    19                 return id;
     2
     3<ul >
     4        [
     5        (#AUTORISER{webmestre}|oui)<li><a href="./?exec=sc_import&fichier=soyezcreateurs_couleurs_cfg_bleu&blanc&rouge&option=fusion">Je veux importer le mode cogniac de SoyezCréateurs</a></li>
     6        ]
     7
     8
     9
     10<?php
     11$fichier = _request('fichier');
     12$option = _request('option');
     13if (isset($fichier) and isset($option)) {
     14        include_spip('soyezcreateurs_fonctions_ieconfig');
     15        $ok = sc_ieconfig_importer_fichier($fichier,$option);
     16        if ($ok) {
     17                echo "<p>Impotation réussie"
    2018        }
    21         document.getElementById('couleurs').id = idRandom();
    22         document.getElementById('police').id = idRandom();
    23         document.getElementById('layout').id = idRandom();
    24 </script>
     19}
     20?>
     21</ul>
  • _squelettes_/soyezcreateurs_net/trunk/plugins/soyezcreateurs/soyezcreateurs_fonctions_ieconfig.php

    r111110 r111257  
    239239        include_spip('inc/yaml');
    240240        $config = yaml_decode_file($chemin);
    241         $config = $config['soyezcreateurs'];
     241       
     242        // Gestion des plugins utilisant le pipeline ieconfig_metas
     243        foreach (pipeline('ieconfig_metas', array()) as $prefixe => $data) {
     244                //Si on veut une importation avec écrasement
     245                if (isset($config[$prefixe])) {
     246                        if ($option === 'ecrase') {
     247                               
     248                                if (isset($data['metas_brutes'])) {
     249                                        foreach (explode(',', $data['metas_brutes']) as $meta) {
     250                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     251                                                if (substr($meta, -1) == '*') {
     252                                                        $p = substr($meta, 0, -1);
     253                                                        foreach ($config[$prefixe] as $m => $v) {
     254                                                                if (substr($m, 0, strlen($p)) == $p) {
     255                                                                        ecrire_config($m . '/', $v);
     256                                                                }
     257                                                        }
     258                                                } elseif (isset($config[$prefixe][$meta])) {
     259                                                        ecrire_config($meta . '/', $config[$prefixe][$meta]);
     260                                                }
     261                                        }
     262                                }
     263                                if (isset($data['metas_serialize'])) {
     264                                        foreach (explode(',', $data['metas_serialize']) as $meta) {
     265                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     266                                                if (substr($meta, -1) == '*') {
     267                                                        $p = substr($meta, 0, -1);
     268                                                        foreach ($config[$prefixe] as $m => $v) {
     269                                                                if (substr($m, 0, strlen($p)) == $p) {
     270                                                                        ecrire_config($m . '/', serialize($v));
     271                                                                }
     272                                                        }
     273                                                } elseif (isset($config[$prefixe][$meta])) {
     274                                                        ecrire_config($meta . '/', serialize($config[$prefixe][$meta]));
     275                                                }
     276                                        }
     277                                }
     278                        }
     279                        //Si on veut une importation avec fusion
     280                        if ($option === 'fusion') {
     281                               
     282                                if (isset($data['metas_brutes'])) {
     283                                        foreach (explode(',', $data['metas_brutes']) as $meta) {
     284                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     285                                                if (substr($meta, -1) == '*') {
     286                                                        $p = substr($meta, 0, -1);
     287                                                        foreach ($config[$prefixe] as $m => $v) {
     288                                                                if (substr($m, 0, strlen($p)) == $p) {
     289                                                                        $sc = lire_config($sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     290                                                                        $config[$prefixe][$meta] = array_merge($sc,$config[$prefixe][$meta]);
     291                                                                        ecrire_config($sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     292                                                                }
     293                                                        }
     294                                                } elseif (isset($config[$prefixe][$meta])) {
     295                                                        $sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     296                                                        $config[$prefixe][$meta] = array_merge($sc,$config[$prefixe][$meta]);
     297                                                        ecrire_config($meta . '/', $config[$prefixe][$meta]);
     298                                                }
     299                                        }
     300                                }
     301                                if (isset($data['metas_serialize'])) {
     302                                        foreach (explode(',', $data['metas_serialize']) as $meta) {
     303                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     304                                                if (substr($meta, -1) == '*') {
     305                                                        $p = substr($meta, 0, -1);
     306                                                        foreach ($config[$prefixe] as $m => $v) {
     307                                                                if (substr($m, 0, strlen($p)) == $p) {
     308                                                                        $sc = lire_config($sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     309                                                                        $config[$prefixe][$meta] = array_merge($sc,$config[$prefixe][$meta]);
     310                                                                        ecrire_config($m . '/', serialize($v));
     311                                                                }
     312                                                        }
     313                                                } elseif (isset($config[$prefixe][$meta])) {
     314                                                        $sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     315                                                        $config[$prefixe][$meta] = array_merge($sc,$config[$prefixe][$meta]);
     316                                                        ecrire_config($meta . '/', serialize($config[$prefixe][$meta]));
     317                                                }
     318                                        }
     319                                }
     320                        }
     321                        //Si on veut une importation avec fusion_inv
     322                        if ($option === 'fusion_inv') {
     323                                if (isset($data['metas_brutes'])) {
     324                                        foreach (explode(',', $data['metas_brutes']) as $meta) {
     325                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     326                                                if (substr($meta, -1) == '*') {
     327                                                        $p = substr($meta, 0, -1);
     328                                                        foreach ($config[$prefixe] as $m => $v) {
     329                                                                if (substr($m, 0, strlen($p)) == $p) {
     330                                                                        $sc = lire_config($sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     331                                                                        $config[$prefixe][$meta] = array_merge($config[$prefixe][$meta],$sc);
     332                                                                        ecrire_config($m . '/', $v);
     333                                                                }
     334                                                        }
     335                                                } elseif (isset($config[$prefixe][$meta])) {
     336                                                        $sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     337                                                        $config[$prefixe][$meta] = array_merge($config[$prefixe][$meta],$sc);
     338                                                        ecrire_config($meta . '/', $config[$prefixe][$meta]);
     339                                                }
     340                                        }
     341                                }
     342                                if (isset($data['metas_serialize'])) {
     343                                        foreach (explode(',', $data['metas_serialize']) as $meta) {
     344                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     345                                                if (substr($meta, -1) == '*') {
     346                                                        $p = substr($meta, 0, -1);
     347                                                        foreach ($config[$prefixe] as $m => $v) {
     348                                                                if (substr($m, 0, strlen($p)) == $p) {
     349                                                                        $sc = lire_config($sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     350                                                                        $config[$prefixe][$meta] = array_merge($config[$prefixe][$meta],$sc);
     351                                                                        ecrire_config($m . '/', serialize($v));
     352                                                                }
     353                                                        }
     354                                                } elseif (isset($config[$prefixe][$meta])) {
     355                                                        $sc = lire_config($meta . '/', serialize($config[$prefixe][$meta]));
     356                                                        $config[$prefixe][$meta] = array_merge($config[$prefixe][$meta],$sc);
     357                                                        ecrire_config($meta . '/', serialize($config[$prefixe][$meta]));
     358                                                }
     359                                        }
     360                                }
     361                        }
     362                }
     363        }               
     364        if ($message_erreur != '') {
     365                return array('message_erreur' => $message_erreur);
     366        } else {
     367                return array('message_ok' => _T('ieconfig:message_ok_import'));
     368        }
     369       
     370       
    242371        //On appelle la fonction d'importation des configurations
    243         soyezcreateurs_importer_configuration($option,$option,$option,$option,$config);
    244 }
    245 
     372        return soyezcreateurs_importer_configuration($option,$option,$option,$option,$config);
     373}
     374
Note: See TracChangeset for help on using the changeset viewer.