/**
 * Action d'affichage en ajax du navigateur de rubrique du bandeau
 *
 * @uses gen_liste_rubriques()
 * @uses menu_rubriques()
 *
 * @return string
 *     Code HTML présentant la liste des rubriques
 **/
function action_menu_rubriques_dist()
{
    // si pas acces a ecrire, pas acces au menu
    // on renvoi un 401 qui fait echouer la requete ajax silencieusement
    if (!autoriser('ecrire')) {
        $retour = "<ul class='cols_1'><li class='toutsite'><a href='" . generer_url_ecrire('accueil') . "'>" . _T('public:lien_connecter') . "</a></li></ul>";
        include_spip('inc/actions');
        ajax_retour($retour);
        exit;
    }
    if ($date = intval(_request('date'))) {
        header("Last-Modified: " . gmdate("D, d M Y H:i:s", $date) . " GMT");
    }
    $r = gen_liste_rubriques();
    if (!$r and isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) and !strstr($_SERVER['SERVER_SOFTWARE'], 'IIS/')) {
        include_spip('inc/headers');
        header('Content-Type: text/html; charset=' . $GLOBALS['meta']['charset']);
        http_status(304);
        exit;
    } else {
        include_spip('inc/actions');
        $ret = menu_rubriques();
        ajax_retour($ret);
    }
}
Example #2
0
/**
 * Calculer la taille du cache ou du cache image pour l'afficher en ajax sur la page d'admin de SPIP
 *
 * @param string|null $arg
 */
