--- /dev/null
+<?php\r
+if (!defined("_ECRIRE_INC_VERSION")) return;\r
+\r
+/**\r
+ * Pipeline ieconfig pour l'import/export de configuration\r
+ *\r
+ * @param array $flux\r
+ * @return array\r
+ */\r
+function noizetier_ieconfig($flux){\r
+ $action = $flux['args']['action'];\r
+ \r
+ // Formulaire d'export\r
+ if ($action=='form_export') {\r
+ $saisies = array(\r
+ array(\r
+ 'saisie' => 'fieldset',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export',\r
+ 'label' => '<:noizetier:editer_noizetier_titre:>',\r
+ 'icone' => 'img/noizetier-24.png'\r
+ ),\r
+ 'saisies' => array(\r
+ array(\r
+ 'saisie' => 'explication',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export_explication',\r
+ 'texte' => '<:noizetier:ieconfig_noizetier_export_explication:>'\r
+ )\r
+ ),\r
+ array(\r
+ 'saisie' => 'oui_non',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export_option',\r
+ 'label' => '<:noizetier:ieconfig_noizetier_export_option:>',\r
+ 'defaut' => ''\r
+ )\r
+ )\r
+ )\r
+ )\r
+ );\r
+ $flux['data'] = array_merge($flux['data'],$saisies);\r
+ }\r
+ \r
+ // Tableau d'export\r
+ if ($action=='export' && _request('noizetier_export_option')=='on') {\r
+ include_spip('inc/noizetier');\r
+ $flux['data']['noizetier'] = noizetier_tableau_export();\r
+ }\r
+ \r
+ // Formulaire d'import\r
+ if ($action=='form_import' && isset($flux['args']['config']['noizetier'])) {\r
+ $texte_explication = '';\r
+ if (isset($flux['args']['config']['noizetier']['noisettes'])) {\r
+ $texte_explication .= _T('noizetier:formulaire_liste_pages_config');\r
+ $pages = array();\r
+ foreach($flux['args']['config']['noizetier']['noisettes'] as $noisette)\r
+ $pages[] = $noisette['type'].'-'.$noisette['composition'];\r
+ $pages = array_unique($pages);\r
+ foreach ($pages as $page)\r
+ $texte_explication .= '<br />» '.rtrim($page,'-');\r
+ }\r
+ if (isset($flux['args']['config']['noizetier']['noizetier_compositions'])) {\r
+ $texte_explication .= '<br />'._T('noizetier:formulaire_liste_compos_config');\r
+ foreach($flux['args']['config']['noizetier']['noizetier_compositions'] as $type => $compositions)\r
+ foreach ($compositions as $composition => $compo)\r
+ $texte_explication .= '<br />» '.$type.'-'.$composition;\r
+ }\r
+ if (isset($flux['args']['config']['noizetier']['noizetier_compositions'])) {\r
+ $saisies = array(\r
+ array(\r
+ 'saisie' => 'fieldset',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export',\r
+ 'label' => '<:noizetier:editer_noizetier_titre:>',\r
+ 'icone' => 'img/noizetier-24.png'\r
+ ),\r
+ 'saisies' => array(\r
+ array(\r
+ 'saisie' => 'explication',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export_explication',\r
+ 'texte' => $texte_explication\r
+ )\r
+ ),\r
+ array(\r
+ 'saisie' => 'selection',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_type_import',\r
+ 'label' => '<:noizetier:formulaire_type_import:>',\r
+ 'explication' => '<:noizetier:formulaire_type_import_explication:>',\r
+ 'defaut' => '',\r
+ 'option_intro' => '<:noizetier:ieconfig_ne_pas_importer:>',\r
+ 'datas' => array(\r
+ 'fusion' => '<:noizetier:formulaire_import_fusion:>',\r
+ 'remplacer' => '<:noizetier:formulaire_import_remplacer:>'\r
+ )\r
+ )\r
+ ),\r
+ array(\r
+ 'saisie' => 'selection',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_import_compos',\r
+ 'label' => '<:noizetier:formulaire_import_compos:>',\r
+ 'defaut' => 'oui',\r
+ 'cacher_option_intro' => 'oui',\r
+ 'datas' => array(\r
+ 'oui' => '<:noizetier:oui:>',\r
+ 'non' => '<:noizetier:non:>'\r
+ )\r
+ )\r
+ )\r
+ )\r
+ )\r
+ );\r
+ } else {\r
+ $saisies = array(\r
+ array(\r
+ 'saisie' => 'fieldset',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export',\r
+ 'label' => '<:noizetier:editer_noizetier_titre:>',\r
+ 'icone' => 'img/noizetier-24.png'\r
+ ),\r
+ 'saisies' => array(\r
+ array(\r
+ 'saisie' => 'explication',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_export_explication',\r
+ 'texte' => $texte_explication\r
+ )\r
+ ),\r
+ array(\r
+ 'saisie' => 'selection',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_type_import',\r
+ 'label' => '<:noizetier:formulaire_type_import:>',\r
+ 'explication' => '<:noizetier:formulaire_type_import_explication:>',\r
+ 'defaut' => '',\r
+ 'option_intro' => '<:noizetier:ieconfig_ne_pas_importer:>',\r
+ 'datas' => array(\r
+ 'fusion' => '<:noizetier:formulaire_import_fusion:>',\r
+ 'remplacer' => '<:noizetier:formulaire_import_remplacer:>'\r
+ )\r
+ )\r
+ ),\r
+ array(\r
+ 'saisie' => 'hidden',\r
+ 'options' => array(\r
+ 'nom' => 'noizetier_import_compos',\r
+ 'defaut' => 'non',\r
+ )\r
+ )\r
+ )\r
+ )\r
+ );\r
+ }\r
+ $flux['data'] = array_merge($flux['data'],$saisies);\r
+ }\r
+ \r
+ // Import de la configuration\r
+ if ($action=='import' && isset($flux['args']['config']['noizetier']) && _request('noizetier_type_import')!='') {\r
+ include_spip('inc/noizetier');\r
+ if (!noizetier_importer_configuration(_request('noizetier_type_import'),_request('noizetier_import_compos'),$flux['args']['config']['noizetier']))\r
+ $flux['data'] .= _T('noizetier:ieconfig_probleme_import_config').'<br />';\r
+ }\r
+ \r
+ return($flux);\r
+}\r
+\r
+?>
\ No newline at end of file