コード例 #1
0
ファイル: regler_moderation.php プロジェクト: rhertzog/lcs
function inc_regler_moderation_dist($id_article, $script, $args) {
	include_spip('inc/presentation');

	global $spip_lang_right;

	$statut_forum = get_forums_publics($id_article);
	$choix_forum = $GLOBALS['liste_des_forums'];
	$opt = '';
	foreach ($choix_forum as $desc => $val) {
		$opt .= "\n\t<option";
		if ($statut_forum == $val)
			$opt .= " selected='selected'";
		$opt .= " value='$val'>"._T($desc)."</option>";
	}

	$nb_forums = sql_countsel("spip_forum", "id_article=$id_article AND statut IN ('publie', 'off', 'prop', 'spam')");

	if ($nb_forums) {
		$res = '<!-- visible -->' // message pour l'appelant
		. icone_horizontale(
			_T('icone_suivi_forum', array('nb_forums' => $nb_forums)),
			generer_url_ecrire("articles_forum","id_article=$id_article"),
			"suivi-forum-24.gif",
			"",
			false
		);
	} elseif ($statut_forum != 'non')
		$res = bouton_spip_rss('forums_public', array("id_article" => $id_article));

	$res .= "\n\t<label for='change_accepter_forum'>"
	. _T('info_fonctionnement_forum') ."</label>"
	. "\n\t<select name='change_accepter_forum' id='change_accepter_forum'
		class='spip_xx-small'
		onchange=\"findObj_forcer('valider_regler_moderation_$id_article').style.visibility='visible';\"
		>"
	. $opt
	."\n\t</select><br />\n";

	$atts = " style='float: $spip_lang_right' id='valider_regler_moderation_$id_article' class='visible_au_chargement'";

	$res = ajax_action_post('regler_moderation', $id_article, $script, $args, $res,_T('bouton_changer'), $atts);

	return ajax_action_greffe("regler_moderation", $id_article, $res);
}
コード例 #2
0
ファイル: messagerie.php プロジェクト: rhertzog/lcs
function exec_messagerie_dist()
{

global $connect_id_auteur, $connect_statut, $spip_lang_rtl;


$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('titre_page_messagerie'), "accueil", "messagerie");

echo debut_gauche("messagerie",true);


echo debut_boite_info(true);

echo _T('info_gauche_messagerie');

