function formulaires_configurer_bank_paiement_traiter_dist() { $config = array(); $valeurs = formulaires_configurer_bank_paiement_charger_dist(); include_spip('inc/meta'); foreach ($valeurs as $k => $v) { if (!is_null(_request($k))) { if (preg_match(',^presta_(.*)$,', $k, $r)) { $config['presta'][$r[1]] = _request($k); } else { $config[$k] = _request($k); } } } ecrire_meta('bank_paiement', serialize($config)); // mettre a jour la config des banques include_spip('base/bank_install'); bank_presta_install(); return array('message_ok' => _T('config_info_enregistree'), 'editable' => true); }
/** * Test du statut d'install * * @param string $action * @param string $prefix * @param string $version_cible * @return bool */ function bank_install($action, $prefix, $version_cible) { $version_base = $GLOBALS[$prefix . "_base_version"]; switch ($action) { case 'test': $ok = (isset($GLOBALS['meta'][$prefix . "_base_version"]) and spip_version_compare($GLOBALS['meta'][$prefix . "_base_version"], $version_cible, ">=")); if ($ok) { // verifier/maj des fichiers de config bank_presta_install(); } return $ok; break; case 'install': bank_upgrade($prefix . "_base_version", $version_cible); break; case 'uninstall': bank_vider_tables($prefix . "_base_version"); break; } }