function action_calculer_taille_cache_dist($arg = null)
{
    if (is_null($arg)) {
        $securiser_action = charger_fonction('securiser_action', 'inc');
        $arg = $securiser_action();
    }
    include_spip('inc/filtres');
    if ($arg == 'images') {
        $taille = calculer_taille_dossier(_DIR_VAR);
        $res = _T('ecrire:taille_cache_image', array('dir' => joli_repertoire(_DIR_VAR), 'taille' => "<b>" . (taille_en_octets($taille) > 0 ? taille_en_octets($taille) : "0 octet") . "</b>"));
    } else {
        include_spip('inc/invalideur');
        $taille = calculer_taille_dossier(_DIR_CACHE_XML) + calculer_taille_dossier(_DIR_CACHE . 'skel/') + calculer_taille_dossier(_DIR_CACHE . 'wheels/') + calculer_taille_dossier(_DIR_CACHE . 'contextes/');
        $taille += intval(taille_du_cache());
        if ($taille <= 150000) {
            $res = _T('taille_cache_vide');
        } elseif ($taille <= 1024 * 1024) {
            $res = _T('taille_cache_moins_de', array('octets' => taille_en_octets(1024 * 1024)));
        } else {
            $res = _T('taille_cache_octets', array('octets' => taille_en_octets($taille)));
        }
        $res = "<b>{$res}</b>";
    }
    $res = "<p>{$res}</p>";
    ajax_retour($res);
}
Example #3
0
function exec_informer_auteur_dist()
{
	$id = intval(_request('id'));

	$informer_auteur = charger_fonction('informer_auteur', 'inc');
	ajax_retour($informer_auteur($id));
}
Example #4
0
function forum_envoi(
		     $id,
		     $id_parent,
		     $script,
		     $statut,
		     $titre_message,
		     $texte,
		     $modif_forum,
		     $nom_site,
		     $url_site)
{
	if ($modif_forum == 'fin') {
		include_spip('inc/headers');
		$script = preg_replace('/\W/','', $script); // article etc
		$objet = preg_replace('/\W/','', $texte); // id_article etc
		redirige_url_ecrire('discuter', "script=$script&objet=$objet&$objet=$id&statut=$statut" . ($id_parent ? "&id_parent=$id_parent" : ''));
	} else {
		$statut = preg_replace('/\W/','', $statut);
		$forum_envoi = charger_fonction('forum_envoi', 'inc');
		$forum_envoi = $forum_envoi($id, $id_parent, $script, $statut, $titre_message, $texte, $modif_forum, $nom_site, $url_site);

		if (_AJAX) {
			ajax_retour($forum_envoi);
		} else {
			$titre = $script == 'message' ? _T('onglet_messagerie') : _T('titre_cadre_forum_interne');
			$commencer_page = charger_fonction('commencer_page', 'inc');
			echo $commencer_page(_T('texte_nouveau_message'), "accueil", "accueil");
			echo debut_gauche('', true);
			echo debut_droite('', true);
			echo gros_titre($titre,'', false);
			echo $forum_envoi, fin_gauche(), fin_page();
		}
	}
}
Example #5
0
function exec_description_outil_dist() {
cs_log("INIT : exec_description_outil_dist() - Preparation du retour par Ajax (donnees transmises par GET)");
	$script = _request('script');
	$outil = _request('outil');
cs_log(" -- outil = $outil - script = $script");
	cs_minipres(!preg_match('/^\w+$/', $script));
	// ici on commence l'initialisation de tous les outils
	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(" -- exec_description_outil_dist() - Appel de config_outils.php : nb_outils = ".count($outils));
	// installer les outils
	cs_installe_outils();

cs_log(" -- appel de charger_fonction('description_outil', 'inc') et de description_outil($outil, $script) :");
	include_spip('inc/cs_outils');
	$description_outil = charger_fonction('description_outil', 'inc');
	$descrip = cs_initialisation_d_un_outil($outil, $description_outil, true);
	cs_init_plugins();

cs_log(" FIN : exec_description_outil_dist() - Appel maintenant de ajax_retour() pour afficher la ligne de configuration de l'outil");	
	include_spip('inc/texte');
	include_spip('cout_fonctions'); // fonctions pour les pipelines
	ajax_retour(propre($descrip));
}
Example #6
0
function controle_petition_args($id_article, $type, $date, $debut, $titre, $where, $pas, $id_signature=0)
{
	if (!preg_match('/^\w+$/',$type)) $type = 'public';
	if ($id_article) $where .= "id_article=$id_article AND ";
	$extrait = "(statut='publie' OR statut='poubelle')";
	if ($type == 'interne') $extrait = "NOT($extrait)";
	$where .= $extrait;
	$order = "date_time DESC";
	if (!$pas) $pas = 10;
	if ($date) {
		include_spip('inc/forum');
		$query = array('SELECT' => 'UNIX_TIMESTAMP(date_time) AS d',
				'FROM' => 'spip_signatures', 
				'WHERE' => $where,
				'ORDER BY' => $order);
		$debut = navigation_trouve_date($date, 'd', $pas, $query);
	}
	$signatures = charger_fonction('signatures', 'inc');

	$res = $signatures('controle_petition', $id_article, $debut, $pas, $where, $order, $type);

	if (_AJAX) {
		ajax_retour($res);
	} else {
		$count = ($type != 'interne') ? 0 : sql_countsel("spip_signatures", $where);
		controle_petition_page($id_article, $titre, $id_signature ? '' : $type, $res, $count);
	}
}
Example #7
0
/**
 * Un exec d'acces interdit
 *
 * @param string $message
 */
