示例#1
0
function exec_action_rapide_dist() {
	global $type_urls;
cs_log("INIT : exec_action_rapide_dist() - Preparation par Ajax (donnees transmises par GET)");
	// droits du Couteau Suisse
	cs_minipres();
	list($outil, $arg) = explode('|',_request('arg'),2);
	$script = _request('script');
cs_log(" -- script = $script - outil = $outil - arg = $arg");
	// verification du format de l'argument
	cs_minipres(!isset($arg));
	if(!strlen($arg)) $arg = 'retour_nul';
	cs_minipres(!preg_match('/^\w+$/', $script));

	switch ($arg) {
		// retour normal des actions rapides du couteau suisse : affichage du bloc au sein de la description d'un outil
		case 'description_outil':
cs_log(" -- Preparation de l'affichage de la description de l'outil");
			include_spip('inc/cs_outils');
			$res = cs_action_rapide($outil);
cs_log(" FIN : exec_action_rapide_dist() - Appel maintenant de ajax_retour() pour afficher le formulaire de '$outil'");	
			ajax_retour($res);
			break;

		// mettre a jour les fichiers distants d'un outil...
		case 'fichiers_distants':
			global $outils;
			include_spip('cout_utils');
			include_spip('config_outils');
			if(autoriser('configurer', 'outil', 0, NULL, $outil)) {
				include_spip('inc/cs_outils');
				cs_initialisation_d_un_outil($outil, charger_fonction('description_outil', 'inc'), false);
				// mise a jour forcee
				$res = cs_action_fichiers_distants($outils[$outil], true);
			}
cs_log(" FIN : exec_action_rapide_dist() - Appel maintenant de ajax_retour() pour afficher le formulaire de '$outil'");	
			ajax_retour($res);
			break;

		// pour le reste (ex : 'sauve_pack' en mode non ajax), rien a faire.
		case 'retour_nul':
cs_log("FIN : exec_action_rapide_dist() - Retour nul");
			break;

		default:
			// fonction mon_outil_argument_exec() suite a l'appel de ?exec=action_rapide&arg=mon_outil|argument
cs_log("FIN : exec_action_rapide_dist() - Appel de {$outil}_{$arg}_exec()");
			include_spip('outils/'.$outil.'_action_rapide');
			if(function_exists($fct = $outil.'_'.$arg.'_exec')) $fct();
			break;
	}
}
示例#2
0
function description_outil2($outil_id) {
	if(!strlen($outil_id)) return _T('couteauprive:outils_cliquez');
	global $outils, $metas_vars, $metas_outils;
	include_spip('cout_utils');
	// remplir $outils (et aussi $cs_variables qu'on n'utilise pas ici);
	include_spip('config_outils');
cs_log(" -- description_outil2($outil_id) - Appel de config_outils.php : nb_outils = ".count($outils));

cs_log(" -- appel de charger_fonction('description_outil', 'inc') et de description_outil($outil_id) :");
	$description_outil = charger_fonction('description_outil', 'inc');
	$descrip = cs_initialisation_d_un_outil($outil_id, $description_outil, true);

	include_spip('inc/presentation');
	include_spip('inc/texte');
	include_spip('public/parametrer'); // fonctions pour les pipelines

	$s = '<div class="cs-cadre">';

	$outil = $outils[$outil_id]; unset($outils);
	$actif = $outil['actif'];
	$puce = $actif?'puce-verte.gif':'puce-rouge.gif';
	$titre_etat = _T('couteauprive:outil_'.($actif?'actif':'inactif'));
	$nb_var = intval($outil['nb_variables']);

	// cette valeur par defaut n'est pas definie sous SPIP 1.92
	@define('_ID_WEBMESTRES', 1);
	if(!strlen($outil['id']) || !autoriser('configurer', 'outil', 0, NULL, $outil))
		return $s . _T('info_acces_interdit') . '</div>';

	$s .= "<h3 class='titrem'><img src='"._DIR_IMG_PACK."$puce' width='9' height='9' alt=\"$titre_etat\" title=\"$titre_etat\" />&nbsp;" . $outil['nom'] . '</h3>';
	$s .= '<div class="cs_menu_outil">';
	if($nb_var)
		$s .= '<a href="'.generer_url_ecrire(_request('source'),'cmd=reset&outil='.$outil_id).'" title="' . _T('couteauprive:par_defaut') . '">' . _T('couteauprive:par_defaut') . '</a>&nbsp;|&nbsp;';
	if(!$actif)
		$s .= '<a href="'.generer_url_ecrire(_request('source'),'cmd=hide&outil='.$outil_id).'" title="' . _T('couteauprive:outil_cacher') . '">' . _T('couteauprive:outil_cacher') . '</a>&nbsp;|&nbsp;';
	$act = $actif?'des':'';
	$s .= '<a href="'.generer_url_ecrire(_request('source'),'cmd=switch&outil='.$outil_id).'" title="'._T("couteauprive:outil_{$act}activer_le").'">'._T("couteauprive:outil_{$act}activer")."</a></div>";
	if(strlen($temp = cs_action_fichiers_distants($outil) . cs_action_rapide($outil_id, $actif))) 
		$s .= "<div class='cs_action_rapide' id='cs_action_rapide'>$temp</div>";
	$s .= propre($descrip);
	$serial = serialize(array_keys($outil));
	$p = '';
	if($b=cs_balises_traitees($outil_id, '*, #'))
		$p .=  '<p>' . _T('couteauprive:detail_balise_etoilee', array('bal' => $b.'*')) . '</p>';
	if($actif && isset($outil['code:spip_options']) && strlen($outil['code:spip_options']) && ($outil_id<>'cs_comportement'))
		$p .= '<p>' . _T('couteauprive:detail_spip_options'.(defined('_CS_SPIP_OPTIONS_OK')?'_ok':''), array('lien'=>description_outil_liens_callback(array(1=>'cs_comportement')))) . '</p>';
	if(isset($outil['jquery']) && $outil['jquery']=='oui')
		$p .= '<p>' . _T('couteauprive:detail_jquery2') . '</p>';
	if(isset($outil['auteur']) && strlen($outil['auteur']))
		$p .= '<p>' . _T('auteur') .' '. ($outil['auteur']) . '</p>';
	if(isset($outil['contrib']) && strlen($outil['contrib']))
		$p .= '<p>' . _T('couteauprive:contrib', array('url'=>'[->'._URL_CONTRIB.$outil['contrib'].']')) . '</p>';

	return $s . propre($p) . detail_outil($outil_id) . '</div>';
}