Skip to content
Extraits de code Groupes Projets
presentation.php 97,8 ko
Newer Older
		echo afficher_liste_debut_tableau();

		$tranches = ereg_replace("\:\:id\_ajax\_fonc\:\:", $id_ajax_fonc, $tranches);
		echo $tranches;

		$result = spip_query($requete);
		while ($row = spip_fetch_array($result)) {
			$vals = '';

			$id_article = $row['id_article'];
			$tous_id[] = $id_article;
			$titre = sinon($row['titre'], _T('ecrire:info_sans_titre'));
			$id_rubrique = $row['id_rubrique'];
			$date = $row['date'];
			$statut = $row['statut'];
			$id_trad = $row['id_trad'];
			$lang = $row['lang'];


			// La petite puce de changement de statut
			$vals[] = puce_statut_article($id_article, $statut, $id_rubrique);

			// Le titre (et la langue)
			
			$langues_art = "";
			$dates_art = "";
			$l = "";
			$res_trad = spip_query("SELECT id_article, lang, date_modif  FROM spip_articles WHERE id_trad = $id_trad AND id_trad > 0");
			while ($row_trad = spip_fetch_array($res_trad)) {
				$id_article_trad = $row_trad["id_article"];
				$lang_trad = $row_trad["lang"];
				$date_trad = $row_trad["date_modif"];
				
				$dates_art[$lang_trad] = $date_trad;
				$langues_art[$lang_trad] = $id_article_trad;
				if ($id_article_trad == $id_trad) $date_ref = $date;
				
			}

			reset($langues_site);
			$span_lang = false;
			while (list(,$k) = each($langues_site)) {
				if ($langues_art[$k]) {
					if ($langues_art[$k] == $id_trad) {
					  $span_lang = "<a href='" . generer_url_ecrire("articles","id_article=".$langues_art[$k]) . "'><span class='lang_base'>$k</a></a>";
						$l .= $span_lang;
					} else {
						$date = $dates_art[$k];
						if ($date < $date_ref) 
						  $l .= "<a href='" . generer_url_ecrire("articles","id_article=".$langues_art[$k]) . "' class='claire'>$k</a>";
						else $l .= "<a href='" . generer_url_ecrire("articles","id_article=".$langues_art[$k]) . "' class='foncee'>$k</a>";
#				else $l.= "<span class='creer'>$k</span>";
				$span_lang = "<a href='" . generer_url_ecrire("articles","id_article=$id_article") . "'><span class='lang_base'>$lang</a></a>";

			
			$vals[] = "<div style='text-align: center;'>$span_lang</div>";
			
			
			$s = "<div>";
			$s .= "<div style='float: $spip_lang_right; margin-right: -10px;'>$l</div>";

			if (acces_restreint_rubrique($id_rubrique))
				$s .= http_img_pack("admin-12.gif", "", "width='12' height='12'", _T('titre_image_admin_article'));

			$s .= "<a href='" . generer_url_ecrire("articles","id_article=$id_article") . "'$descriptif$dir_lang style=\"display:block;\">";
			
			
			if ($id_article == $id_trad) $titre = "<b>$titre</b>";
			
			$s .= typo($titre);
			if ($afficher_langue AND $lang != $langue_defaut)
				$s .= " <font size='1' color='#666666'$dir_lang>(".traduire_nom_langue($lang).")</font>";
			if ($petition) $s .= " <font size=1 color='red'>"._T('lien_petitions')."</font>";
			$s .= "</a>";
			$s .= "</div>";
			
			$vals[] = $s;
			
			$vals[] = "";

			$table[] = $vals;
		}
		spip_free_result($result);

		$largeurs = array(11, 24, '', '1');
		$styles = array('', 'arial1', 'arial1', '');

		afficher_liste($largeurs, $table, $styles);

		//echo "</table>";
		echo afficher_liste_fin_tableau();
		echo "</div>";
		
		if (!$GLOBALS["t_$tmp_var"]) echo "</div>";
		
ARNO*'s avatar
ARNO* a validé
		//if ($afficher_cadre) fin_cadre_gris_clair();

	}

function afficher_breves($titre_table, $requete, $affrub=false) {
esj's avatar
esj a validé
	global $connect_id_auteur, $spip_lang_right, $spip_lang_left, $dir_lang, $couleur_foncee, $spip_display, $connect_statut, $options;	
esj's avatar
 
esj a validé
	if (($GLOBALS['meta']['multi_rubriques'] == 'oui' AND $GLOBALS['id_rubrique'] == 0) OR $GLOBALS['meta']['multi_articles'] == 'oui') {
		$afficher_langue = true;
		$requete = ereg_replace(" FROM", ", lang FROM", $requete);
Antoine Pitrou's avatar
Antoine Pitrou a validé
		if ($GLOBALS['langue_rubrique']) $langue_defaut = $GLOBALS['langue_rubrique'];
esj's avatar
 
esj a validé
		else $langue_defaut = $GLOBALS['meta']['langue_site'];
ARNO*'s avatar
ARNO* a validé
	if ($options == "avancees") $tranches = afficher_tranches_requete($requete, 4);
	else  $tranches = afficher_tranches_requete($requete, 3);
Antoine Pitrou's avatar
Antoine Pitrou a validé

ARNO*'s avatar
ARNO* a validé
		//debut_cadre_relief("breve-24.gif");

		if ($titre_table) echo "<div style='height: 12px;'></div>";
		echo "<div class='liste'>";
ARNO*'s avatar
ARNO* a validé
			bandeau_titre_boite2($titre_table, "breve-24.gif", $couleur_foncee, "white");
ARNO*'s avatar
ARNO* a validé
		echo "<table width='100%' cellpadding='2' cellspacing='0' border='0' background=''>";
		$result = spip_query($requete);
		$droit = ($connect_statut == '0minirezo' && $options == 'avancees');
		$voir_logo = ($spip_display != 1 AND $spip_display != 4 AND $GLOBALS['meta']['image_process'] != "non");
		
Fil's avatar
Fil a validé
		if ($voir_logo) include_spip('inc/logos');
		while ($row = spip_fetch_array($result)) {
			$date_heure = $row['date_heure'];
			$titre = sinon($row['titre'], _T('ecrire:info_sans_titre'));
			if ($lang = $row['lang']) changer_typo($lang);
			$id_rubrique = $row['id_rubrique'];
			$vals[] = puce_statut_breve($id_breve, $statut, 'breve', ($droit && acces_rubrique($id_rubrique)), $id_rubrique);
ARNO*'s avatar
ARNO* a validé
			$s = "<div>";
			$s .= "<a href='" . generer_url_ecrire("breves_voir","id_breve=$id_breve") . "' style=\"display:block;\">";
			if ($voir_logo) $s .= baliser_logo("breve", $id_breve, 26, 20);
Antoine Pitrou's avatar
Antoine Pitrou a validé
			if ($afficher_langue AND $lang != $langue_defaut)
				$s .= " <font size='1' color='#666666'$dir_lang>(".traduire_nom_langue($lang).")</font>";
ARNO*'s avatar
ARNO* a validé
			$s .= "</div>";
ARNO*'s avatar
ARNO* a validé
			$s = "";
			if ($affrub) {
ARNO*'s avatar
ARNO* a validé
				$rub = spip_fetch_array(spip_query("SELECT id_rubrique, titre FROM spip_rubriques WHERE id_rubrique=$id_rubrique"));
				$id_rubrique = $rub['id_rubrique'];
				$s .= "<a href='" . generer_url_ecrire("naviguer","id_rubrique=$id_rubrique") . "' style=\"display:block;\">".typo($rub['titre'])."</a>";
Fil's avatar
Fil a validé
			} else if ($statut != "prop")
Fil's avatar
Fil a validé
				$s = affdate_jourcourt($date_heure);
Fil's avatar
Fil a validé
			else
				$s .= _T('info_a_valider');
			
			if ($options == "avancees") {
				$vals[] = "<b>"._T('info_numero_abbreviation')."$id_breve</b>";
			}
			
		spip_free_result($result);
ARNO*'s avatar
ARNO* a validé
			if ($affrub) $largeurs = array('7', '', '188', '35');
			else  $largeurs = array('7','', '100', '35');
ARNO*'s avatar
ARNO* a validé
			$styles = array('', 'arial11', 'arial1', 'arial1');
ARNO*'s avatar
ARNO* a validé
			if ($affrub) $largeurs = array('7','', '188');
ARNO*'s avatar
ARNO* a validé
			else  $largeurs = array('7','', '100');
			$styles = array('','arial11', 'arial1');
		afficher_liste($largeurs, $table, $styles);

ARNO*'s avatar
ARNO* a validé
		echo "</table></div>";
		//fin_cadre_relief();
}


//
// Afficher tableau de rubriques
//

function afficher_rubriques($titre_table, $requete) {
	global $connect_id_auteur;
Fil's avatar
Fil a validé
	global $spip_lang_rtl;
ARNO*'s avatar
ARNO* a validé
	$tranches = afficher_tranches_requete($requete, 3);
ARNO*'s avatar
ARNO* a validé
		if ($titre_table) echo "<div style='height: 12px;'></div>";
		echo "<div class='liste'>";
		//debut_cadre_relief("rubrique-24.gif");
ARNO*'s avatar
ARNO* a validé
			bandeau_titre_boite2($titre_table, "rubrique-24.gif", "#999999", "white");
ARNO*'s avatar
ARNO* a validé
		echo "<table width=100% cellpadding=3 cellspacing=0 border=0 background=''>";
		$result = spip_query($requete);
		while ($row = spip_fetch_array($result)) {
			$vals = '';

			$id_rubrique = $row['id_rubrique'];
ARNO*'s avatar
ARNO* a validé
			$id_parent = $row['id_parent'];
			$titre = sinon($row['titre'], _T('ecrire:info_sans_titre'));
ARNO*'s avatar
ARNO* a validé
			$lang = traduire_nom_langue($row['lang']);
			$langue_choisie = $row['langue_choisie'];
			
			if ($langue_choisie == "oui") $lang = "<b>$lang</b>";
			else $lang = "($lang)";
			if ($id_parent == 0) $puce = "secteur-12.gif";
			else $puce = "rubrique-12.gif";
ARNO*'s avatar
ARNO* a validé
			$s = http_img_pack($puce, '- ', "border='0'");
			$vals[] = $s;
	
			$s = "<b><a href='" . generer_url_ecrire("naviguer","id_rubrique=$id_rubrique") . "'>";
			$s .= typo($titre);
			$s .= "</A></b>";
			$vals[] = $s;

			$s = "<div align=\"right\">";
esj's avatar
 
esj a validé
			if  ($GLOBALS['meta']['multi_rubriques'] == 'oui') {
ARNO*'s avatar
ARNO* a validé
				$s .= ($lang);
			}
			$s .= "</div>";
			$vals[] = $s;
			$table[] = $vals;
		}
		spip_free_result($result);
ARNO*'s avatar
ARNO* a validé
		$largeurs = array('12','', '');
		$styles = array('', 'arial2', 'arial11');
		afficher_liste($largeurs, $table, $styles);

		echo "</TABLE>";
ARNO*'s avatar
ARNO* a validé
		//fin_cadre_relief();
		echo "</div>";

//
// Afficher des auteurs sur requete SQL
//
function bonhomme_statut($row) {
	global $connect_statut;

Antoine Pitrou's avatar
Antoine Pitrou a validé
	switch($row['statut']) {
		case "0minirezo":
			return http_img_pack("admin-12.gif", "", "border='0'",
					_T('titre_image_administrateur'));
			break;
		case "1comite":
			if ($connect_statut == '0minirezo' AND ($row['source'] == 'spip' AND !($row['pass'] AND $row['login'])))
			  return http_img_pack("visit-12.gif",'', "border='0'", _T('titre_image_redacteur'));
			  return http_img_pack("redac-12.gif",'', "border='0'", _T('titre_image_redacteur_02'));
			break;
		case "5poubelle":
		  return http_img_pack("poubelle.gif", '', "border='0'",_T('titre_image_auteur_supprime'));
		case "6forum":
		  return http_img_pack("visit-12.gif", '', "border='0'",_T('titre_image_visiteur'));
		case "nouveau":
		default:
			return '';
// La couleur du statut
function puce_statut($statut, $type='article') {
	switch ($statut) {
		case 'publie':
			return 'verte';
		case 'prepa':
			return 'blanche';
		case 'prop':
			return 'orange';
		case 'refuse':
			return 'rouge';
		case 'poubelle':
			return 'poubelle';
	}
}


function afficher_auteurs ($titre_table, $requete) {
	$tranches = afficher_tranches_requete($requete, 2);

	if (strlen($tranches)) {

ARNO*'s avatar
ARNO* a validé
		debut_cadre_relief("auteur-24.gif");

		if ($titre_table) {
			echo "<p><table width=100% cellpadding=0 cellspacing=0 border=0 background=''>";
			echo "<tr><td width=100% background=''>";
			echo "<table width=100% cellpadding=3 cellspacing=0 border=0>";
			echo "<tr bgcolor='#333333'><td width=100% colspan=2><font face='Verdana,Arial,Sans,sans-serif' size=3 color='#FFFFFF'>";
			echo "<b>$titre_table</b></font></td></tr>";
		}
		else {
			echo "<p><table width=100% cellpadding=3 cellspacing=0 border=0 background=''>";
		}

		echo $tranches;

		$result = spip_query($requete);

		$table = '';
		while ($row = spip_fetch_array($result)) {
			$vals = '';

			$id_auteur = $row['id_auteur'];
			$tous_id[] = $id_auteur;
			$nom = $row['nom'];

			$s = bonhomme_statut($row);
			$s .= "<a href='" . generer_url_ecrire("auteurs_edit","id_auteur=$id_auteur") . "'>";
			$s .= typo($nom);
			$s .= "</a>";
			$vals[] = $s;
			$table[] = $vals;
		}
		spip_free_result($result);

		$largeurs = array('');
		$styles = array('arial2');
		afficher_liste($largeurs, $table, $styles);

		if ($titre_table) echo "</TABLE></TD></TR>";
		echo "</TABLE>";
		fin_cadre_relief();
	}
	return $tous_id;
}

function afficher_forum($request, $adresse_retour, $controle_id_article = false) {
esj's avatar
esj a validé
	global $spip_display;
	static $compteur_forum = 0;
	static $nb_forum = array();
	static $i = array();
	$compteur_forum++;
	$nb_forum[$compteur_forum] = spip_num_rows($request);
	
	if ($spip_display == 4) echo "<ul>";
 
 	while($row = spip_fetch_array($request)) {
		if ($compteur_forum==1) echo "\n<br /><br />";
		if (($controle_id_article) ? ($statut!="perso") :
			(($statut=="prive" OR $statut=="privrac" OR $statut=="privadm" OR $statut=="perso")
			 OR ($statut=="publie" AND $id_parent > 0))) {
esj's avatar
esj a validé
			afficher_forum_thread($row, $controle_id_article, $compteur_forum, $nb_forum, $i, $adresse_retour);
			afficher_forum(spip_query("SELECT * FROM spip_forum WHERE id_parent='" . $row['id_forum'] . "'" . ($controle_id_article ? " AND statut<>'off'" : '') . " ORDER BY date_heure"), $adresse_retour, $controle_id_article);	
		}
		$i[$compteur_forum]++;
	}
	if ($spip_display == 4) echo "</ul>";
	spip_free_result($request);
	$compteur_forum--;
}

function afficher_forum_thread($row, $controle_id_article, $compteur_forum, $nb_forum, $i, $adresse_retour) {
	global $spip_lang_rtl, $spip_lang_left, $spip_lang_right, $spip_display;
	static $voir_logo = array(); // pour ne calculer qu'une fois

	if (is_array($voir_logo)) {
		$voir_logo = (($spip_display != 1 AND $spip_display != 4 AND $GLOBALS['meta']['image_process'] != "non") ? 
		      "position: absolute; $spip_lang_right: 0px; margin: 0px; margin-top: -3px; margin-$spip_lang_right: 0px;" 
		      : '');
		if ($voir_logo) include_spip('inc/logos');
	}

	$id_forum=$row['id_forum'];
	$id_parent=$row['id_parent'];
	$id_rubrique=$row['id_rubrique'];
	$id_article=$row['id_article'];
	$id_breve=$row['id_breve'];
	$id_message=$row['id_message'];
	$id_syndic=$row['id_syndic'];
	$date_heure=$row['date_heure'];
	$titre=$row['titre'];
	$texte=$row['texte'];
	$auteur=$row['auteur'];
	$email_auteur=$row['email_auteur'];
	$nom_site=$row['nom_site'];
	$url_site=$row['url_site'];
	$statut=$row['statut'];
	$ip=$row["ip"];
	$id_auteur=$row["id_auteur"];
	
	echo "<a id='$id_forum'></a>";
	if ($spip_display != 4) {
		echo "<table width='100%' cellpadding='0' cellspacing='0' border='0'><tr>";
		afficher_forum_4($compteur_forum, $nb_forum, $i);
	}
	if ($id_auteur AND $voir_logo) {
		$titre_boite = baliser_logo("aut", $id_auteur, 48, 48, $voir_logo) .typo($titre);
	} else $titre_boite = $titre;
esj's avatar
esj a validé
	if ($spip_display == 4) {
		echo "<li>".typo($titre)."<br>";
	} else {
		if ($compteur_forum == 1) 
			echo afficher_forum_logo($statut, $titre_boite);
		else echo debut_cadre_thread_forum("", false, "", $titre_boite);
	}
esj's avatar
esj a validé
	// Si refuse, cadre rouge
	if ($statut=="off") {
		echo "<div style='border: 2px dashed red; padding: 5px;'>";
	}
	// Si propose, cadre jaune
	else if ($statut=="prop") {
		echo "<div style='border: 1px solid yellow; padding: 5px;'>";
	}
esj's avatar
esj a validé
	echo "<span class='arial2'>";
	//	echo affdate_court($date_heure);
	//	echo ", ";
	//	echo heures($date_heure).":".minutes($date_heure);
	
	echo date_relative($date_heure);
	
	echo "</span> ";
	
	if ($id_auteur)
		echo "<a href='" . generer_url_ecrire("auteurs_edit","id_auteur=$id_auteur") . "'>".typo($auteur)."</a>";
	else if ($email_auteur)
		echo "<a href='mailto:$email_auteur'>".typo($auteur)."</a>";
	else	echo typo($auteur);

	if ($id_auteur) {
		$bouton = bouton_imessage($id_auteur);
		if ($bouton) echo "&nbsp;".$bouton;
	}
esj's avatar
esj a validé
	// boutons de moderation
	if ($controle_id_article)
		echo boutons_controle_forum($id_forum, $statut, $id_auteur, "id_article=$id_article", $ip);
Fil's avatar
Fil a validé

esj's avatar
esj a validé
	echo safehtml(justifier(propre($texte)));
esj's avatar
esj a validé
	if ($nom_site) {
		if (strlen($url_site) > 10)
			echo "<div align='left' class='verdana2'><b><a href='$url_site'>$nom_site</a></b></div>";
		else echo "<b>$nom_site</b>";
	}
esj's avatar
esj a validé
	if (!$controle_id_article) {
		echo "<div align='right' class='verdana1'>";
		echo "<b><a href='", generer_url_ecrire("forum_envoi","id_parent=$id_forum&adresse_retour=" . rawurlencode($adresse_retour) . "&titre_message=".rawurlencode($titre) .'#formulaire'), 
esj's avatar
esj a validé
		  "'>",
		  _T('lien_repondre_message'),
		  "</a></b></div>";
	}
esj's avatar
esj a validé
	if ($GLOBALS['meta']["mots_cles_forums"] == "oui")
		afficher_forum_mots($id_forum);
esj's avatar
esj a validé
	if ($statut == "off" OR $statut == "prop") echo "</div>";
esj's avatar
esj a validé
	if ($spip_display != 4) {
		if ($compteur_forum == 1) echo fin_cadre_forum();
		else echo fin_cadre_thread_forum();
		echo "</td></tr></table>\n";
esj's avatar
esj a validé

function afficher_forum_logo($statut, $titre_boite)
{
	if ($statut == "prive") $logo = "forum-interne-24.gif";
	else if ($statut == "privadm") $logo = "forum-admin-24.gif";
	else if ($statut == "privrac") $logo = "forum-interne-24.gif";
	else $logo = "forum-public-24.gif";
	return debut_cadre_forum($logo, false, "", $titre_boite);
}

function afficher_forum_mots($id_forum)
{
	$query_mots = "SELECT * FROM spip_mots AS mots, spip_mots_forum AS lien WHERE lien.id_forum = '$id_forum' AND lien.id_mot = mots.id_mot";
	$result_mots = spip_query($query_mots);

	echo '<ul>';
	while ($row_mots = spip_fetch_array($result_mots)) {
		$id_mot = $row_mots['id_mot'];
		$titre_mot = propre($row_mots['titre']);
		$type_mot = propre($row_mots['type']);
		echo "<li> <b>",$type_mot," :</b> ",$titre_mot, "<li>";
	}
	echo '</ul>';
}

// affiche les traits de liaisons entre les reponses

function afficher_forum_4($compteur_forum, $nb_forum, $i)
{
esj's avatar
esj a validé
	global $spip_lang_rtl;
	$fleche='rien.gif';
	for ($count=2;$count<=$compteur_forum AND $count<20;$count++){
		$fond[$count]=_DIR_IMG_PACK . 'rien.gif';
		if ($i[$count]!=$nb_forum[$count]){
			$fond[$count]=_DIR_IMG_PACK . 'forum-vert.gif';
		}
		echo "<td width='10' valign='top' background=$fond[$count]>";
		if ($count==$compteur_forum){
			$fleche="forum-droite$spip_lang_rtl.gif";
		}
		echo http_img_pack($fleche, " ", "width='10' height='13' border='0'"), "</td>\n";
	}
	echo "\n<td width=100% valign='top'>";
}


Fil's avatar
Fil a validé
function envoi_link($nom_site_spip, $rubrique="") {
	global $connect_statut, $connect_toutes_rubriques, $spip_display;
	global $spip_lang, $couleur_claire, $couleur_foncee;
Fil's avatar
Fil a validé

Fil's avatar
Fil a validé
	$args = "couleur_claire=" .
		substr($couleur_claire,1) .
		'&couleur_foncee=' .
		substr($couleur_foncee,1) .
		'&ltr=' . 
		$GLOBALS['spip_lang_left'];

	// CSS par defaut /spip_style.css
	$res = '<link rel="stylesheet" type="text/css" href="'
	. find_in_path('spip_style.css').'" />'

	// CSS espace prive
	. '<link rel="stylesheet" type="text/css" href="'
ARNO*'s avatar
ARNO* a validé
	. generer_url_public('style_prive', $args) .'" />
Fil's avatar
Fil a validé
	. '<link rel="stylesheet" type="text/css" href="'
	. find_in_path('calendrier.css') .'" />' . "\n"

	// CSS imprimante (masque des trucs, a completer)
	. '<link rel="stylesheet" type="text/css" href="' . _DIR_IMG_PACK
	. 'spip_style_print.css" media="print" />' . "\n"

	// CSS "visible au chargement", hack necessaire pour garder un depliement
	// sympathique meme sans javascript (on exagere ?)
	// Pour l'explication voir http://www.alistapart.com/articles/alternate/
	. '<link rel="alternate stylesheet" type="text/css" href="' . _DIR_IMG_PACK
	. 'spip_style_invisible.css" title="invisible" />' . "\n"
	. '<link rel="stylesheet" href="' . _DIR_IMG_PACK
	. 'spip_style_visible.css"  title="visible" />' . "\n"
Fil's avatar
Fil a validé
	. '<link rel="shortcut icon" href="'
	. url_absolue('x/'.find_in_path('favicon.ico')) # petit hack sur l'url
	. "\" />\n";
	$js = debut_javascript($connect_statut == "0minirezo"
			AND $connect_toutes_rubriques,
			($GLOBALS['meta']["activer_statistiques"] != 'non'));

	if ($spip_display == 4) return $res . $js;

	$res .= "<link rel='alternate' type='application/rss+xml'
			title=\"".entites_html($nom_site_spip)."\" href='"
			. generer_url_public('backend') . "' />\n";
	$res .= "<link rel='help' type='text/html' title=\""._T('icone_aide_ligne') . 
			"\" href='"
			. generer_url_ecrire('aide_index',"var_lang=$spip_lang")
			."' />\n";
	if ($GLOBALS['meta']["activer_breves"] != "non")
		$res .= "\n<link rel='alternate' type='application/rss+xml' title='"
			. addslashes($nom_site_spip)
			. " ("._T("info_breves_03")
			. ")' href='" . generer_url_public('backend-breves') . "' />\n";

	return $res . $js;
}

function debut_javascript($admin, $stat)
{
	global $spip_lang_left, $browser_name, $browser_version;
Fil's avatar
Fil a validé
	include_spip('inc/charsets');

	# teste la capacite ajax : on envoie un cookie -1
	# et un script ajax ; si le script reussit le cookie passera a +1
	if (!$GLOBALS['_COOKIE']['spip_accepte_ajax']) {
		spip_setcookie('spip_accepte_ajax', -1);
		$ajax = "if (a = createXmlHttp()) {
	a.open('GET', '" . generer_url_ecrire("ajax_page","fonction=test", true) .
	a.send(null);
}";
	} else $ajax = "";
	// envoi le fichier JS de config si browser ok.
		$GLOBALS['browser_layer'] .
	# tester la capacite ajax si ce n'est pas deja fait
			$ajax . 
			"\nvar admin = " . ($admin ? 1 : 0) .
			"\nvar stat = " . ($stat ? 1 : 0) .
			"\nvar largeur_icone = " .
			largeur_icone_bandeau_principal(_T('icone_a_suivre')) .
			"\nvar  bug_offsetwidth = " .
// uniquement affichage ltr: bug Mozilla dans offsetWidth quand ecran inverse!
			((($spip_lang_left == "left") &&
			  (($browser_name != "MSIE") ||
			   ($browser_version >= 6))) ? 1 : 0) .
			"\nvar confirm_changer_statut = '" .
			unicode_to_javascript(addslashes(html2unicode(_T("confirm_changer_statut")))) . 
			"';\n") .
		http_script('',_DIR_IMG_PACK . 'presentation.js');
Antoine Pitrou's avatar
 
Antoine Pitrou a validé

// Fonctions onglets

function onglet_relief_inter(){
ARNO*'s avatar
ARNO* a validé
	
	echo "<td>&nbsp;</td>";
	
ARNO*'s avatar
ARNO* a validé

	echo "\n\n";
	echo "<div style='padding: 7px;'><table cellpadding='0' cellspacing='0' border='0' align='center'>";
	echo "<tr>";
ARNO*'s avatar
ARNO* a validé
	echo "</tr>";
	echo "</table></div>\n\n";
}

function onglet($texte, $lien, $onglet_ref, $onglet, $icone=""){
ARNO*'s avatar
ARNO* a validé
	global $spip_display, $spip_lang_left ;


	echo "<td>";
	
	if ($onglet != $onglet_ref) {
		echo "<div style='position: relative;'>";
		if ($spip_display != 1) {
			if (strlen($icone) > 0) {
				echo "<div style='z-index: 2; position: absolute; top: 0px; $spip_lang_left: 5px;'>" .
				  http_img_pack("$icone", "", "") . "</div>";
ARNO*'s avatar
ARNO* a validé
				$style = " top: 7px; padding-$spip_lang_left: 32px; z-index: 1;";
			} else {
				$style = " top: 7px;";
ARNO*'s avatar
ARNO* a validé
		
		echo "<div onMouseOver=\"changeclass(this, 'onglet_on');\" onMouseOut=\"changeclass(this, 'onglet');\" class='onglet' style='position: relative;$style'><a href='$lien'>$texte</a></div>";
		
		
		echo "</div>";
	} else {
		echo "<div style='position: relative;'>";
		if ($spip_display != 1) {
			if (strlen($icone) > 0) {
				echo "<div style='z-index: 2; position: absolute; top: 0px; $spip_lang_left: 5px;'>" .
				  http_img_pack("$icone", "", "") . "</div>";
ARNO*'s avatar
ARNO* a validé
				$style = " top: 7px; padding-$spip_lang_left: 32px; z-index: 1;";
			} else {
				$style = " top: 7px;";
ARNO*'s avatar
ARNO* a validé
		
		echo "<div class='onglet_off' style='position: relative;$style'>$texte</div>";
		
		
		echo "</div>";
ARNO*'s avatar
ARNO* a validé
	echo "</td>";
Fil's avatar
 
Fil a validé
function barre_onglets($rubrique, $ongletCourant){
	$onglets= definir_barre_onglets($rubrique);
	if(count($onglets)==0) return;
Fil's avatar
 
Fil a validé
	foreach($onglets as $exec => $onglet) {
		$url= $onglet->url ? $onglet->url : generer_url_ecrire($exec);
		onglet(_T($onglet->libelle), $url,
 			$exec, $ongletCourant, $onglet->icone);
	fin_onglet();
ARNO*'s avatar
ARNO* a validé
function largeur_icone_bandeau_principal($texte) {
	global $spip_display, $spip_ecran ;
ARNO*'s avatar
ARNO* a validé
	global $connect_statut, $connect_toutes_rubriques;
	if ($spip_display == 1){
		$largeur = 80;
	else if ($spip_display == 3){
Antoine Pitrou's avatar
Antoine Pitrou a validé
		$largeur = 60;
Antoine Pitrou's avatar
Antoine Pitrou a validé
		if (count(explode(" ", $texte)) > 1) $largeur = 84;
Antoine Pitrou's avatar
Antoine Pitrou a validé
		else $largeur = 80;
ARNO*'s avatar
ARNO* a validé
	if ($spip_ecran == "large") $largeur = $largeur + 30;

	if (!($connect_statut == "0minirezo" AND $connect_toutes_rubriques)) {
		$largeur = $largeur + 30;
	}


	return $largeur;
}

function icone_bandeau_principal($texte, $lien, $fond, $rubrique_icone = "vide", $rubrique = "", $lien_noscript = "", $sous_rubrique_icone = "", $sous_rubrique = ""){
esj's avatar
esj a validé
	global $spip_display, $spip_ecran;
ARNO*'s avatar
ARNO* a validé
	global $menu_accesskey, $compteur_survol;
ARNO*'s avatar
ARNO* a validé
	$largeur = largeur_icone_bandeau_principal($texte);

ARNO*'s avatar
ARNO* a validé
	if ($spip_display == 1){
	}
	else if ($spip_display == 3){
ARNO*'s avatar
ARNO* a validé
	}
	else {
esj's avatar
esj a validé
	if (!$menu_accesskey = intval($menu_accesskey)) $menu_accesskey = 1;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($menu_accesskey < 10) {
		$accesskey = " accesskey='$menu_accesskey'";
		$menu_accesskey++;
	}
	else if ($menu_accesskey == 10) {
		$accesskey = " accesskey='0'";
		$menu_accesskey++;
	}
Antoine Pitrou's avatar
Antoine Pitrou a validé

ARNO*'s avatar
ARNO* a validé
	if ($sous_rubrique_icone == $sous_rubrique) $class_select = " class='selection'";
Antoine Pitrou's avatar
Antoine Pitrou a validé

	if (eregi("^javascript:",$lien)) {
Antoine Pitrou's avatar
Antoine Pitrou a validé
		$a_href = "<a$accesskey onClick=\"$lien; return false;\" href='$lien_noscript' target='spip_aide'$class_select>";
Antoine Pitrou's avatar
Antoine Pitrou a validé
		$a_href = "<a$accesskey href=\"$lien\"$class_select>";
Antoine Pitrou's avatar
Antoine Pitrou a validé

	if ($spip_display != 1 AND $spip_display != 4) {
		echo "<td class='cellule48' onMouseOver=\"changestyle('bandeau$rubrique_icone', 'visibility', 'visible');\" width='$largeur'>$a_href" .
		  http_img_pack("$fond", $alt, "$title width='48' height='48'");
Antoine Pitrou's avatar
Antoine Pitrou a validé
			echo "<span>$texte</span>";
ARNO*'s avatar
ARNO* a validé
	else echo "<td class='cellule-texte' onMouseOver=\"changestyle('bandeau$rubrique_icone', 'visibility', 'visible');\" width='$largeur'>$a_href".$texte;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	echo "</a></td>\n";
Fil's avatar
Fil a validé
function icone_bandeau_secondaire($texte, $lien, $fond, $rubrique_icone = "vide", $rubrique, $aide=""){
	global $menu_accesskey, $compteur_survol;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($spip_display == 1) {
Antoine Pitrou's avatar
Antoine Pitrou a validé
		//$hauteur = 20;
		$largeur = 80;
	}
	else if ($spip_display == 3){
Antoine Pitrou's avatar
Antoine Pitrou a validé
		//$hauteur = 26;
Antoine Pitrou's avatar
Antoine Pitrou a validé
		$largeur = 40;
Antoine Pitrou's avatar
Antoine Pitrou a validé
		//$hauteur = 68;
Antoine Pitrou's avatar
Antoine Pitrou a validé
		if (count(explode(" ", $texte)) > 1) $largeur = 80;
		else $largeur = 70;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($aide AND $spip_display != 3) {
		$largeur += 50;
ARNO*'s avatar
ARNO* a validé
		//$texte .= aide($aide);
Antoine Pitrou's avatar
Antoine Pitrou a validé
	}
ARNO*'s avatar
ARNO* a validé
	if ($spip_display != 3 AND strlen($texte)>16) $largeur += 20;
	
esj's avatar
esj a validé
	if (!$menu_accesskey = intval($menu_accesskey)) $menu_accesskey = 1;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($menu_accesskey < 10) {
		$accesskey = " accesskey='$menu_accesskey'";
		$menu_accesskey++;
	}
	else if ($menu_accesskey == 10) {
		$accesskey = " accesskey='0'";
		$menu_accesskey++;
	}
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($spip_display == 3) $accesskey_icone = $accesskey;
Antoine Pitrou's avatar
Antoine Pitrou a validé
	if ($rubrique_icone == $rubrique) $class_select = " class='selection'";
Antoine Pitrou's avatar
Antoine Pitrou a validé

Antoine Pitrou's avatar
Antoine Pitrou a validé
	$a_href = "<a$accesskey href=\"$lien\"$class_select>";

	if ($spip_display != 1) {
ARNO*'s avatar
ARNO* a validé
		echo "<td class='cellule36' style='width: ".$largeur."px;'>";
		echo "$a_href" .
		  http_img_pack("$fond", $alt, "$title");
		if ($aide AND $spip_display != 3) echo aide($aide)." ";
Antoine Pitrou's avatar
Antoine Pitrou a validé
		if ($spip_display != 3) {
			echo "<span>$texte</span>";
Antoine Pitrou's avatar
Antoine Pitrou a validé
	}
Antoine Pitrou's avatar
Antoine Pitrou a validé
	else echo "<td class='cellule-texte' width='$largeur'>$a_href".$texte;
ARNO*'s avatar
ARNO* a validé
	echo "</a>";	
	echo "</td>\n";
Fil's avatar
 
Fil a validé
function icone($texte, $lien, $fond, $fonction="", $align="", $afficher='oui'){
esj's avatar
esj a validé
	global $spip_display, $compteur_survol;
Antoine Pitrou's avatar
Antoine Pitrou a validé

	$compteur_survol ++;
	if ($fonction == "supprimer.gif") {
		$style = '-danger';
	} else {
		$style = '';
		if (strlen($fonction) < 3) $fonction = "rien.gif";
	}

	if ($spip_display == 1){
		$hauteur = 20;
ARNO*'s avatar
ARNO* a validé
		$largeur = 100;
	}
	else if ($spip_display == 3){
		$hauteur = 30;
		$largeur = 30;
ARNO*'s avatar
ARNO* a validé
		$largeur = 100;
Antoine Pitrou's avatar
Antoine Pitrou a validé

	if ($spip_display != 1 AND $spip_display != 4){
		  $icone = http_img_pack($fonction, $alt, "$title width='24' height='24' border='0'" .
					  http_style_background($fond, "no-repeat center center"));
			$icone = http_img_pack($fond, $alt, "$title width='24' height='24' border='0'");
		$icone .= "<span>$texte</span>";
	$icone = "\n<table cellpadding='0' class='pointeur' cellspacing='0' border='0' width='$largeur'" .
	  ((strlen($align) > 2) ? " align='$align' " : '') .
	">\n<tr><td class='icone36$style' style='text-align:center;'><a
	href='$lien'>$icone</a></td>\n</tr></table>";
Fil's avatar
 
Fil a validé

	if ($afficher == 'oui')
		echo $icone;
	else
		return $icone;
function icone_horizontale($texte, $lien, $fond = "", $fonction = "", $echo = true, $javascript='') {
esj's avatar
esj a validé
	global $spip_display, $compteur_survol;
Antoine Pitrou's avatar
Antoine Pitrou a validé

ARNO*'s avatar
ARNO* a validé
	if ($spip_display != 4) {
		if (!$fonction) $fonction = "rien.gif";
		$danger = ($fonction == "supprimer.gif");
	
		if ($danger) $retour .= "<div class='danger'>";
		if ($spip_display != 1) {
			$retour .= "<a href='$lien' class='cellule-h' $javascript><table cellpadding='0' valign='middle'><tr>\n";
			$retour .= "<td><a href='$lien' class='cellule-h'><div class='cell-i'>" .
			  http_img_pack($fonction, "", http_style_background($fond, "center center no-repeat")) .
			  "</div></a></td>\n" .
			  "<td class='cellule-h-lien'><a href='$lien' class='cellule-h'>$texte</a></td>\n";
ARNO*'s avatar
ARNO* a validé
			$retour .= "</tr></table></a>\n";
		}
		else {
			$retour .= "<a href='$lien' class='cellule-h-texte' $javascript><div>$texte</div></a>\n";
ARNO*'s avatar
ARNO* a validé
		}
		if ($danger) $retour .= "</div>";
	} else {
		$retour = "<li><a href='$lien'>$texte</li>";
function bandeau_barre_verticale(){
Antoine Pitrou's avatar
Antoine Pitrou a validé
	echo "<td class='separateur'></td>\n";
ARNO*'s avatar
ARNO* a validé
function lien_change_var($lien, $set, $couleur, $coords, $titre, $mouseOver="") {
Fil's avatar
Fil a validé
	$lien = parametre_url($lien, $set, $couleur);
	return "\n<area shape='rect' href='$lien' coords='$coords' title=\"$titre\" $mouseOver>";
function afficher_menu_rubriques() {
esj's avatar
 
esj a validé
	$date_maj = $GLOBALS['meta']["date_calcul_rubriques"];
esj's avatar
esj a validé
	echo http_script('',generer_url_ecrire("js_menu_rubriques","date=$date_maj&spip_ecran=$spip_ecran&dir=$spip_lang_rtl"),'');
function afficher_javascript ($html) {
	  return http_script("
Fil's avatar
 
Fil a validé
document.write(\"" . addslashes(strtr($html, "\n\r", "  "))."\")");

//
// Presentation de l'interface privee, debut du HTML
//

function debut_page($titre = "", $rubrique = "asuivre", $sous_rubrique = "asuivre", $onLoad = "", $css="", $id_rubrique = "") {