function exec_403_dist($message = '')
{
    $exec = _request('exec');
    $titre = "exec_{$exec}";
    $navigation = "";
    $extra = "";
    if (!$message) {
        $message = _L("Vous n'avez pas le droit d'acc&eacute;der à la page <b>@exec@</b>.", array('exec' => _request('exec')));
    }
    $contenu = "<h1 class='grostitre'>" . _T('info_acces_interdit') . "</h1>" . $message;
    if (_request('var_zajax')) {
        include_spip('inc/actions');
        ajax_retour($contenu);
    } else {
        include_spip('inc/presentation');
        // alleger les inclusions avec un inc/presentation_mini
        $commencer_page = charger_fonction('commencer_page', 'inc');
        echo $commencer_page($titre);
        echo debut_gauche("403_{$exec}", true);
        echo recuperer_fond('prive/squelettes/navigation/dist', array());
        echo pipeline('affiche_gauche', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
        echo creer_colonne_droite("403", true);
        echo pipeline('affiche_droite', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
        echo debut_droite("403", true);
        echo pipeline('affiche_milieu', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => $contenu));
        echo fin_gauche(), fin_page();
    }
}
Example #8
0
function exec_editer_mots_args($id_objet, $objet)
{
	$base="";
	if (!$id_objet OR !$objet)
		$droit = false;
	elseif ($GLOBALS['connect_toutes_rubriques']) // pour eviter SQL
		$droit = true;
	elseif ($objet == 'article')
		$droit = autoriser('modifier','article',$id_objet);
	elseif ($objet == 'rubrique')
		$droit = autoriser('publierdans','rubrique',$id_objet);
	else {
		if ($objet == 'breve')
			$droit = sql_select("id_rubrique", "spip_breves", "id_breve=".sql_quote($id_objet));
		else
			$droit = sql_select("id_rubrique", "spip_syndic", "id_syndic=".sql_quote($id_objet));
		$droit = autoriser('publierdans','rubrique',$droit['id_rubrique']);
	}
	$bases = array('article'=>'articles','breve'=>'breves_voir','rubrique'=>'naviguer','syndic'=>'sites');
	if (isset($bases[$objet]))
		$base = $bases[$objet];

	if (!$droit) {
		include_spip('inc/minipres');
		echo minipres();
	} else {

		$ch = _request('cherche_mot');
		$id_groupe = _request('select_groupe');
		$editer_mots = charger_fonction('editer_mots', 'inc');
		ajax_retour($editer_mots($objet, $id_objet, $ch, $id_groupe, 'ajax',false,$base)); 
	}
}
Example #9
0
function exec_calendrier_args($time, $type, $echelle, $partie_cal)
{
	if ($time < 0) $time = time();

	if (!$type)
		$type = 'mois';
	elseif ($type == 'semaine')
		$GLOBALS['afficher_bandeau_calendrier_semaine'] = true;

	$ancre = 'calendrier-1';
	$r = generer_url_ecrire('calendrier', "type=$type") . "#$ancre";
	$r = http_calendrier_init($time, $type, $echelle, $partie_cal, $r);

	if (_AJAX) {
		ajax_retour($r);
	} else {
		$date = date("Y-m-d", $time);
		if ($type == 'jour') {
			$titre = nom_jour($date)." ". affdate_jourcourt($date);
		}  else {
			$titre = _T('titre_page_calendrier',
					array('nom_mois' => nom_mois($date),
						'annee' => annee($date)));
		}

		$commencer_page = charger_fonction('commencer_page', 'inc');
		echo $commencer_page($titre, "accueil", "calendrier");
// ne produit rien par defaut, mais est utilisee par le plugin agenda
		echo barre_onglets("calendrier", "calendrier"); 
		echo debut_grand_cadre(true);
		echo "\n<div>&nbsp;</div>\n<div id='", $ancre, "'>",$r,'</div>';
		echo fin_grand_cadre(true);
		echo fin_page();
	}
}
Example #10
0
function exec_articles_tous_args($id_rubrique, $aff_art, $sel_lang)
{
	global $browser_layer,$spip_lang_right,$spip_lang_left;

	changer_typo(); // pour definir la direction de la langue
	if (!is_array($aff_art)) $aff_art = array('prop','publie');
	$enfant = arbo_articles_tous();

	$flag_trad = (($GLOBALS['meta']['multi_rubriques'] == 'oui' 
		OR $GLOBALS['meta']['multi_articles'] == 'oui') 
		AND $GLOBALS['meta']['gerer_trad'] == 'oui');

	list($article,$text_article,$aff_statut) = texte_articles_tous($sel_lang, $flag_trad, $aff_art, lang_dir());
	if (_AJAX AND $id_rubrique) {
		include_spip('inc/actions');
		ajax_retour(afficher_contenu_rubrique($article, $enfant, $text_article, $id_rubrique, $flag_trad, 2));
	}
	else {

		pipeline('exec_init',array('args'=>array('exec'=>'articles_tous'),'data'=>''));
		$commencer_page = charger_fonction('commencer_page', 'inc');
		echo $commencer_page(_T('titre_page_articles_tous'), "accueil", "tout-site");

		echo http_script('var img_deplierhaut = "'. chemin_image('noeud_plus.gif') .'";
var img_deplierbas = "'. chemin_image('noeud_moins.gif') . '";');

		echo http_script('', 'jquery-ui-1.8-drag-drop.min.js');
		echo http_script('', 'articles_tous_edite.js');
		echo http_script('', 'pause.js');
	
		echo debut_gauche('', true);
		echo formulaire_affiche_tous($aff_art, $aff_statut, $sel_lang);

		echo pipeline('affiche_gauche',array('args'=>array('exec'=>'articles_tous'),'data'=>''));
		echo creer_colonne_droite('', true);
		echo pipeline('affiche_droite',array('args'=>array('exec'=>'articles_tous'),'data'=>''));
		echo debut_droite('', true);

		if ($enfant AND $browser_layer)
		  echo couche_formulaire_tous();

		$out = "<textarea cols='1' rows='1' id='deplacements' style='display:none;' name='deplacements'></textarea>"
		  . "\n<div id='apply' style='display:none;text-align:$spip_lang_right'><input type='submit' value='"._T('bouton_changer')."' /></div>";

		echo "\n<div id='cancel' class='verdana2' style='display:none;text-align:$spip_lang_left;float:$spip_lang_left'>",
		  "<a href='javascript:annuler_deplacement();'>",
		  _T('bouton_annuler'),
		  "</a></div>",
		  redirige_action_post("reorganiser","",'articles_tous', '', $out),
		  "<ul id='articles_tous'><li id='rubrique-0' class='treeItem racine verdana2'>",
		  "<span class='holder icone'>&nbsp;</span>",
		  _T('info_racine_site'),
		  "\n<ul class=''>\n",
		  afficher_contenu_rubrique($article, $enfant, $text_article, 0, $flag_trad, 2),
		  "</ul></li></ul>\n",
		  fin_gauche(), fin_page();
	}
}
Example #11
0
function action_quete_autocomplete_dist()
{
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $arg = $securiser_action();
    if ($arg and $arg == $GLOBALS['visiteur_session']['id_auteur']) {
        include_spip('inc/actions');
        echo ajax_retour(recuperer_fond('prive/squelettes/inclure/organiseur-autocomplete-auteur', array('q' => _request('q'))), 'text/plain');
    }
}
function boites_privees_URL_objet_exec() {
cs_log("INIT : exec_action_rapide_dist() - Preparation du retour par Ajax (donnees transmises par GET)");
	$script = _request('script');
cs_log(" -- fonction = $fct - script = $script - arg = $arg");
	cs_minipres(!preg_match('/^\w+$/', $script));
	$res = function_exists($fct = 'action_rapide_'._request('fct'))?$fct():'';
cs_log(" FIN : exec_description_outil_dist() - Appel maintenant de ajax_retour() pour afficher le formulaire de la boite privee");	
	ajax_retour($res);
}
Example #13
0
function exec_selectionner_auteur_dist()
{
  	$id = intval(_request('id_article'));
	$type = _request('type');
	if (!preg_match(',^[a-z_]+$,',$type)) $type = 'article';
	$selectionner_auteur = charger_fonction('selectionner_auteur', 'inc');
	include_spip('inc/actions');
	ajax_retour($selectionner_auteur($id, $type));
}
Example #14
0
function exec_instituer_auteur_dist()
{
	$id_auteur = intval(_request('id_auteur'));

	include_spip('inc/actions');
	$auteur = sql_fetsel("*", "spip_auteurs", "id_auteur=$id_auteur");

	$instituer_auteur = charger_fonction('instituer_auteur', 'inc');
	ajax_retour($instituer_auteur($auteur));
}
function exec_configurer_previsualiseur_dist()
{
	if(!autoriser('configurer', _request('configuration'))) {
		include_spip('inc/minipres');
		echo minipres(_T('info_acces_interdit'));
		exit;
	}
	$previsualiseur = charger_fonction('previsualiseur', 'configuration');
	include_spip('inc/actions');
	ajax_retour($previsualiseur());
}
Example #16
0
function exec_configurer_dist()
{
	if(!autoriser('configurer', _request('configuration'))) {
		include_spip('inc/minipres');
		echo minipres(_T('info_acces_interdit'));
		exit;
	}
	include_spip('inc/actions');
	$configuration = charger_fonction(_request('configuration'), 'configuration', true);
	ajax_retour($configuration ? $configuration() : 'configure quoi?');
}
Example #17
0
function exec_menu_rubriques_dist() {
	global $spip_ecran;
        
	header("Cache-Control: no-cache, must-revalidate");

	if ($date = intval(_request('date')))
		header("Last-Modified: ".gmdate("D, d M Y H:i:s", $date)." GMT");

	$r = gen_liste_rubriques(); 
	if (!$r
	AND isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
	AND !strstr($_SERVER['SERVER_SOFTWARE'],'IIS/')) {
		include_spip('inc/headers');
		header('Content-Type: text/html; charset='. $GLOBALS['meta']['charset']);
		http_status(304);
		} else {

		$largeur_t = ($spip_ecran == "large") ? 900 : 650;

		$arr_low = extraire_article(0, $GLOBALS['db_art_cache']);

		$total_lignes = $i = sizeof($arr_low);
		$ret = '';

		if ($i > 0) {
			$nb_col = min(8,ceil($total_lignes / 30));
			if ($nb_col <= 1) $nb_col =  ceil($total_lignes / 10);
			$max_lignes = ceil($total_lignes / $nb_col);
			$largeur = min(200, ceil($largeur_t / $nb_col)); 
			$count_lignes = 0;
			$style = " style='z-index: 0; vertical-align: top;'";
			$image = " petit-secteur";
			foreach( $arr_low as $id_rubrique => $titre_rubrique) {
				if ($count_lignes == $max_lignes) {
					$count_lignes = 0;

					$ret .= "</div></td>\n<td$style><div class='bandeau_rubriques'>";
				}
				$count_lignes ++;
				if (autoriser('voir','rubrique',$id_rubrique)){
				  $ret .= bandeau_rubrique($id_rubrique, $titre_rubrique, $i, $largeur, $image);
				  $i--;
				}
			}

			$ret = "<table><tr>\n<td$style><div class='bandeau_rubriques'>"
			  . $ret
			  . "\n</div></td></tr></table>\n";
		}

		include_spip('inc/actions');
		ajax_retour("<div>&nbsp;</div>" . $ret);
	}
}
function exec_configurer_notifications_forum_dist()
{
	if(!autoriser('configurer', _request('configuration'))) {
		include_spip('inc/minipres');
		echo minipres(_T('info_acces_interdit'));
		exit;
	}
	$f = charger_fonction('notifications_forum', 'configuration');
	include_spip('inc/actions');
	ajax_retour($f());
}
Example #19
0
function exec_legender_args($id_document, $type, $id, $ancre='', $script='')
{
	if (!$id_document OR !autoriser('joindredocument',$type, $id)) {
		include_spip('inc/minipres');
		echo minipres();
	} else {
		include_spip('inc/actions');
		$legender = charger_fonction('legender', 'inc');
		ajax_retour($legender($id_document, array(), $script, $type, $id, $ancre));
	}
}
Example #20
0
function exec_rechercher_dist()
{
	$id = intval(_request('id'));
	$exclus = intval(_request('exclus'));
	$rac = htmlentities(_request('rac'));
	$type = _request('type');
	$do  = _request('do');
	if (preg_match('/^\w*$/', $do))
	  $r = exec_rechercher_args($id, $type, $exclus, $rac, $do);
	else $r = '';
	ajax_retour($r);
}
Example #21
0
function exec_cs_boite_rss_dist() {
	cs_minipres();
	// Constantes distantes
	include_spip('cout_define');
	if(defined('_CS_PAS_DE_DISTANT')) { ajax_retour(_T('couteauprive:version_distante_off')); return; }
	$p = '';
	// on cherche le flux rss toutes les _CS_RSS_UPDATE minutes
	$force = _request('force')=='oui';
	if(!$force) {
		$lastmodified = @file_exists(_CS_TMP_RSS)?@filemtime(_CS_TMP_RSS):0;
		if(time()-$lastmodified < _CS_RSS_UPDATE) lire_fichier(_CS_TMP_RSS, $p);
	}
	if(strlen($p)) { ajax_retour($p); return; }
	include_spip('inc/filtres');
	include_spip('action/editer_site');
	include_spip('inc/xml');
	$r = spip_xml_load(_CS_RSS_SOURCE);
	if(function_exists('spip_xml_match_nodes')) $c = spip_xml_match_nodes(',^item$,', $r, $r2);
	else {
		$r2 = !is_array($r)?array():array_shift(array_shift(array_shift(array_shift($r))));
		$c = count($r2);
	}
	if($c) {
		$r3 = &$r2['item'];
		$c = count($r3); $p='';
		for($i=0; $i<min($c, _CS_RSS_COUNT); $i++) {
		 $l = $r3[$i]['link'][0];
		 $d = affdate_court(date('Y-m-d', strtotime($r3[$i]['pubDate'][0])));
		 $t = str_replace('&amp;', '&', htmlentities($r3[$i]['title'][0], ENT_NOQUOTES, "UTF-8"));
		 $t = preg_replace(',\s*&#8364;(&brvbar;)?,', '&nbsp;(&hellip;)', $t);
		 $t = preg_replace(',^(.*?):,', "&bull; <a href='$l' class='spip_out' target='_cout'>$1</a> <i>($d)</i><br/>", $t);
			 $p .= "<li style='padding-top:0.6em;'>$t</li>";
		}
	} else {
		// pour cs_lien()
		include_spip('cout_fonctions');
		$p = '<span style="color: red;">'._T('couteauprive:erreur:probleme', array('pb'=>cs_lien(_CS_RSS_SOURCE,_T('couteauprive:erreur:distant')))).'</span>';
	}
	$du = affdate_heure(date('Y-m-d H:i:s',time()));
	$p = '<ul style="list-style-type:none; padding:0; margin:0; ">'.$p
		.'</ul><p class="spip_xx-small" style="border-top:solid gray thin;"><b>'
		._T('couteauprive:rss_edition')."</b><br/>$du</p>"
		.'<p style="text-align:right"><a href="'
		.generer_url_ecrire('admin_couteau_suisse','var_mode=calcul', true).'" onclick="'
		."javascipt:jQuery('div.cs_boite_rss').children().css('opacity', 0.5).parent().load('".generer_url_ecrire('cs_boite_rss', 'force=oui', true).'\');return false;">'
		._T('couteauprive:rss_actualiser').'</a> | <a href="'
		._CS_RSS_SOURCE.'">'
		._T('couteauprive:rss_source').'</a></p>';
	if($c) ecrire_fichier(_CS_TMP_RSS, $p);
	
	ajax_retour($p);
}
Example #22
0
function exec_tourner_args($id_document, $type, $id)
{
	if (!$id_document OR !($type == 'article' 
			       ? autoriser('modifier','article',$id)
			       : autoriser('publierdans','rubrique',$id))) {
		include_spip('inc/minipres');
		echo minipres();
	} else {
	  include_spip('inc/actions');
	  $tourner = charger_fonction('tourner', 'inc');
	  ajax_retour($tourner($id_document, array(), _request('script'), 'ajax', $type));
	}
}
Example #23
0
function exec_discuter_dist()
{
	$script = preg_replace('/\W/','',_request('script'));
	$statut = preg_replace('/\W/','',_request('statut'));
	$objet = preg_replace('/\W/','',_request('objet'));
	$debut = intval(_request('debut'));
	$pas = intval(_request('pas'));
	$id = intval(_request($objet));
	$id_parent = intval(_request('id_parent'));
	$discuter = charger_fonction('discuter', 'inc');
	include_spip('inc/actions');
	ajax_retour($discuter($id, $script, $objet, $statut, $debut, $pas, $id_parent));
}
Example #24
0
function exec_grouper_mots_args($id_groupe)
{
	$cpt = sql_countsel("spip_mots", "id_groupe=$id_groupe");
	if (!$cpt) {
		if ($cpt === NULL) {
			include_spip('inc/minipres');
			echo minipres();
		} else ajax_retour('') ;
	} else {
	  	$grouper_mots = charger_fonction('grouper_mots', 'inc');
		ajax_retour($grouper_mots($id_groupe, $cpt));
	}
}
Example #25
0
function exec_photo_popup()
{
    include_spip("inc/utils");
    include_spip("inc/autoriser");
    if (!($id_document = _request('id_document')) and $fichier = _request('fichier')) {
        if (strncmp($fichier, _DIR_IMG, strlen(_DIR_IMG)) == 0) {
            $fichier = substr($fichier, strlen(_DIR_IMG));
        }
        $id_document = sql_getfetsel('id_document', 'spip_documents', 'fichier=' . sql_quote($fichier));
    }
    include_spip('inc/actions');
    ajax_retour(recuperer_fond("prive/squelettes/inclure/popup_document", array('id_document' => $id_document)));
}
Example #26
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;
	}
}
Example #27
0
function exec_meme_rubrique_args($id, $type, $order)
{
        if ((!autoriser('publierdans','rubrique',$id))
	OR (!preg_match('/^[\w_-]*$/',$order))) {
		include_spip('inc/minipres');
                echo minipres();
        } else {
		$meme_rubrique = charger_fonction('meme_rubrique', 'inc');
	// on connait pas le vrai 2e arg mais c'est pas dramatique
		$res = $meme_rubrique($id, 0, $type, $order, NULL, true);
		include_spip('inc/actions');
		ajax_retour($res);
	}
}
Example #28
0
function exec_info_plugin_distant_dist() {
	if (!autoriser('configurer', 'plugins')) {
		include_spip('inc/minipres');
		echo minipres();
	} else {
		$plug = _request('plugin');
		include_spip('inc/charger_plugin');
		include_spip('inc/texte');
		$liste = liste_plugins_distants($plug);
		$item = $liste[$plug][2];
		$afficher_plugin_distant = charger_fonction("afficher_plugin_distant","plugins");
		ajax_retour(affiche_bloc_plugin_distant($plug, $liste[$plug][2]));
	}
}
function exec_spiplistes_menu_navigation () {

	global $connect_statut
		, $connect_toutes_rubriques
		, $connect_id_auteur
		;

	if($connect_statut == '0minirezo') {

		$gadgets_array = array(
			array(
				'href' => generer_url_ecrire(_SPIPLISTES_EXEC_COURRIER_EDIT,'new=oui&type=nl')
				, 'img_src' => _DIR_IMG_PACK."creer.gif"
				, 'img_bg' => _DIR_PLUGIN_SPIPLISTES_IMG_PACK."courriers_brouillon-24.png"
				, 'alt' => _T('spiplistes:Nouveau_courrier')
			)
			, array(
				'href' => generer_url_ecrire(_SPIPLISTES_EXEC_LISTE_EDIT,'new=oui')
				, 'img_src' => _DIR_IMG_PACK."creer.gif"
				, 'img_bg' => _DIR_PLUGIN_SPIPLISTES_IMG_PACK."reply-to-all-24.gif"
				, 'alt' => _T('spiplistes:Nouvelle_liste_de_diffusion')
			)
		);
		
		$result = "<div style='width: 300px;'>\n";
		
		foreach($gadgets_array as $gadget) {
			$result .= ""
				. "<div style='width: 140px; float: left;'>\n"
				. "<table class='cellule-h-table' style='vertical-align: middle;' cellpadding='0'>\n"
				. "<tr><td>"
				. "<a href='{$gadget['href']}' class='cellule-h'>"
				. "<span class='cell-i'>"
				. "<img src='{$gadget['img_src']}' alt='{$gadget['alt']}' "
					. "style='background: transparent url({$gadget['img_bg']}) no-repeat scroll center;"
						. " -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;'>\n"
				. "</span></a></td>\n"
				. "<td class='cellule-h-lien'>"
				. "<a href='{$gadget['href']}' class='cellule-h'>"
				. $gadget['alt']
				. "</a></td></tr></table>\n"
				. "</div>\n"
				;
		}
		
		$gadget .= "</div>\n";
		
		ajax_retour($result);
	}
}
Example #30
0
function exec_regler_moderation_dist()
{
	$id_article = intval(_request('id_article'));
	$script = _request('script');

	if (!autoriser('modererforum','article',$id_article)) {
		include_spip('inc/minipres');
		echo minipres();
	} else {
	include_spip('inc/actions');
	$regler_moderation = charger_fonction('regler_moderation', 'inc');
	ajax_retour($regler_moderation($id_article, $script, "&id_article=$id_article", true));
	}
}