function formulaires_sauvegarde_cfg_traiter_dist() { $message = array(); $fonds = array(); $mode = _request('mode'); if ($mode == 'page') { $fonds[] = _request('fond_a_sauvegarder'); } else { $pages_cfg = explode(':', _SARKASPIP_PAGES_CONFIG); foreach ($pages_cfg as $_page) { if ($_page != 'maintenance') { $fonds[] = "sarkaspip_{$_page}"; } } } $dir_cfg = sous_repertoire(_DIR_TMP, "cfg"); include_spip('inc/sarkaspip_filtres'); $ok = sauvegarder_fonds($fonds, $dir_cfg, 'maintenance'); if (!$ok) { $message['message_nok'] = _T('sarkaspip:cfg_msg_fichier_sauvegarde_nok'); } if ($ok) { if ($mode == 'page') { $message['message_ok'] = _T('sarkaspip:cfg_msg_fichier_sauvegarde_ok', array('nom_fichier' => $nom)); } else { $message['message_ok'] = _T('sarkaspip:cfg_msg_fichiers_sauvegardes_ok'); } } return $message; }
function sarkaspip_zengarden_activer_theme($flux) { $dir = $flux['args']['dir']; $action = $flux['args']['action']; $dir_cfg = $dir . '/cfg'; $cfg = preg_files($dir_cfg); include_spip('inc/config'); if ($action == 'activer') { // On sauvegarde des valeurs actuelles pour un eventuel rappel $dir_cfg = sous_repertoire(_DIR_TMP, "cfg"); $dir_cfg = sous_repertoire(_DIR_TMP, "themes"); $fonds = array(); foreach ($cfg as $_fichier_cfg) { $fonds[] = basename($_fichier_cfg, '.txt'); } include_spip('inc/sarkaspip_filtres'); $ok = sauvegarder_fonds($fonds, $dir_cfg, 'theme'); // On ecrit la nouvelle configuration n�cessaire au theme choisi $flux['data'] = true; foreach ($cfg as $_fichier_cfg) { lire_fichier($_fichier_cfg, $tableau); $fond = basename($_fichier_cfg, '.txt'); ecrire_config($fond, $tableau); } } else { if ($action == 'effacer') { $fichiers = array(); $flux['data'] = true; foreach ($cfg as $_fichier_cfg) { $fond = basename($_fichier_cfg, '.txt'); effacer_config($fond); $fichiers[] = _DIR_TMP . 'themes/cfg/' . $fond . '.txt'; } include_spip('inc/sarkaspip_filtres'); $ok = restaurer_fonds($fichiers); } else { // action apercevoir : on ne fait rien, on sait pas faire.. } } return $flux; }