Changeset 74705 in spip-zone


Ignore:
Timestamp:
Aug 11, 2013, 1:45:24 PM (6 years ago)
Author:
joseph@…
Message:

Dans le pipeline ieconfig_metas, pouvoir spécifier, avec *, un préfixe de métas à importer/exporter. Ainsi, si on indique "pre_*", toutes les métas commencant par "pre_" seront exportées.

Location:
_plugins_/ieconfig/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/ieconfig/trunk/formulaires/ieconfig_export.php

    r67136 r74705  
    130130                        $export_plugin = array();
    131131                        if(isset($data['metas_brutes']))
    132                                 foreach(explode(',',$data['metas_brutes']) as $meta)
    133                                         if (isset($GLOBALS['meta'][$meta]))
     132                                foreach(explode(',',$data['metas_brutes']) as $meta) {
     133                                        // On teste le cas ou un prefixe est indique (dernier caractere est *)
     134                                        if (substr($meta,-1)=='*') {
     135                                                $p = substr($meta,0,-1);
     136                                                foreach ($GLOBALS['meta'] as $m => $v) {
     137                                                        if (substr($m,0,strlen($p))==$p)
     138                                                                $export_plugin[$m] = $v;
     139                                                }
     140                                        } elseif (isset($GLOBALS['meta'][$meta]))
    134141                                                $export_plugin[$meta] = $GLOBALS['meta'][$meta];
     142                                }
    135143                        if(isset($data['metas_serialize']))
    136                                 foreach(explode(',',$data['metas_serialize']) as $meta)
    137                                         if (isset($GLOBALS['meta'][$meta]))
     144                                foreach(explode(',',$data['metas_serialize']) as $meta) {
     145                                        // On teste le cas ou un prefixe est indique (dernier caractere est *)
     146                                        if (substr($meta,-1)=='*') {
     147                                                $p = substr($meta,0,-1);
     148                                                foreach ($GLOBALS['meta'] as $m => $v) {
     149                                                        if (substr($m,0,strlen($p))==$p)
     150                                                                $export_plugin[$m] = unserialize($v);
     151                                                }
     152                                        } elseif (isset($GLOBALS['meta'][$meta]))
    138153                                                $export_plugin[$meta] = unserialize($GLOBALS['meta'][$meta]);
     154                                }
    139155                        if (count($export_plugin)>0)
    140156                                $export[$prefixe] = $export_plugin;
  • _plugins_/ieconfig/trunk/formulaires/ieconfig_import.php

    r74593 r74705  
    182182                        if (in_array($prefixe, $import_metas) && isset($config[$prefixe])){
    183183                                if (isset($data['metas_brutes']))
    184                                         foreach (explode(',', $data['metas_brutes']) as $meta)
    185                                                 if (isset($config[$prefixe][$meta]))
     184                                        foreach (explode(',', $data['metas_brutes']) as $meta) {
     185                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     186                                                if (substr($meta,-1)=='*') {
     187                                                        $p = substr($meta,0,-1);
     188                                                        foreach ($config[$prefixe] as $m => $v) {
     189                                                                if (substr($m,0,strlen($p))==$p)
     190                                                                        ecrire_config($m . '/', $v);
     191                                                        }
     192                                                } elseif (isset($config[$prefixe][$meta]))
    186193                                                        ecrire_config($meta . '/', $config[$prefixe][$meta]);
     194                                        }
    187195                                if (isset($data['metas_serialize']))
    188                                         foreach (explode(',', $data['metas_serialize']) as $meta)
    189                                                 if (isset($config[$prefixe][$meta]))
     196                                        foreach (explode(',', $data['metas_serialize']) as $meta) {
     197                                                // On teste le cas ou un prefixe est indique (dernier caractere est *)
     198                                                if (substr($meta,-1)=='*') {
     199                                                        $p = substr($meta,0,-1);
     200                                                        foreach ($config[$prefixe] as $m => $v) {
     201                                                                if (substr($m,0,strlen($p))==$p)
     202                                                                        ecrire_config($m . '/', serialize($v));
     203                                                        }
     204                                                } elseif (isset($config[$prefixe][$meta]))
    190205                                                        ecrire_config($meta . '/', serialize($config[$prefixe][$meta]));
     206                                        }
    191207                        }
    192208                }
  • _plugins_/ieconfig/trunk/paquet.xml

    r74593 r74705  
    22        prefix="ieconfig"
    33        categorie="maintenance"
    4         version="1.2.2"
    5         etat="test"
     4        version="1.3.0"
     5        etat="stable"
    66        compatibilite="[3.0.0;3.0.99]"
    77        logo="prive/themes/spip/images/ieconfig-32.png"
Note: See TracChangeset for help on using the changeset viewer.