Index: trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta.php	(revision 357)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta.php	(revision 357)
@@ -0,0 +1,478 @@
+<?php
+/***************************************************************************\
+ Plugin   : magusine
+ Licence  : GPL
+ Auteurs  : StÃ©phane NoÃ«l, Philippe Vanderlinden
+ Infos    : http://www.spip-contrib.net/Le-plugin-Magusine
+            http://www.magunews.net/spip.php?rubrique645
+
+ $LastChangedRevision: 12345 $
+ $LastChangedBy: bubu $
+ $LastChangedDate: 2008-03-21 15:50:47 +0100 (ven, 21 mar 2008) $
+ \***************************************************************************/
+
+include_spip('inc/xml-parser');
+
+if (!defined("_ECRIRE_INC_VERSION")) return;
+include_spip('inc/presentation');
+include_spip('inc/filtres_images_mini');
+
+
+function exec_theme() {
+
+	$commencer_page = charger_fonction('commencer_page', 'inc');
+	echo $commencer_page('&laquo; '._T('redcta:choix_du_theme').' &raquo;', 'configuration', 'magusine');
+	
+	global $connect_statut;
+	if ($connect_statut != "0minirezo" ) {
+		echo "<p><b>"._T('redcta:acces_a_la_page')."</b></p>";
+		fin_page();
+		exit;
+	}
+
+	traiter_post();
+	$params= charger_parametres_gen();
+
+	echo barre_onglets("redcta", "theme");
+	echo debut_gauche('', true);
+	echo debut_cadre_relief(_DIR_PLUGIN_REDCTA.'/images/aide.png', true, "", _T('redcta:info'));
+	echo _T("redcta:sideinfo_theme");
+	echo fin_cadre_relief(true);
+	echo lister_associations();
+	echo creer_colonne_droite('', true);
+	echo debut_droite('', true);
+	echo gros_titre(_T("redcta:choix_du_theme"), "", false);
+
+	//liste des themes disponibles
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."/images/config.png", true, "", _T('redcta:choixtheme'));
+	listage_themes();
+	echo fin_cadre_trait_couleur(true);
+
+	echo "<br />";
+	// suite : footer, metas, 404
+
+	// affiche le formulaire d'upload du bandeau
+
+
+	formulaire_bandeau();
+
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."images/format-indent-more.png", true, "", _T('redcta:footer'));
+	echo _T('redcta:votre_message_de_footer');
+	echo "<form action='".generer_url_ecrire('theme')."' method='post'>\n";
+	if (!in_array("footer", array_keys($params))) { $params['footer']=""; }
+	echo "<textarea name='footer' cols='50' rows='3'>".htmlspecialchars($params['footer'])."</textarea>";
+
+	echo "<br /><input type='submit' value='"._T("redcta:enregistrer")."' class='fondo' />";
+	echo "</form>";
+	echo fin_cadre_trait_couleur(true);
+
+
+
+	echo "<br />";
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."images/format-indent-more.png", true, "", _T('redcta:logos_bailleurs'));
+	echo _T('redcta:intro_afficher_logos_bailleurs');
+	echo "<form action='".generer_url_ecrire('theme')."' method='post'>\n";
+	if (!in_array("logos_bailleurs", array_keys($params))) { $params['logos_bailleurs']="true"; }
+	echo "<input type='radio' name='logos_bailleurs' value='true' ".($params['logos_bailleurs'] == "true" ? 'checked="checked"' : '')." />";
+	echo _T('redcta:afficher_logos')."<br />";
+	echo "<input type='radio' name='logos_bailleurs' value='false' ".($params['logos_bailleurs'] == "true" ? '' : 'checked="checked"')." />";
+	echo _T('redcta:ne_pas_afficher_logos')."<br />";
+	echo "<br /><input type='submit' value='"._T("redcta:enregistrer")."' class='fondo' />";
+	echo "</form>";
+	echo fin_cadre_trait_couleur(true);
+	echo "<br />";
+
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."images/format-indent-more.png", true, "", _T('redcta:metas'));
+	echo _T('redcta:vos_metas');
+	echo "<form action='".generer_url_ecrire('theme')."' method='post'>\n";
+	echo "<input type='hidden' name='action_form' value='metas' />";
+
+	echo "<div id='metas'>";
+	if (!count($params['metas'])) {
+		$id_meta = uniqid("");
+		echo "<table class='meta' id='meta$id_meta'>";
+		echo "<tr><td><label for='metatype$id_meta' class='label_meta'>"._T('redcta:type_meta')."</label></td>";
+		echo "<td><input type='text' size='15' id='metatype$id_meta' name='metas[$id_meta][type]' /></td></tr>";
+		echo "<tr><td><label for='metavaleur$id_meta' class='label_meta'>"._T('redcta:valeur_meta')."</label></td>";
+		echo "<td><input type='text' size='40' id='metavaleur$id_meta' name='metas[$id_meta][valeur]' />";
+		echo "<a href='javascript:supprimerMeta(\"$id_meta\");'><img style='padding:3px;' src='"._DIR_IMG_PACK."/croix-rouge.gif' title='"._T('redcta:supprimer')."' alt='x' /></a>";
+		echo "</td></tr></table>";
+	} else {
+		foreach($params['metas'] as $meta) {
+			$id_meta = uniqid("");
+			echo "<table class='meta' id='meta$id_meta'>";
+			echo "<tr><td><label for='metatype$id_meta' class='label_meta'>"._T('redcta:type_meta')."</label></td>";
+			echo "<td><input type='text' size='15' id='metatype$id_meta' name='metas[$id_meta][type]' value='".$meta['type']."' /></td></tr>";
+			echo "<tr><td><label for='metavaleur$id_meta' class='label_meta'>"._T('redcta:valeur_meta')."</label></td>";
+			echo "<td><input type='text' size='40' id='metavaleur$id_meta' name='metas[$id_meta][valeur]' value='".$meta['valeur']."' />";
+			echo "<a href='javascript:supprimerMeta(\"$id_meta\");'><img style='padding:3px;' src='"._DIR_IMG_PACK."/croix-rouge.gif' title='"._T('redcta:supprimer')."' alt='x' /></a>";
+			echo "</td></tr></table>";
+		}
+	}
+	echo "</div>";
+
+	echo "<a href='javascript:ajouterMeta()'>"._T('redcta:ajouter_meta')."</a>";
+
+	echo "<script language='javascript'>";
+	echo "function ajouterMeta(){
+    ran = Math.floor(Math.random()*100000000);
+    jQuery('#metas').append(\"";
+	echo "<table class='meta' id='meta\"+ran+\"'>";
+	echo "<tr><td><label for='metatype\"+ran+\"' class='label_meta'>"._T('redcta:type_meta')."</label></td>";
+	echo "<td><input id='metatype\"+ran+\"' type='text' size='15' name='metas[\"+ran+\"][type]' /></td></tr>";
+	echo "<tr><td><label for='metavaleur\"+ran+\"' class='label_meta'>"._T('redcta:valeur_meta')."</label></td>";
+	echo "<td><input id='metavaleur\"+ran+\"' type='text' size='40' name='metas[\"+ran+\"][valeur]' />";
+	echo "<a href=\\\"javascript:supprimerMeta('\"+ran+\"');\\\"><img style='padding:3px;' src='"._DIR_IMG_PACK."/croix-rouge.gif' title='"._T('redcta:supprimer')."' alt='x' /></a>";
+	echo "</td></tr></table>";
+	echo "\"
+    );
+  }";
+	echo "</script>";
+
+	echo "<script language='javascript'>";
+	echo "function supprimerMeta(meta) {
+    jQuery('#meta'+meta).remove();
+  }";
+	echo "</script>";
+	echo "<br /><input type='submit' value='"._T("redcta:enregistrer")."' class='fondo' />";
+	echo "</form>";
+	echo fin_cadre_trait_couleur(true);
+	
+	echo "<br />";
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."images/emblem-important.png", true, "", _T('redcta:page_404'));
+	echo _T('redcta:votre_message_page_404');
+	echo "<form action='".generer_url_ecrire('theme')."' method='post'>\n";
+
+	$resultat= spip_query("SELECT * FROM spip_redcta_parametres WHERE parametre='404'");
+	if ($resultat) {
+		$le404=spip_fetch_array($resultat);
+		//print_r($le404);
+	} else {
+		$le404['valeur']="";
+		$le404['valeur2']="";
+
+	}
+
+	echo "<input type='hidden' name='action_form' value='404' />";
+	echo "<input type='text' name='titre404' value='".htmlspecialchars($le404['valeur'])."' />";
+	echo "<textarea name='texte404' cols='50' rows='3'>".htmlspecialchars($le404['valeur2'])."</textarea>";
+	echo "<br /><input type='submit' value='"._T("redcta:enregistrer")."' class='fondo' />";
+	echo "</form>";
+	echo fin_cadre_trait_couleur(true);
+
+	echo fin_gauche();
+
+	echo fin_page();
+
+}
+
+
+//liste des thÃšmes dans le rÃ©pertoire theme
+function listage_themes()
+{
+
+	$params= charger_parametres();
+	$ignore_liste = Array(".svn", ".", "..",".DS_Store");
+	$rep = _DIR_PLUGIN_REDCTA."themes";
+
+	// affiche le theme courant
+	echo "<div class='theme-actuel'><h4>"._T("redcta:theme_actuel")."</h4>";
+	$letheme = explode("|", $params);
+	if (file_exists($rep.'/'.$letheme[0].'/theme.xml')) {
+		$p =& new xmlParser();
+		$p->parse($rep.'/'.$letheme[0].'/theme.xml');
+		if (file_exists($rep.'/'.$letheme[0].'/illu-theme.jpg')) {
+			$vignette = "<img src=".$rep.'/'.$letheme[0].'/illu-theme.jpg'." class='vignette-theme' />";
+		}
+		$descrip = $p->output[0]['child'][1]['content'];
+		foreach($p->output[0]['child'] as $prop) {
+			if ($prop['name'] == "TITRE") {
+				$titre_theme = $prop['content'];
+			}
+		}
+		if (count($letheme) > 1) {
+			$nom_decli = ereg_replace("\.css$", "", $letheme[1]);
+			if (file_exists($rep.'/'.$letheme[0].'/declinaisons/illu-theme-'.$nom_decli.'.jpg')) {
+				$vignette = "<img src=".$rep.'/'.$letheme[0].'/declinaisons/illu-theme-'.$nom_decli.'.jpg'." class='vignette-theme' />";
+			}
+			foreach($p->output[0]['child'] as $prop) {
+				if ($prop['name'] == "DECLINAISON") {
+					 
+					if($prop['attrs']['CHEMIN'] == $letheme[1]) {
+						$titre_declinaison = " ("._T("redcta:en_declinaison")." ".$prop['attrs']['TITRE']." )";
+						// recherche de la description
+						foreach($prop['child'] as $num => $propdescr) {
+							if ($propdescr['name'] == "DESCRIPTION") {
+								$descrip = $propdescr['content'];
+							}
+						}
+							
+					}
+					 
+				}
+			}
+		}
+		if (!isset($titre_declinaison) && count($letheme) > 1) {
+			$titre_declinaison = " ("._T("redcta:en_declinaison")." ".$letheme[1]." )";
+		}
+	}
+	echo "<h5>";
+	echo isset($titre_theme) ? $titre_theme : $letheme[0];
+	echo isset($titre_declinaison) ? $titre_declinaison : '' ;
+	echo "</h5>";
+	echo isset($vignette) ? $vignette : '';
+	echo isset($descrip) ? $descrip : '';
+	echo "<div class='clearer'></div></div>";
+
+
+
+	$ignore_liste = Array(".svn", ".", "..",".DS_Store");
+	$rep = _DIR_PLUGIN_REDCTA."themes";
+	$handle = opendir($rep);
+	print('<form action="?exec=theme" method="post">');
+	while($fichier = readdir($handle)) {
+
+		if (in_array($fichier, $ignore_liste)) {
+		} else if (is_dir($rep.'/'.$fichier)) {
+
+			 
+			if (file_exists($rep.'/'.$fichier.'/theme.xml')) {
+				 
+				 
+				$p =& new xmlParser();
+				$p->parse($rep.'/'.$fichier.'/theme.xml');
+
+				//print_r($p->output);
+
+				echo "<div class='conteneur-theme'>\n";
+
+				// vignette des themes
+				if (file_exists($rep.'/'.$fichier.'/illu-theme.jpg')) {
+					$vignette =$rep.'/'.$fichier.'/illu-theme.jpg';
+				} else { $vignette=_T("redcta:pas_de_vignette"); }
+
+				foreach($p->output[0]['child'] as $id => $tag) {
+					if ($tag['name'] == "TITRE") {
+						echo '<h5 class="theme_deplier" rel="'.$vignette.'">'.$tag["content"].'</h5>';
+						echo "\n";
+						echo "<div class=\"liste-declinaison\">";
+						echo "\n";
+						echo '<input id="'.$fichier.'" type="radio" '.(($params==$fichier)?'checked="checked"':'').' name="theme" value="'.$fichier.'"'.' class="declinaison" />';
+						echo '<label for="'.$fichier.'"  >'._T("redcta:theme_base").'</label><br />';
+						echo "\n";
+					}
+
+					if ($tag['name'] == "DECLINAISON") {
+						echo '<input id="'.$fichier.$id.'" type="radio" '.(($params==$fichier."|".$tag["attrs"]["CHEMIN"])?'checked="checked"':'').' name="theme" value="'.$fichier."|".$tag["attrs"]["CHEMIN"].'"'.$checked.' class="declinaison" />';
+						echo '<label for="'.$fichier.$id.'">'.$tag["attrs"]["TITRE"].'</label><br />';
+						echo "\n";
+					}
+
+				}
+				echo "</div>\n";
+
+			}
+			echo "</div>\n";
+		}
+
+	}
+	echo '<br />';
+	//echo '<input type="hidden" name="action" value="changer_theme_principal" />';
+	echo '<input class="fondo" type="submit" value="'._T('redcta:bouton_changer_theme').'" />';
+	print("</form>");
+	closedir($handle);
+}
+
+function traiter_post() {
+
+	if ($_POST['footer']) {
+
+		if ($_POST['footer']==""){
+			spip_query("DELETE FROM spip_redcta_parametres WHERE parametre = 'footer'");
+		}
+
+		$value=addslashes($_POST['footer']);
+		$resultat = spip_query("SELECT * FROM spip_redcta_parametres WHERE parametre='footer'");
+		if (spip_mysql_count($resultat)) {
+			spip_query("UPDATE spip_redcta_parametres SET valeur= '$value' WHERE parametre = 'footer'");
+		} else {
+			spip_query("INSERT INTO spip_redcta_parametres(parametre, valeur) VALUES('footer', '$value')");
+		}
+
+	}
+	if ($_POST['action_form']=="404") {
+		$titre=addslashes($_POST['titre404']);
+		$texte=addslashes($_POST['texte404']);
+		if ($titre=="" && $texte=="") {
+			spip_query("DELETE FROM spip_redcta_parametres WHERE parametre='404'");
+		} else {
+			spip_query("INSERT INTO spip_redcta_parametres(parametre, valeur, valeur2) VALUES('404', '$titre', '$texte')");
+			spip_query("UPDATE spip_redcta_parametres SET valeur= '$titre', valeur2='$texte' WHERE parametre = '404'");
+		}
+	}
+
+	if ($_POST['action_form']=="metas") {
+		spip_query("DELETE FROM spip_redcta_parametres WHERE parametre LIKE '%metas'");
+		$metas = $_POST['metas'];
+		if (is_array($metas)) {
+			$i = 0;
+			foreach($metas as $meta) {
+				if ($meta['type'] && $meta['valeur']) {
+					$meta['valeur']=htmlspecialchars($meta['valeur'], ENT_QUOTES);
+					$meta['type']=htmlspecialchars($meta['type'], ENT_QUOTES);
+					spip_query("INSERT INTO spip_redcta_parametres (parametre, valeur, valeur2) VALUES ('".$i."metas', '".$meta['type']."', '".$meta['valeur']."')");
+					$i++;
+				}
+			}
+		}
+	}
+
+	foreach($_POST as $key => $value) {
+		if ($key=='theme') {
+			$value=addslashes($value);
+			$resultat=spip_query("SELECT * FROM spip_redcta_themeassoc WHERE id=0 AND type='rubrique'");
+			if (spip_mysql_count($resultat)) {
+				spip_query("UPDATE spip_redcta_themeassoc SET theme= '$value' WHERE id=0 AND type='rubrique'");
+			} else {
+				spip_query("INSERT INTO spip_redcta_themeassoc(id, type, theme) VALUES(0, 'rubrique', '$value')");
+			}
+		}
+
+		if ($key == 'bloc_reseau' || $key == 'logos_bailleurs') {
+			$value = addslashes($value);
+			$resultat = spip_query("SELECT * FROM spip_redcta_parametres WHERE parametre='$key'");
+			if (spip_mysql_count($resultat)) {
+				spip_query("UPDATE spip_redcta_parametres SET valeur = '$value' WHERE parametre='$key'");
+			} else {
+				spip_query("INSERT INTO spip_redcta_parametres(parametre, valeur) VALUES ('$key', '$value')");
+			}
+		}
+
+	}
+}
+
+function charger_parametres() {
+	$resultat= spip_query("SELECT * FROM spip_redcta_themeassoc WHERE id=0 AND type='rubrique'");
+	if (spip_mysql_count($resultat)) {
+		while ($row=spip_fetch_array($resultat)) {
+			$theme = $row['theme'];
+		}
+	} else {
+		$theme = "";
+	}
+
+	return $theme;
+}
+
+function charger_parametres_gen() {
+	$params=array();
+	$resultat= spip_query("SELECT * FROM spip_redcta_parametres");
+	if (spip_mysql_count($resultat)) {
+		while ($row=spip_fetch_array($resultat)) {
+			if (ereg("metas$",$row['parametre'])) {
+				$params["metas"][] = array("type" => $row['valeur'], "valeur" => $row['valeur2']);
+			} else {
+				$params[$row['parametre']] = $row['valeur'];
+			}
+		}
+	}
+	return $params;
+}
+
+function formulaire_bandeau()
+{
+    echo "<div id=\"div_upload_bandeau\">";
+	echo debut_cadre_trait_couleur(_DIR_PLUGIN_REDCTA."/images/uploadbandeau.png", true, "", _T('redcta:titre_upload_bandeau'));
+	echo "<p>"._T('redcta:intro_upload_bandeau')."</p>";
+
+	$bandeau_site = array(_DIR_IMG."/bandeau/bandeau-0.jpg",
+	                      _DIR_IMG."/bandeau/bandeau-0.png",
+	                      _DIR_IMG."/bandeau/bandeau-0.gif"
+	                      ); 
+	
+	foreach($bandeau_site as $filePath)
+	{
+		if (file_exists($filePath) )
+		{
+	        $bandeau_actuel = $filePath;
+	    }        
+	}
+	
+	if($bandeau_actuel )
+	{
+	    list($rWidth, $rHeight, $rType, $rAttr) = getimagesize($bandeau_actuel);
+		$ratioImg = image_ratio($rWidth,$rHeight,350,250);
+		
+		echo "<div style=\"text-align:center\">";
+		echo "<img src=\"".$bandeau_actuel."\" alt=\"\" width=\"".$ratioImg[0]."\" height=\"".$ratioImg[1]."\" /><br/>";
+		echo "&#91;<a href=\"javascript:void(0);\" onclick=\"return AjaxSqueeze('./?exec=theme&amp;id_rubrique=0&amp;action=supprimer_bandeau&amp;id_check=".$_SESSION["id_check"]."','bandeau_icone','',event);\">"._T("lien_supprimer")."</a>&#93;";
+	    echo "</div>";
+		
+	}else{
+	    # Formulaire Ã  la mode CVT
+	    $contexte = array('id_rubrique'=>0,'largeurMax'=>350,'hauteurMax'=>250);
+	    echo recuperer_fond('prive/upload_bandeau', $contexte);
+	}
+	
+	echo fin_cadre_trait_couleur(true);
+	echo "</div>";
+}
+
+function lister_associations()
+{
+
+	if ($_GET['action'] == 'delete_assoc' && $_GET['id_check'] == $_SESSION['id_check']) {
+		$type = isset($_GET['type']) ? addslashes($_GET['type']) : false;
+		$id = isset($_GET['id']) ? (int) $_GET['id'] : false;
+		$theme = isset($_GET['theme']) ? addslashes($_GET['theme']) : false;
+		if ($type && $id && $theme) {
+			spip_query("DELETE FROM spip_redcta_themeassoc WHERE type='$type' AND id=$id AND theme='$theme'");
+		}
+	}
+
+	echo "<div id=\"div_liste_assoc\">";
+	$result = spip_query("SELECT * FROM spip_redcta_themeassoc WHERE type!='rubrique' OR id!=0");
+	if (spip_mysql_count($result) > 0) {
+		echo debut_cadre_couleur("doc-24.gif", true, "", _T('redcta:liste_assoc'));
+		echo "<div class='liste'><table border='0' cellspacing='0' cellpadding='3' width='100%'>";
+		while ($row = spip_fetch_array($result)){
+			echo "<tr class='tr_liste'>";
+			$type = $row['type'];
+			$id = $row['id'];
+			switch ($type) {
+				case "rubrique":
+					$rubrique = spip_fetch_array(spip_query("SELECT titre FROM spip_rubriques WHERE id_rubrique=$id"));
+					$titre = $rubrique['titre'];
+					break;
+
+				case "article":
+					$article = spip_fetch_array(spip_query("SELECT titre FROM spip_articles WHERE id_article=$id"));
+					$titre = $article['titre'];
+					break;
+
+				case "groupe":
+					$groupe = spip_fetch_array(spip_query("SELECT titre FROM spip_groupes_mots WHERE id_groupe=$id"));
+					$titre = $groupe['titre'];
+					break;
+
+				case "mot":
+					$mot = spip_fetch_array(spip_query("SELECT titre FROM spip_mots WHERE id_mot=$id"));
+					$titre = $mot['titre'];
+					break;
+			}
+
+			$theme = $row['theme'];
+			$nom_theme = ereg_replace("\|", " (", $theme);
+			$nom_theme = ereg_replace("\.css", ")", $nom_theme);
+			echo "<td class=\"arial1\">$titre</td>";
+			echo "<td class=\"arial1\">$nom_theme</td>";
+			echo "<td class=\"arial1\"><div style='text-align:right;'><a class=\"supprimer\" href='".generer_url_ecrire('theme')."&amp;action=delete_assoc&amp;id_check=".$_SESSION['id_check']."&amp;id=$id&amp;theme=$theme&amp;type=$type'><img src='../dist/images/croix-rouge.gif' alt='X' width='7' height='7' align='bottom' /></a></div></td>";
+			echo "</tr>";
+		}
+		echo "</table></div>";
+		echo fin_cadre_couleur(true);
+	}
+	echo "</div>";
+}
+
+?>
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta_boite_rss.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta_boite_rss.php	(revision 357)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/exec/redcta_boite_rss.php	(revision 357)
@@ -0,0 +1,71 @@
+<?php
+#-----------------------------------------------------#
+#  Plugin  : redCTA - Licence : GPL           #
+#  
+#-----------------------------------------------------#
+if (!defined("_ECRIRE_INC_VERSION")) return;
+
+// compatibilidad con spip 1.9
+if(!function_exists(ajax_retour)) { 
+	function ajax_retour($corps) {
+		$c = $GLOBALS['meta']["charset"];
+		header('Content-Type: text/html; charset='. $c);
+		$c = '<' . "?xml version='1.0' encoding='" . $c . "'?" . ">\n";
+		echo $c, $corps;
+		exit;
+	}
+}
+
+function exec_redcta_boite_rss_dist() {
+	cs_minipres();
+	include_spip('cout_define');
+	cout_define('distant');
+	$p = '';
+	// on cherche le flux rss toutes les _REDCTA_RSS_UPDATE minutes
+	$force = _request('force')=='oui';
+	if(!$force) {
+		$lastmodified = @file_exists(_DIR_RSS_TMP)?@filemtime(_DIR_RSS_TMP):0;
+		if (time()-$lastmodified < _REDCTA_RSS_UPDATE) lire_fichier(_DIR_RSS_TMP, $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(_REDCTA_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, _REDCTA_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 redcta_lien()
+		include_spip('cout_fonctions');
+		$p = '<span style="color: red;">'._T('redcta:erreur:probleme', array('pb'=>cs_lien(_REDCTA_RSS_SOURCE,_T('redcta: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('redcta:rss_edition')."</b><br/>$du</p>"
+		.'<p style="text-align:right"><a href="'
+		.generer_url_ecrire('admin_redcta','var_mode=calcul', true).'" onclick="'
+		."javascipt:jQuery('div.redcta_boite_rss').load('".generer_url_ecrire('redcta_boite_rss', 'force=oui', true).'\');return false;">'
+		._T('redctaprive:rss_actualiser').'</a> | <a href="'
+		._REDCTA_RSS_SOURCE.'">'
+		._T('redctaprive:rss_source').'</a></p>';
+	if($c) ecrire_fichier(_DIR_RSS_TMP, $p);
+	
+	ajax_retour($p);
+}
+
+?>
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/lang/redcta_es.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/lang/redcta_es.php	(revision 356)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/lang/redcta_es.php	(revision 357)
@@ -7,302 +7,11 @@
 
 // Pour la traduction de la partie publique voir local_**.php
-
-$GLOBALS['i18n_redcta_es'] = array(
-
-// TRADUCCIONES GENERALES
-  'titre'                     => 'TÃ­tulo',
-  'acces_a_la_page'           => 'Solamente los administradores o administradoras tienen acceso a esta pÃ¡gina.',
-  'modifier_cette_option'     => 'Modificar esta opciÃ³n',
-  'info'                      => 'info',
-  'erreur'                    => 'Error',
-  'le_changement_a_ete_effectue' => 'El cambio se ha realizado',
-
-// messages d'erreur
-  'erreur_extension'          => 'Este tipo de archivo no estÃ¡ permitido.',
-  'upload_reussi'             => 'Imagen subida.',
-  'upload_rate'               => 'Imposible subir la imagen.',
-  'erreur_trop_gros'          => 'El archivo es demasiado grande.',
-  'erreur_transmission'       => 'Ha habido un problema durante la transmisiÃ³n del archivo.',
-
-// menu de navigation
-
-// boutons
-  'enregistrer'               => 'Guardar',
-  'modifier_et_retour' => 'Guardar y volver a la pÃ¡gina',
-  'supprimer'                 => 'Eliminar',
-  'options_readcta'              => '  Opciones redCTA',
-// onglets
-  'onglet_base'               => 'ConfiguraciÃ³n inicial',
-  'onglet_themes'             => 'Temas',
-  'onglet_avance'             => 'Blocs libres',
-  'onglet_menu'               => 'MenÃºs',
-  'onglet_gabarit'            => 'Plantillas',
-  'onglet_a_propos'           => 'Acerca de',
+  $GLOBALS[$GLOBALS['idx_lang']] = array(
+//$GLOBALS['i18n_redcta_es'] = array(
+//$GLOBALS['redcta_es'] = array(
+  'options'  => 'Informacion redCTA',
+  'titulo_caja_redcta'  => 'Noticas redCTA',
+  'intro_up_caja_redcta'  => 'Aca abajo iria el rss de redCTA', 
   
-// blocs libres
-  'titre_bloc_defaut'         => 'TÃ­tulo del bloc libre',
-  'texte_bloc_defaut'         => 'Texto del bloc libre',
-  'logo_bloc'                 => 'Logo del bloc libre:',
-  'modifier_bloc_libre'       => 'Modificar este bloc',
-  'supprimer_bloc'            => 'Eliminar este bloc',
-  'charger_une_image'         => 'AÃ±adir una imagen en este bloc:',
-  'charger_autre_image'       => 'Cambiar la imagen de este bloc:',
-  'supprimer_bandeau'         => 'Eliminar esta cabecera',
-  'entrez_donnees_nouveau_bloc' => 'TÃ­tulo y texto del bloc libre',
-  'bloc_lien'                 => 'Enlace (se aplica sobre la imagen y el texto del bloc, opcional)',
-  'bloc_image'                => 'Illustration du bloc (optionnel)',
-  
-// bloc de logo de rubrique
- 'intro_up_rub_bandeau' => 'Cliquea sobre el botÃ³n "Seleccionar el archivo" para aÃ±adir/cambiar la cabecera de esta secciÃ³n',
- 'titre_up_rub_bandeau' => 'Cabecera de esta secciÃ³n',
- 'invit_up_rub_bandeau' => 'Cambiar la cabecera',
- 'upload_reussi'        => 'Upload realizada',
- 'bandeau_actuel'       => 'Cabecera actual',
- 'aucun_bandeau_rub'    => 'No hay cabecera seleccionada',
-
-// TRADUCTIONS SPECIFIQUES
-//ARTY.php - Options de base
-  // titre page
-  'titre_options_base'        => 'Opciones ARTY iniciales',
-  'titre_configuration_base'  => 'ConfiguraciÃ³n inicial',
-  'sideinfo_arty'             => 'En esta pÃ¡gina puedes seleccionar las secciones de donde se recogerÃ¡n los contenidos de la editorial, las noticias, etc.',
-  'edito'                     => 'SÃ©lecciona la editorial',
-  'choix_rubrique_news'       => 'Elige la secciÃ³n para las noticias',
-  'rubrique_article_une'      => 'Rubrique et articles Ã  la une',
-  'pas_de_une'                => 'Pas de rubrique ou d\'article Ã  la une',
-  'explication_choix_rubrique_news' => 'Las noticias son informaciones cortas sobre tu actividad. TÃ©cnicamente son breves escritas en una secciÃ³n.',
-  'video_au_hasard'     => 'Selecciona la secciÃ³n para vÃ­deos al azar',
-  'pas_de_image_hasard' => 'Sin imagen al azar',
- 'cacher_edito'=> 'Ocultar la editorial (ocultar la editorial en las listas)',
- 'lire_autres_editos' => 'Mostrar el enlace "leer las otras editoriales"',
- 'ajouter_un_lien'=> 'AÃ±adir un enlace manual',
-  
-  // bloc aide
-  'titre_aide_base'           => 'Ayuda',
-  'aide_options_base'         => 'Si tienes poco tiempo &#224; para personalizar el sitio, concentra tus esfuerzos en esta pÃ¡gina.',
-  
-  // Page menu
-  'si_pas_langue'      => 'Si el idioma para el que quieres crear un menÃº no estÃ¡ en la lista, es que todavÃ­a no has asignado ese idioma a una secciÃ³n o a un artÃ­culo.',
-  'titre_options_menu' => 'CreaciÃ³n de los menÃºs',
-  'intro_menu'         => 'Esta pÃ¡gina permite crear el menÃº del sitio. Puedes poner secciones, artÃ­culos asi como grupos de palabras clave y palabras clave. Luego puedes organizar el orden estos elementos.',
-  'menu_actuel'        => 'MenÃº para el idioma',
-  'type_de_menu'       => 'Tipo de menÃº',
-  'menu_reservoir'     => 'Selecciona los elementos a incluir en el menÃº',
-  'nom_lien' => 'Nombre del enlace:',
-  'url_lien'=> 'DirecciÃ³n url del enlace:',
-  'un_niveau'=> 'Un nivel',
-  'deux_niveaux' => 'Dos niveles',
-  'manuel'   => 'Manual',
-  'nombre_niveaux_menu' => 'Puedes elegir entre 3 tipos de menÃº.',
-  'intro_niveaux_menu' => 'En el menÃº, puedes hacer aparecer sÃ³lo los nombres de las secciones (1 nivel), pero tambiÃ©n de las subsecciones (2 niveles). Si eliges el modo manual, tienes que elegir cada elemento a mostrar en el menÃº.',
-  'intro_lister_articles' => 'Marca aquÃ­ si quieres mostrar los artÃ­culos (y las palabras claves) en el segundo nivel.',
-  'lister_articles' => 'TambiÃ©n mostrar los artÃ­culos y las palabras clave.',
-  'choix_de_la_langue_menu' => 'Info',
-  'rubrique' => 'SecciÃ³n',
-  'article' => 'ArtÃ­culo',
-  'groupe' => 'Grupo de palabras',
-  'mot' => 'Palabra clave', 
-  'intro_choix_niveaux' => 'Elige los niveles a mostrar:',
-  'n_niveaux' => 'La jerarquÃ­a completa',
-  'intro_menu_manuel' => 'Seleccionando el modo manual, puedes elegir uno a uno los elementos a mostrar en la jerarquÃ­a del menÃº.',
-  'avis_menu_auto' => 'Como ningÃºn elemento ha sido aÃ±adido al menÃº, este funciona de forma automÃ¡tica.',
-  
-  // page article
-  'galerie_image'  => 'GalerÃ­a de imÃ¡genes',
-  'intro_creer_bloc' => 'AÃ±adir un bloc libre',
-  
-//PAGE THEMES
-  'sideinfo_theme' => 'Puedes seleccionar el tema principal del sitio asi como otras configuraciones generales: contenido del pie de pÃ¡gina, las metas, y el texto de la pÃ¡gina 404. El tema se encarga de a visualizaciÃ³n grÃ¡fica del sitio',
-  'aucun_bandeau' => 'No hay cabecera',
-  'choix_du_theme' => 'ConfiguraciÃ³n de los temas',
-  'choixtheme' => 'ElecciÃ³n del tema',
-  'theme_actuel' => 'Tema actual.',
-  'theme_base' => 'Tema inicial',
-  'bouton_changer_theme' => 'Guardar',
-  'titre_upload_bandeau' => 'AÃ±adir una cabecera',
-   'intro_upload_bandeau' => 'AquÃ­ puedes subir una cabecera (baner, logo, imagen que se mostrarÃ¡ en todas las pÃ¡ginas del sitio) cogiÃ©ndolo de una carpeta que se encuentra en tu ordenador.',
-   'footer'=> 'AÃ±adir un pie de pÃ¡gina',
-   'votre_message_de_footer' => 'AquÃ­ puedes subir los elementos para tu pie de pÃ¡gina. Es el texto del pie de pÃ¡gina que se aÃ±ade a todas las pÃ¡ginas del sitio.',
-   'metas' => 'Guardar tus metas',
-'vos_metas' => 'Un "mÃ©ta" es una informaciÃ³n oculta en la pÃ¡gina y que utilizan los motores de bÃºsqueda. Por ejemplo: si quieres aÃ±adir la "mÃ©ta" -pomme- y que la recoja gogle como -pomme-, vuestro sitio serÃ¡ mostrado en la lista de resultados cuando se busque -pomme-. Las tres metas principales son: keywords, description, robot.',
-'type_meta' => 'Tipo de metas', 
-'valeur_meta' => 'Tu(s) meta(s)',
-'page_404'=> 'Personalizar la pÃ¡gina de error (404). La pÃ¡gina se muestra cuando no se encuentra un enlace.',
-'votre_message_page_404'=> 'Marca el tÃ­tulo y el texto del mensaje 404',
-'liste_assoc' => 'Muestra los temas relacionados',
-'ajouter_meta' => 'AÃ±adir una meta',
-
-// page Exec (configuration de base)
-'pas_de_edito'=> 'No hay editorial.',
-'pas_de_rubrique_news' => 'No hay secciÃ³n noticias.',
-'pas_de_video_hasard' => 'No hay vÃ­deos al azar.',
-'config_date_auteur' => 'Personnalizar fecha y autor o autora',
-'intro_config_date_auteur' => 'Puedes elegir si mostrar o no la fecha o el autor o autora de los artÃ­culos y breves.',
-'intro_date'=> 'Selecciona una opciÃ³n',
-'intro_auteur' => 'Selecciona una opciÃ³n',
-
-'afficher_date' => 'Mostrar la fecha',
-'pas_de_date' => 'No mostrar la fecha',
-'afficher_auteur' => 'Mostrar el autor o autora',
-'pas_afficher_auteur' => 'No mostrar el autor o autora',
-'intro_suite' => 'Selecciona una opciÃ³n',
-'afficher_suite' => 'Mostrar el botÃ³n "leer mÃ¡s"',
-'pas_de_suite' => 'No mostrar el botÃ³n "leer mÃ¡s"',
-
-'config_forum'=> 'ConfiguraciÃ³n de los foros',
-'intro_config_forum'=>  'Elige el tipo de foros.',
-'explication_forum'=> 'Un foro permite intercambiar opiniones: leer las de otras personas y publicar las tuyas. Dispones de dos opciones. La primera necesita javascript. La primera permite tener un foro en el artÃ­culo, la segunda en una ventana separada.',
-'forum_self'=> 'Foro (con javascript)', 
-'forum_forum' => 'Foro (sin javascript)',
-'image_au_hasard'=> 'Elige la secciÃ³n para cargar imÃ¡genes al azar',
-'config_google_maps' => 'ConfiguraciÃ³n del mapa de google',
-'intro_config_api_key' => 'Los mapas de google son mapas personalizados (con marcadores, recorridos, textos, imÃ¡genes) fÃ¡ciles de incluir en el sitio de <a href="http://maps.google.com">google maps</a>. Para mostrarlos en tu sitio, tienes que crear una clave api y colocarla aquÃ­. Es gratuita. Luego, carga los ficheros KML en tus artÃ­culos como documentos.',
-'gmaps_afficher_controles' => 'Mostrar los botones de control en el mapa',
-
-// page blocs libres
-'gestion_bloc_libre' => "GestiÃ³n de los blocs libres",
-'sideinfo_avance'=>'AquÃ­ puedes gestionar los blocs libres, es decir, un texto, una imagen, un enlace, breve, un contenido que puede ser asociado a cualquier artÃ­culo, secciÃ³n e incluso portada. Citar tambiÃ©n las pÃ¡ginas de los artÃ­culos y las secciones para asociar al (a los) bloc(s)',
-'creer_un_bloc_libre'=>'Crear un bloc libre',
-'attention_modif_globale' => 'Attention, les modifications effectuÃ©es ici seront rÃ©percutÃ©es sur tous les endroits oÃ¹ le bloc a Ã©tÃ© associÃ©!',
-'modifier_ce_bloc' => 'Modificar el bloc',
-
-//page gabarit
-'sideinfo_gabarit'=>'AquÃ­ puedes configurar la plantilla de la pÃ¡gina desplazando los mÃ³dulos. Los mÃ³dulos de la columna de reserva rÃ©serve no se muestran en el sitio, deben estar situados en el cuerpo o en las columnas. Hay una plantilla para la pÃ¡gina de portada, pero tambiÃ©n para las secciones, artÃ­culos, grupos de palabras clave, foros, enlaces etc.',
-'sauver'=> 'Guardar',
-'configuration_des_gabarits'=>'ConfiguraciÃ³n de las plantillas:',
-'contexte1'=> 'Columna 1',
-'contexte2'=> 'Columna 2',
-'corps'=> 'Cuerpo',
-'reserve'=>'Reserva',
-'avance' => 'Reserva avanzada',
-'nouveau_gabarit'=>'Nueva plantilla',
-'deriver_gabarit'=> 'Nombre de la nueva plantilla',
-'baser_gabarit_sur'=> 'Partir de esta plantilla',
-'modifier_un_autre_gabarit' => 'Modificar otra plantilla',
-'nom_du_gabarit' => 'Nombre de la plantilla',
-'liste_assoc_gabarit' => 'PÃ¡ginas asociadas a esta plantilla',
-
-
-// gabarits : noms des blocs
-'bloc-libre' => 'Blocs libres',
-'articles-une' => 'Articles Ã  la une',
-'liste-liens' => 'Lista de enlaces',
-'derniers-liens' => 'Ãltimos enlaces',
-'nombre_liens_affiches' => 'NÃºmero de enlaces mostrados',
-'menu-langues' => 'MenÃº de idiomas',
-'rechercher' => 'Buscar',
-'editorial' => 'Editorial',
-'derniers-articles' => 'Ãltimos artÃ­culos',
-'nombre_articles_affiches' => 'NÃºmero de artÃ­culos mostrados',
-'identification-visiteur' => 'IdentificaciÃ³n de visitantes',
-'liste-breves' => 'Lista de breves',
-'nombre_breves_affichees' => 'NÃºmero de breves mostrados',
-
-'derniers-forums' => 'Ãltimos foros',
-'nombre_forums_affiches' => 'NÃºmero de foros mostrados',
-
-'groupe-mots-cles' => 'Grupo de palabras clave',
-'menu-groupe' => 'Palabras clave del grupo',
-'rubriques-une' => 'Rubrique Ã  la une',
-'nombre_articles' => 'NÃºmero de artÃ­culos mostrados',
-'bloc_libre_rubrique' => 'Blocs libres',
-'bloc_libre_article' => 'Blocs libres',
-'quels_blocs' => 'Â¿QuÃ© blocs?',
-'blocs_article' => 'Del artÃ­culo',
-'blocs_article_rubrique' => 'Del artÃ­culo y su secciÃ³n',
-'liste_extension_exclure' => 'Lista de extensiones a excluir separadas por barras verticales',
-'pieces_jointes' => 'Archivo completo',
-'rubrique_podcast' => 'Podcast de la secciÃ³n',
-'article_podcast' => 'Podcast del artÃ­culo',
-'liste_groupe_inclure' => 'Lista aquÃ­ las "id", los nÃºmeros, de los grupos de palabras calve separados por barras verticales.',
-'thesaurus_mots' => 'Tesauro',
-'raccourcis_sous_rubrique' => 'Lista de subsecciones (anclas)',
-'galerie_videos_rub' => 'GalerÃ­a de vÃ­deo',
-'type_de_video' => 'Tipo de vÃ­deo',
-'video-hasard' => 'VÃ­deo al azar',
-'flv_lecteur_flash' => 'FLV (lector flash)',
-'tous_popup' => 'Todos (popup)',
-'image-hasard' => 'Imagen al azar',
-
-'nombre_news_affichees' => 'NÃºmero de noticias mostradas',
-'bloc_sons_hasard_branche' => 'Sonidos de esta "branche" (secciÃ­n y sus subsecciones) al azar',
-'nombre_playlist' => 'NÃºmero de sonidos en la lista',
-'google-maps-rubrique' => 'Google map',
-'google-maps-article' => 'Google map',
-'bloc_proposer_lien' => 'Proponer un enlace',
-'diaporama-rubrique' => 'Diaporama de imÃ¡genes',
-'rubrique-head' => 'TÃ­tulo y logo de la secciÃ³n',
-'rubrique-texte' => 'Texto de la secciÃ³n',
-'liste-articles' => 'ArtÃ­culos de esta secciÃ³n',
-'liste-rubriques' => 'Subsecciones de esta secciÃ³n',
-'forum' => 'Foros',
-'galerie-image' => 'GalerÃ­a de imÃ¡genes',
-'galerie-audios-rub' => 'GalerÃ­a de audio',
-'galerie-audios' => 'GalerÃ­a de audio',
-'mots-cles' => 'Palabras clave de esta secciÃ³n',
-'liste-sites-motscles' => 'Sitios con la misma palabra clave',
-
-'galerie-swf' => 'GalerÃ­a de animaciones flash',
-'diaporama-article-flash' => 'Diaporama de animaciones flash',
-'autres-articles' => 'Otros artÃ­culos de la misma secciÃ³n',
-'article-head' => 'TÃ­tulo e informaciones del artÃ­culo',
-'article-texte' => 'Texto del artÃ­culo',
-'bloc-forum' => 'Foros',
-'galerie-videos' => 'GalerÃ­a de vÃ­deos',
-
-'groupe-autres-groupes' => 'Otros grupos de palabras clave',
-'groupe-head' => 'TÃ­tulo y logo del grupo',
-'groupe-texte' => 'Texto del grupo',
-'groupe-liste-mots' => 'Lista de palabras clave del grupo',
-'groupe-dernieres-entrees' => 'Ãltimas entradas el grupo',
-'liste-mots-cles' => 'Lista de todas las palabras clave',
-
-'404-head' => 'TÃ­tulo de la pÃ¡gina 404',
-'404-texte' => 'Texto de la pÃ¡gina 404',
-'auteur-ecrire' => 'Escribir al autor o autora',
-'auteur_autres_auteurs' => 'Lista de otros autores y autoras',
-'auteur-head' => 'TÃ­tulo de la pÃ¡gina',
-'auteur-info' => 'Informaciones sobre el autor o autora',
-'liste-articles-auteur' => 'Lista de los artÃ­culos del autor o autora',
-'bloc-login' => 'Formulario de login',
-'recherche-head' => 'TÃ­tulo de la bÃºsqueda',
-'recherche-articles' => 'ArtÃ­culos encontrados',
-'recherche-rubriques' => 'Secciones encontradas',
-'recherche-mots' => 'Palabras clave encontradas',
-'recherche-documents' => 'Documentos encontrados',
-'recherche-liens' => 'Enlaces encontrados',
-
-'liste-agenda' => 'Lista de eventos (artÃ­culos)',
-
-'abo-newsletter' => 'Inscribirse en los boletines',
-
-// a propos
-'a_propos' => 'Acerca de',
-'dernieres_infos' => 'Ãltimas informaciones',
-'sideinfo_about'=> 'Acerca de: buscar las Ãºltimas infos del plugin.',
-
-// page groupe
-'titre_up_rub_logo' => 'Logo del grupo',
-'invit_up_rub_logo' => 'Modificar el logo',
-'logo_actuel' => 'Logo actual',
-'intro_up_logo' => 'Cliquea sobre el botÃ³n "Selecciona el archivo" para aÃ±adir/modificar la cabecera de esta secciÃ³n',
-'supprimer_logo' => 'Supprimer le logo',
-
-//pages naviguer
-'associer_un_bloc_libre' => 'Asociarr un bloc libre',
-'associer_un_theme' => 'Asociar un tema',   
-'creer_bloc_et_associer' => 'Crear un nuevo bloc',   
-'ajouter' => 'AÃ±adir',
-'langue_bloc_assoc' => 'Idioma del bloc libre:',
-'langue_bloc' => 'Idioma del bloc libre:',
-'intro_associer_bloc_libre' => 'Asociar un bloc libre que ya exista a este entorno:',  
-'blocs_libres_deja_associes' => 'Blocs libres ya asociados a este entorno:',
-'intro_associer_gabarit' => 'Puedes elegir una plantilla especÃ­fica para esta pÃ¡gina.', 
-'choisissez_un_gabarit' => 'Elige una plantilla',
-'associer_un_gabarit' => 'Asociar una plantilla',
-'bouton_changer_gabarit' => 'Asociar esta plantilla',
-'editer_ce_gabarit' => 'Editar esta plantilla',
-'creer_gabarit_et_associer' => 'Crear plantilla y asociarla',
-'pas_de_page_associee' => 'No esta asociada a ninguna pÃ¡gina.'
 );
 ?>
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/plugin.xml
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/plugin.xml	(revision 356)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/plugin.xml	(revision 357)
@@ -1,8 +1,16 @@
 <plugin>
- <nom>Plugin redCTA</nom>
+ <nom>Plugin redcta</nom>
  <version>1.0</version>
- <prefix>demo</prefix>
- <auteur>El equipo de sistemas de Informacion de la Central de Trabajadores de la Argentina (CTA) [contacto->mailto:sistemas@cta.org.ar] _ [sitio->http://sistemas.cta.org.ar]</auteur>
- <description>Este plugin fue desarrollado para simplificar el proceso de instalacion de un nuevo SPIP y facilitar la comunicacion entre los usuarios de este CMS en nuestro servidor. Es distribuido bajo la licencia GNU/GPL</description>
+ <prefix>redcta</prefix>
+ <auteur>
+ El equipo de sistemas de Informacion de la Central de Trabajadores de la Argentina (CTA) 
+ [contacto->mailto:sistemas@cta.org.ar] _ [sitio->http://sistemas.cta.org.ar]
+ </auteur>
+ <description>
+ Este plugin fue desarrollado para simplificar el proceso de instalacion de un nuevo SPIP 
+ y facilitar la comunicacion entre los usuarios de este CMS en nuestro servidor. 
+ Es distribuido bajo la licencia GNU/GPL
+ </description>
+ <chemin dir='' /> 
  <icon>
     images/redcta.png
@@ -15,4 +23,14 @@
         <inclure>redcta_boutons.php</inclure>
     </pipeline> 
-
+  <onglet id='mon_onglet_1' parent='configuration'>
+       <icone>images/redcta.png</icone>
+       <titre>configuracion</titre>
+       <url>redcta</url> <!-- nom de l'exec, facultatif, par defaut prend l'id -->
+       <args></args>
+   </onglet>
+   <pipeline>
+    <nom>affiche_gauche</nom>
+    <action>ajouterfonctionnalites</action>
+    <inclure>redcta_affichegauche.php</inclure>
+  </pipeline>
 </plugin>
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_affichegauche.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_affichegauche.php	(revision 357)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_affichegauche.php	(revision 357)
@@ -0,0 +1,113 @@
+<?php
+/***************************************************************************\
+ Plugin   : magusine
+ Licence  : GPL
+ Auteurs  : StÃ©phane NoÃ«l, Philippe Vanderlinden
+ Infos    : http://www.spip-contrib.net/Le-plugin-Magusine
+            http://www.magunews.net/spip.php?rubrique645
+
+ $LastChangedRevision: 12345 $
+ $LastChangedBy: bubu $
+ $LastChangedDate: 2008-03-21 15:50:47 +0100 (ven, 21 mar 2008) $
+ \***************************************************************************/
+
+// importe la fonction creer_repertoire_documents, qui retourne le chemin vers un dossier donnÃ© dans le rÃ©pertoire img, et le crÃ©e si nÃ©cessaire
+
+include_spip('inc/getdocument');
+include_spip('inc/layer');
+include_spip('inc/upload-image');
+include_spip('inc/xml-parser');
+include_spip('inc/filtres_images_mini');
+
+function redcta_ajouterfonctionnalites($flux) {
+
+	global $connect_statut;
+	//print_r($flux);
+	if ($connect_statut == "0minirezo" ) {
+		 
+		$flux['data'] .= formulaire_bandeau($flux['args']['id_rubrique']);
+		if (isset($flux['args']['id_groupe']) && $flux['args']['exec'] == "mots_types"){
+			 
+		//	$flux['data'] .= formulaire_logo($flux['args']['id_groupe']);
+			//$flux['data'] .= bloc_formulaire_themes('groupe', $flux['args']['id_groupe'], "?exec=mots_type&id_groupe=".$flux['args']['id_groupe']);
+			//$flux['data'] .= formulaire_bloc_libre('groupe', $flux['args']['id_groupe'],"?exec=mots_type&id_groupe=".$flux['args']['id_groupe']);
+		//	$flux['data'] .= bloc_gabarit('groupe-mots', $flux['args']['id_groupe'],"?exec=mots_type&id_groupe=".$flux['args']['id_groupe']);
+			 
+		}
+
+		
+	}
+
+	$flux['data'] .= "";
+
+
+	return $flux;
+
+}
+
+// formulaire d'ajout/remplacement/suppression d'un bandeau Ã  la rubrique
+function formulaire_bandeau($id_rubrique)
+{
+	$texte = "<p>"._T('redcta:intro_up_caja_redcta')."</p>";
+	$texte.= "<iframe src='http://spip.redcta.org.ar/spip.php?page=noticias".$GLOBALS['meta']['langue_site'].(isset($version) ? "&version=".urlencode($version) : '')."' width='100%'  frameborder='0'></iframe>";
+//	$urlredcta="http://spip.redcta.org.ar/spip.php?page=backend&id_mot=53";
+//	redcta_essaie_ajouter_liste_plugins($urlredta);
+	
+	$visible = false;
+
+	$chem = creer_repertoire_documents("bandeau");
+	$handle = @opendir($chem);
+	while($fichier = @readdir($handle)) {
+		if (ereg("^bandeau-$id_rubrique\.(jpg|png|gif)$", $fichier)) {
+			$bandeau = $fichier;
+		}
+	}
+
+	if (!$bandeau){
+        # Formulaire Ã  la mode CVT
+		$contexte = array('id_rubrique'=>$id_rubrique,'largeurMax'=>186,'hauteurMax'=>186);
+		$texte .= recuperer_fond('prive/upload_bandeau', $contexte);
+	} else {
+		# le nombre alÃ©atoire permet d'Ã©viter que le navigateur affiche la version en cache de l'image.
+		$reducImg = image_reduire("<img src='"._DIR_IMG."bandeau/$bandeau?".uniqid(rand())."' alt='' class='miniature_logo' />", "186", "186");
+		$texte .= "<div id='bandeau_icone' style='text-align:center'>".$reducImg;
+		$request = "?exec=naviguer&amp;id_rubrique=".$id_rubrique."&amp;action=supprimer_bandeau&amp;id_check=".$_SESSION['id_check'];
+		$AjAxtion = ajax_action_declencheur ($request, "bandeau_icone", $fct_ajax="");
+		$texte .= "<p style=\"text-align:center\">&#91;<a href=\"javascript:void(0);\" onclick=".$AjAxtion.">"._T('lien_supprimer')."</a>&#93;</p>";
+		$texte .= "</div>";
+	}
+	
+	$visible = (($bandeau != "")?true:false);
+	$bouton  = bouton_block_depliable(_T("redcta:titulo_caja_redcta"), $visible, "bandeau");
+	$data  = debut_cadre('r', _DIR_PLUGIN_REDCTA."images/redcta.png", '', $bouton, '', '', false);
+	$data .= debut_block_depliable($visible, "bandeau")."<div class='cadre_padding'>".$texte."</div>".fin_block();
+	$data .= fin_cadre_relief(true);
+	return $data;
+
+}
+
+function redcta_essaie_ajouter_liste_plugins($urlredcta) {
+	if (!preg_match(',^https?://[^.]+\.[^.]+.*/.*[^/]$,', $urlredcta))
+		return;
+
+	include_spip('inc/distant');
+	
+	if (!$rss = recuperer_page($urlredcta)
+	OR !preg_match(',<item,i', $rss))
+		return;
+
+	$liste = chercher_enclosures_zip($rss);
+	if (!$liste)
+		return;
+print_r($urlredcta);
+	// Ici c'est bon, on conserve l'url dans spip_meta
+	// et une copie du flux dans tmp/
+	ecrire_fichier(_DIR_TMP.'syndic_plug_'.md5($urlredcta).'.xml', $rss);
+	$syndic_plug = @unserialize($GLOBALS['meta']['syndic_plug']);
+	$syndic_plug[$urlredcta] = count($liste);
+	ecrire_meta('syndic_plug', serialize($syndic_plug));
+}
+
+
+
+?>
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_boutons.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_boutons.php	(revision 356)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_boutons.php	(revision 357)
@@ -4,5 +4,5 @@
 			$boutons_admin['configuration']->sousmenu['redcta'] = new Bouton(
       "../"._DIR_PLUGIN_REDCTA."images/redcta.png",  // icone
-			_T('redcta:options_redcta')	// titre
+			_T('redcta:options')	// titre
       );
 			return $boutons_admin;
Index: trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_options.php
===================================================================
--- trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_options.php	(revision 356)
+++ trunk/spip/esqueleto-redcta/plugins/redCTA/redcta_options.php	(revision 357)
@@ -20,23 +20,13 @@
 define('_DIR_PLUGIN_REDCTA',(_DIR_PLUGINS.end($p)));
 
-$forcer_lang = true;
+//$forcer_lang = true;
 // pour free : tester si on est en admin privee ou publique
-//if (!ereg("^\.\.", _DIR_PLUGIN_REDCTA)) {
-//	$GLOBALS['dossier_squelettes'] = implode(":", Array(
-//'pages-custom',
-//	_DIR_PLUGIN_ARTY.'/squelettes',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/logos',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/galeries',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/article',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/rubrique',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/sommaire',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/404',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/mot',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/recherche',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/login',
-//	_DIR_PLUGIN_ARTY.'/squelettes/blocs/groupe'
-//	));
-//}
+if (!ereg("^\.\.", _DIR_PLUGIN_REDCTA)) {
+	$GLOBALS['dossier_squelettes'] = implode(":", Array(
+
+	_DIR_PLUGIN_REDCTA.'/squelettes',
+
+	));
+}
 // structure des tables
 