echo "<p>".http_img_pack("m_envoi$spip_lang_rtl.gif", 'V', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_vert'), '</p>';

 echo aide ("messut");

echo "<p>".http_img_pack("m_envoi_bleu$spip_lang_rtl.gif", 'B', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_bleu'), '</p>';

echo aide ("messpense");

echo "<p>".http_img_pack("m_envoi_jaune$spip_lang_rtl.gif", 'J', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_jaune'), '</p>';

echo fin_boite_info(true);

echo creer_colonne_droite('', true);

echo debut_cadre_relief("messagerie-24.gif", true);
echo icone_horizontale(_T('lien_nouvea_pense_bete'),generer_action_auteur("editer_message","pb"), "pense-bete.gif", "", false);
echo icone_horizontale(_T('lien_nouveau_message'),generer_action_auteur("editer_message","normal"), "message.gif", "", false);
		
		if ($connect_statut == "0minirezo") {
			echo icone_horizontale(_T('lien_nouvelle_annonce'),generer_action_auteur("editer_message","affich"), "annonce.gif", "", false);
		}
echo fin_cadre_relief(true);


# Affiche l'encadre "lien iCal"

 echo
    debut_cadre_enfonce('',true) .
    "<div class='verdana1'>"._T("calendrier_synchro") .
    "<table  class='cellule-h-table' cellpadding='0'><tr>\n" .
    "<td><a href='" . generer_url_ecrire("synchro") . "' class='ical'>&nbsp;</a></td>\n"
    . "<td class='cellule-h-lien'><br /><a href='" . generer_url_ecrire("synchro") . "' class='cellule-h'>" 
    . _T("icone_suivi_activite")
    . "</a></td>\n</tr></table>\n" ."</div>" .
    fin_cadre_enfonce(true);


 echo debut_droite("messagerie", true);

 $messages_vus = array();

 echo afficher_ses_messages('<b>' . _T('infos_vos_pense_bete') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='publie' AND type='pb' AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')", $messages_vus, false, true);


 echo afficher_ses_messages('<b>' . _T('info_nouveaux_message') . '</b>', ", spip_auteurs_messages AS lien", "lien.id_auteur=$connect_id_auteur AND vu='non' AND statut='publie' AND lien.id_message=messages.id_message", $messages_vus,  true, true);


 echo afficher_ses_messages('<b>' . _T('info_discussion_cours') . '</b>', ", spip_auteurs_messages AS lien", "lien.id_auteur=$connect_id_auteur AND statut='publie' AND type='normal' AND lien.id_message=messages.id_message AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')",  $messages_vus, true, false);


// Afficher le lien RSS

echo bouton_spip_rss('messagerie', array('id_auteur' => $connect_id_auteur));



 echo afficher_ses_messages('<b>' . _T('info_message_en_redaction') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='redac'",  $messages_vus, true, false);


 $result = sql_select('auteurs.id_auteur, auteurs.nom, COUNT(*) AS total', 'spip_auteurs AS auteurs,  spip_auteurs_messages AS lien2, spip_messages AS messages, spip_auteurs_messages AS lien', "(lien.id_auteur = $connect_id_auteur AND lien.id_message = messages.id_message AND messages.statut = 'publie' AND (messages.rv != 'oui' OR messages.date_fin > ".sql_quote(date('Y-m-d H:i:s'))." )) AND (lien2.id_auteur = lien2.id_auteur AND lien2.id_message = messages.id_message AND lien2.id_auteur != $connect_id_auteur AND auteurs.id_auteur = lien2.id_auteur)", "auteurs.id_auteur", 'total DESC', 10);

 $cor = array();
 while($row = sql_fetch($result)) {
		$id_auteur = $row['id_auteur'];
		$nom = typo($row["nom"]);
		$total = $row["total"];
		$cor[]= "<div class='tr_liste'\nonmouseover=\"changeclass(this,'tr_liste_over');\"\nonmouseout=\"changeclass(this,'tr_liste');\"\nstyle='padding: 2px; padding-left: 10px; border-bottom: 1px solid #cccccc;'><div class='verdana1'><img src='" . chemin_image('redac-12.gif') . "'\nstyle='border: 0px' alt=' ' /> <a href='" . generer_url_ecrire("auteur_infos","id_auteur=$id_auteur") . "'>$nom,</a> ($total)</div></div>";
 }

 if ($cor) {

	echo "<div style='height: 12px;'></div>";
	$bouton = bouton_block_depliable(_T('info_principaux_correspondants'),true,'principaux');
	echo debut_cadre('liste',"redacteurs-24.gif",'',$bouton);
	echo debut_block_depliable(true,'principaux');
	echo "<table width='100%' cellpadding='0' cellspacing='0'>";
	echo "<tr><td valign='top' style='width: 50%'>";
	$count = ceil(count($cor)/2);
	echo join("\n",array_slice($cor, 0, $count));
	echo "</td><td valign='top' style='width: 50%'>";
	echo join("\n",array_slice($cor, $count));
	echo "</td></tr></table>";
	echo fin_block();
	echo fin_cadre('liste');
 }

 echo afficher_ses_messages('<b>' . _T('info_pense_bete_ancien') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='publie' AND type='pb' AND rv!='oui'",  $messages_vus, false, false);

 echo afficher_ses_messages('<b>' . _T('info_tous_redacteurs') . '</b>', '', "statut='publie' AND type='affich' AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')",  $messages_vus, false, false);

echo fin_gauche(), fin_page();

}
コード例 #3
0
ファイル: accueil.php プロジェクト: rhertzog/lcs
function encours_accueil()
{
	global $connect_statut, $connect_toutes_rubriques;


	$res = '';

	// Les articles a valider
	//

	$res .=  afficher_objets('article',_T('info_articles_proposes'), array("WHERE" => "statut='prop'", 'ORDER BY' => "date DESC"));

	//
	// Les breves a valider
	//
	$res .= afficher_objets('breve',afficher_plus(generer_url_ecrire('breves'))._T('info_breves_valider'), array("FROM" => 'spip_breves', 'WHERE' => "statut='prepa' OR statut='prop'", 'ORDER BY' => "date_heure DESC"), true);

	//
	// Les sites references a valider
	//
	if ($GLOBALS['meta']['activer_sites'] != 'non') {
		$res .= afficher_objets('site',afficher_plus(generer_url_ecrire('sites_tous')).'<b>' . _T('info_site_valider') . '</b>', array("FROM" => 'spip_syndic', 'WHERE' => "statut='prop'", 'ORDER BY'=> "nom_site"));
	}

	if ($connect_statut == '0minirezo') {
	//
	// Les sites a probleme
	//
	  if ($GLOBALS['meta']['activer_sites'] != 'non') {
		$res .= afficher_objets('site',afficher_plus(generer_url_ecrire('sites_tous')). '<b>' . _T('avis_sites_syndiques_probleme') . '</b>', array('FROM' => 'spip_syndic', 'WHERE' => "(syndication='off' OR syndication='sus') AND statut='publie'", 'ORDER BY' => 'nom_site'));
	}

	// Les articles syndiques en attente de validation
		$cpt = sql_countsel("spip_syndic_articles", "statut='dispo'");
		if ($cpt)
			$res .= "\n<br /><small><a href='"
			. generer_url_ecrire("sites_tous","")
			. "' style='color: black;'>"
			. $cpt
			. " "
			. _T('info_liens_syndiques_1')
			. " "
			. _T('info_liens_syndiques_2')
			. "</a></small>";

	// Les forums en attente de moderation

		$cpt = sql_countsel("spip_forum", "statut='prop'");
		if ($cpt) {
		if ($cpt>1)
			$lien = _T('info_liens_syndiques_3')." "._T('info_liens_syndiques_4');
		else
			$lien = _T('info_liens_syndiques_5')." "._T('info_liens_syndiques_6');
		$lien = "<small>$cpt $lien " ._T('info_liens_syndiques_7'). "</small>";
		if ($connect_toutes_rubriques)
			$lien = "<a href='" . generer_url_ecrire("controle_forum","type=prop") . "' style='color: black;'>". $lien . ".</a>";
		$res .= "\n<br />" . $lien;
		}
	}
	
	$res = pipeline('accueil_encours',$res);

	if (!$res) return '';

	return 
	"<div style='position:relative;display:inline;'>" 
	. debut_cadre_couleur_foncee("",true, "", _T('texte_en_cours_validation')
		. (($GLOBALS['meta']['forum_prive_objets'] != 'non')
			? ' '._T('texte_en_cours_validation_forum')
			: '' )
		)
	. $res
	. bouton_spip_rss('a_suivre')
	. fin_cadre_couleur_foncee(true)
	. "</div>";
}
コード例 #4
0
ファイル: suivi_revisions.php プロジェクト: rhertzog/lcs
function exec_suivi_revisions_dist()
{
	$debut = intval(_request('debut'));
	$lang_choisie = _request('lang_choisie');
	$id_auteur = intval(_request('id_auteur'));
	$id_secteur = intval(_request('id_secteur'));

	$nom_auteur = $GLOBALS['visiteur_session']['nom'];
	$connecte = $GLOBALS['visiteur_session']['id_auteur'];
	//if ($id_auteur == $connecte) $id_auteur = false;

	$commencer_page = charger_fonction('commencer_page', 'inc');
	echo $commencer_page(_T("icone_suivi_revisions"));

	echo debut_gauche('', true);

	if (autoriser('voir', 'article'))
	  $req_where = sql_in('articles.statut', array('prepa','prop','publie')); 
	else $req_where = sql_in('articles.statut', array('prop','publie')); 

	echo debut_cadre_relief('', true);

	echo "<div class='arial11'><ul>";

	if (!$id_auteur AND $id_secteur < 1) echo "\n<li><b>"._T('info_tout_site')."</b></li>";
	else echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions") . "'>"._T('info_tout_site')."</a></li>";


	if ($id_auteur) echo "\n<li><b>$nom_auteur</b></li>";
	else echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","id_auteur=$connecte") . "'>$nom_auteur</a></li>";

	if (($GLOBALS['meta']['multi_rubriques'] == 'oui') OR ($GLOBALS['meta']['multi_articles'] == 'oui'))
		$langues = explode(',', $GLOBALS['meta']['langues_multilingue']);
	else
		$langues = array();

	$result = sql_select("id_rubrique, titre", "spip_rubriques", 'id_parent=0','', '0+titre,titre');

	while ($row = sql_fetch($result)) {
		$id_rubrique = $row['id_rubrique'];
		$titre = typo($row['titre']);

		if ($id_rubrique == $id_secteur)  echo "\n<li><b>$titre</b>";
		else {
		  if (sql_countsel('spip_versions AS versions LEFT JOIN spip_articles AS articles ON versions.id_article = articles.id_article', "versions.id_version > 1 AND articles.id_secteur=$id_rubrique AND $req_where"))
		    echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","id_secteur=$id_rubrique") . "'>$titre</a></li>";
		}
	}
	foreach ($langues as $lang) {
		$titre = traduire_nom_langue($lang);

		if ($lang == $lang_choisie)  echo "\n<li><b>$titre</b></li>";
		else {
			$n = sql_countsel('spip_versions AS versions LEFT JOIN spip_articles AS articles ON versions.id_article = articles.id_article', "versions.id_version > 1 AND articles.lang='$lang' AND $req_where");
			if ($n) echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","lang_choisie=$lang") . "'>$titre</a></li>";
		}
	}
	echo "</ul></div>\n";

// lien vers le rss

	$args = array('id_secteur' => $id_secteur);
	if ($id_auteur) {
		$args['id_auteur'] = $id_auteur;
		$args['statut'] = 'prepa';
	}

	echo bouton_spip_rss('revisions', $args, $lang_choisie);

	echo fin_cadre_relief(true);

	echo debut_droite("", true);
	echo afficher_suivi_versions($debut, $id_secteur, $id_auteur, $lang_choisie);
	echo fin_gauche(), fin_page();
}
コード例 #5
0
ファイル: articles_forum.php プロジェクト: rhertzog/lcs
function articles_forum_cadres($id_rubrique, $id_article, $titre, $script, $args)
{
	global $spip_lang_right, $spip_lang_left;

	echo debut_grand_cadre(true);

	echo afficher_hierarchie($id_rubrique);

	echo fin_grand_cadre(true);

	echo debut_gauche('', true);

	echo debut_boite_info(true);

	echo "<p style='text-align: $spip_lang_left; ' class='verdana1 spip_x-small'>",
	  _T('info_gauche_suivi_forum'),
	  aide ("suiviforum"),
	  "</p>";

	$url = bouton_spip_rss('forums_public', array("id_article" => $id_article));

	echo "<div style='text-align: $spip_lang_right;'>", $url, "</div>";

	echo fin_boite_info(true);

	$res = icone_horizontale(_T('icone_statistiques_visites'), generer_url_ecrire("statistiques_visites","id_article=$id_article"), "statistiques-24.gif","rien.gif", false);

	echo bloc_des_raccourcis($res);

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

	echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
	echo "<tr>";
	echo "<td>";
	echo icone(_T('icone_retour'),
		$url = generer_url_ecrire($script, $args),
		"article-24.gif", "rien.gif");
	echo "</td>";
	echo "<td>" . http_img_pack('rien.gif', " ", "width='10'") ."</td>\n";
	echo "<td style='width: 100%'>";
	echo _T('texte_messages_publics');
	echo gros_titre("<a href='$url'>$titre</a>",'', false);
	echo "</td></tr></table>";
}
コード例 #6
0
ファイル: controle_forum.php プロジェクト: rhertzog/lcs
function exec_controle_forum_args2($id_rubrique, $type, $debut, $pas, $enplus, $recherche, $from, $where, $debut_id_forum)
{
	// Si un id_controle_forum est demande, on adapte le debut
	if ($debut_id_forum
	AND (NULL !== ($d = sql_getfetsel('date_heure', 'spip_forum', "id_forum=$debut_id_forum")))) {
	  $debut = sql_countsel($from, $where . (" AND F.date_heure > '$d'"));
	}

	if ($recherche)
	  $args = 'recherche='.rawurlencode($recherche).'&';
	else $args = '';

	$args .= (!$id_rubrique ? "" : "id_rubrique=$id_rubrique&") . 'type=';

	$query = array('SELECT' => "F.id_forum, F.id_parent, F.id_rubrique, F.id_article, F.id_breve, F.date_heure, F.titre, F.texte, F.auteur, F.email_auteur, F.nom_site, F.url_site, F.statut, F.ip, F.id_auteur",
		       'FROM' => $from,
		       'WHERE' => $where,
		       'GROUP BY' => "",
		       'ORDER BY' => "F.date_heure DESC");
  
	$nav = affiche_navigation_forum($query, 'controle_forum', $args . $type, $debut, $pas, $enplus);

	$select = sql_select($query['SELECT'], $query['FROM'], $query['WHERE'], $query['GROUP BY'], $query['ORDER BY'], $query['LIMIT']);
	
	$res = '';
	while ($row = sql_fetch($select)) 
		$res .= controle_forum_boucle($row, "$args$type&debut=$debut");
	$res =  "<br />$nav<br />$res<br />$nav";	

	if (_AJAX) {
		ajax_retour($res);
	} else {
		pipeline('exec_init',array('args'=>array('exec'=>'controle_forum', 'type'=>$type),'data'=>''));

		$commencer_page = charger_fonction('commencer_page', 'inc');
		echo $commencer_page(_T('titre_page_forum_suivi'), "forum", "forum-controle");

		echo "<br /><br /><br />";
		echo gros_titre(_T('titre_forum_suivi'),'',false);

		echo debut_onglet();
		echo onglet(_T('onglet_messages_publics'), generer_url_ecrire('controle_forum', $args . "public"), "public", $type=='public', "forum-public-24.gif");
		echo onglet(_T('onglet_messages_internes'), generer_url_ecrire('controle_forum', $args . "interne"), "interne", $type=='interne', "forum-interne-24.gif");

		list($from,$where) = critere_statut_controle_forum('vide', $id_rubrique);
		$n = sql_fetsel('1', $from, $where);
		if ($n) echo onglet(_T('onglet_messages_vide'), generer_url_ecrire('controle_forum', $args . "vide"), "vide", $type=='vide');

		list($from,$where) = critere_statut_controle_forum('prop', $id_rubrique);
		$f = sql_fetsel('1', $from, $where);
		if ($f)
			echo onglet(_T('texte_statut_attente_validation'), generer_url_ecrire('controle_forum', $args . "prop"), "prop", $type=='prop');

		echo fin_onglet();

		echo debut_gauche('', true);
		echo debut_boite_info(true);
		echo "<span class='verdana1 spip_small'>", _T('info_gauche_suivi_forum_2'), aide("suiviforum"), "</span>";

		// Afficher le lien RSS

		echo bouton_spip_rss("forums_$type");

		echo fin_boite_info(true);
			
		echo pipeline('affiche_gauche',array('args'=>array('exec'=>'controle_forum', 'type'=>$type),'data'=>''));
		echo creer_colonne_droite('', true);
		echo pipeline('affiche_droite',array('args'=>array('exec'=>'controle_forum', 'type'=>$type),'data'=>''));
			
		echo debut_droite('', true);
		echo pipeline('affiche_milieu',array('args'=>array('exec'=>'controle_forum', 'type'=>$type),'data'=>''));

		echo formulaire_recherche("controle_forum","<input type='hidden' name='type' value='$type' />");
		echo "<div class='nettoyeur'></div>";
		echo "<div id='controle_forum' class='serif2'>", $res, "</div>";
		echo fin_gauche(), fin_page();
	}
}
コード例 #7
0
ファイル: controle_petition.php プロジェクト: rhertzog/lcs
function controle_petition_page($id_article, $titre, $type,  $corps, $count)
{
	$args = array();
	$rac = '';

	if (!(autoriser('modererpetition')
	OR (
		$id_article > 0
		AND autoriser('modererpetition', 'article', $id_article)
	    ))) {
		$ong = '';
	} else {
		$ong = controle_petition_onglet($id_article, $debut, $type, '');
		if ($id_article) {
			$h = generer_url_ecrire("statistiques_visites","id_article=$id_article");
			$rac = icone_horizontale(_T('icone_statistiques_visites'), $h, "statistiques-24.gif","rien.gif", false);
			if ($type !== 'public') {

				$h = redirige_action_auteur('editer_signatures', $id_article . 'A', 'controle_petition', "id_article=$id_article&type=interne");
				$rac .= icone_horizontale(_T('icone_relancer_signataire') . " ($count)", $h, "envoi-message-24.gif","rien.gif", false);
			}
			$rac = bloc_des_raccourcis($rac);
			$titre = "<a href='" .
			generer_url_entite($id_article,'article') .
			"'>" .
			typo($titre) .
			"</a>" .
			" <span class='arial1'>(" .
			_T('info_numero_abbreviation') .
			$id_article .
			")</span>";

			if (!sql_countsel('spip_petitions', "id_article=$id_article"))
				$titre .= '<br >' . _T('info_petition_close');

			$args = array('id_article' => $id_article);
		} else {

		  $q = sql_select('A.titre, A.date, A.id_article, count(*) AS n', 
			     'spip_signatures AS S LEFT JOIN spip_articles AS A ON A.id_article=S.id_article',
			     '',
			     'A.id_article',
				  'n desc',
				  "0,10");
		  while ($r = sql_fetch($q)) {
		    $id = $r['id_article'];
		    $h = generer_url_entite($id, 'article');
		    $title = affdate_jourcourt($r['date']) . "\n" .$r['titre'];
		    $rac .= "<li><a href='$h' title=\"" .  attribut_html($title).  '">' . _T('info_numero_abbreviation') . " $id" . '</a>&nbsp;: '. $r['n'] . ' ' . _T('signatures') . "</li>";
		  }
		  if ($rac) $rac = "<ul>$rac</ul>";
		  $rac = debut_cadre_enfonce('',true)
		    . "\n<div style='font-size: x-small' class='verdana1'><b>"
		    ._T('public:articles_populaires')
		    ."</b>"
		    . $rac
		    . "</div>"
		    . fin_cadre_enfonce(true);

		}
		$rac = "<br /><br /><br /><br /><br />" . $rac;
	}
	$head = _T('titre_page_controle_petition');
	$idom = "editer_signature-" . $id_article;
	$commencer_page = charger_fonction('commencer_page', 'inc');

	echo $commencer_page($head, "forum", "suivi-petition");
	echo debut_gauche('', true);
	echo $rac;
	echo debut_droite('', true);
	echo gros_titre(_T('titre_suivi_petition'),'', false);
	echo $ong; 
	echo bouton_spip_rss('signatures', $args);
	echo $titre;
	echo  "<br /><br />";
	echo "<div id='", $idom, "' class='serif2'>", $corps, "</div>";
	echo fin_gauche(), fin_page();
}