/** * Le controlleur de CFG * * @param Array $regs * @return Array */ function controleurs_config_dist($regs) { list(,$crayon,$type,$champ,$id) = $regs; // evidemment, pour CFG, on recupere pas tout a fait ce qu'on souhaite... // retraduire depot___plugin__casier__cle en depot::plugin/casier/cle include_spip('cfg_fonctions'); $config = cfg_crayon2config($champ); $val = lire_config($config); if ($val === null) { return array("$type $config: " . _U('crayons:pas_de_valeur'), 6); } $valeur = array('config' => $val); $n = new Crayon($crayon, $valeur); $contexte = array(); if (is_string($val) and preg_match(",[\n\r],", $val)) $contexte['config'] = array('type'=>'texte'); else $contexte['config'] = array('type'=>'ligne'); $html = $n->formulaire($contexte); include_spip('action/crayon_html'); $html = crayons_formulaire($html, 'crayons_config_store'); $status = NULL; return array($html, $status); }
function action_crayons_html_dist() { // CONTROLEUR // on affiche le formulaire demande (controleur associe au crayon) // Si le crayon n'est pas de type "crayon", c'est un crayon etendu, qui // integre le formulaire requis à son controleur (pour avoir les boutons // du formulaire dans un controleur Draggable, par exemple, mais il y a // d'autres usages possibles) include_spip('inc/crayons'); lang_select($GLOBALS['auteur_session']['lang']); $return = affiche_controleur(_request('class')); if (!_request('type') OR _request('type') == 'crayon') $return['$html'] = crayons_formulaire($return['$html']); $json = trim(crayons_json_encode($return)); header("Content-Type: text/plain; charset=utf-8"); die($json); }
/** * Action affichant le controleur html ou php adéquat * * on affiche le formulaire demande (controleur associe au crayon) * Si le crayon n'est pas de type "crayon", c'est un crayon etendu, qui * integre le formulaire requis à son controleur (pour avoir les boutons * du formulaire dans un controleur Draggable, par exemple, mais il y a * d'autres usages possibles) * */ function action_crayons_html_dist() { include_spip('inc/crayons'); // Utiliser la bonne langue d'environnement if (!isset($GLOBALS['forcer_lang']) or !$GLOBALS['forcer_lang'] or $GLOBALS['forcer_lang'] === 'non') { lang_select($GLOBALS['auteur_session']['lang']); } $return = affiche_controleur(_request('class')); if (!_request('type') or _request('type') == 'crayon') { $return['$html'] = crayons_formulaire($return['$html']); } $json = trim(crayons_json_encode($return)); header("Content-Type: text/plain; charset=utf-8"); die($json); }