

// News

function actuality(pDate, pInfo) {
	
	this.date=pDate;
	this.info=pInfo;
}



function getActualities() {
	
	//parameters: {company: 'example', limit: 12}
	var page='actualites/getActualities.php';
	var randomnum=Math.random()*10;
	new Ajax.Request(page, {
	    method:'get',
		parameters: {n: 10, random:randomnum},
	    onSuccess: function(transport){
	      var response = transport.responseText || "no response text";
	      if (ifError(response)==false) 
	    	  showActualities(response);	
	    },
	    onFailure: function(){ 
	    	alert('Sorry something went wrong at calling page '+ page); 
	    }
	});
	
}


var actualities=new Array();
idx_actualities=0;
var tmr_actu=null;

function showActuality(pIdx, pDir) { showMvActuality(pIdx, pDir); }

function showMvActuality(pIdx, pDir) {
	
		var maindatenode = getNodeRef("actumaindate");
		if (maindatenode!=undefined && maindatenode!=null) {
			
			var fntsize=maindatenode.style.fontSize.substr(0,2); //19px
			
			var fntlimit=15;
			
			if (fntsize > fntlimit) {
				
				maindatenode.style.fontSize = (fntsize-1)+"px";
				
				getNodeRef("actumaintext").style.fontSize = (fntsize-5) + "px";
				var diff = (19 - fntsize) + 1; // 19 - (19->16) + 1 => 1->4
				var nextsizeincreased= 10+diff;
				var nextsizedecreased=(fntsize-10);
				var nextnextsizeincreased=2*diff; //2->8
				
				// if mov inversed : exchange values 
				if (pDir!=undefined && pDir=="-") {
					var temp=nextsizeincreased;
					nextsizeincreased=nextsizedecreased;
					nextsizedecreased=temp;
					
					getNodeRef("actunextline").innerHTML="";
					nextfirstsizeincreased=nextnextsizeincreased;
					nextnextsizeincreased=0;
				}
				else {
					getNodeRef("actufirstnewline").innerHTML="";
					nextfirstsizeincreased=0;
				}
				
				getNodeRef("actufirstnewline").style.fontSize = nextfirstsizeincreased+"px";
				
				getNodeRef("actufirstline").style.fontSize = nextsizedecreased+"px";
				
				getNodeRef("actulastline").style.fontSize = nextsizeincreased+"px";
				
				getNodeRef("actunextline").style.fontSize = nextnextsizeincreased+"px";
				
				tmr_actu=setTimeout("showMvActuality("+pIdx+",'"+pDir+"')", 50);
			}
			else {
				showActuality2(pIdx);
			}

		}
		else {
		    showActuality2(pIdx);
		}
	
}


function showActuality2(pIdx) {

	// Appel par timout -> au suivant
	if ((pIdx==undefined) || (pIdx==null))
		idx_actualities = (idx_actualities<(actualities.length-1) ) ? (idx_actualities+1) : 0 ;
		

	var firstline="";
	var mainline="";
	var lastline="";
	var newline="";
	var firstnewline="";
	if (actualities.length>=3) {
		
		var actu=actualities[idx_actualities];
		
		var mainline="<p id='actumaintext' onmouseover='clearTimeout(tmr_actu)' onmouseout='tmr_actu=setTimeout(\"showActuality()\",7500);' style='padding:5px 12px 6px 8px; text-shadow:1px 1px #777; color:#fff; cursor:url(\"sablier.gif\"), pointer; font-size:15px' ><strong><span id='actumaindate' style='font-size:19px'>"+fmtDateStr(actu.date)+"</span><span style='color:#ffffff'> "+actu.info +"</span></strong></p>\n";
		//background:#4aA3A4; border-right:thin #aed solid;
		var idxn = (idx_actualities>=2) ? (idx_actualities-2) : actualities.length-(2-idx_actualities); actu = actualities[idxn];
		firstnewline="<p id='actufirstnewline' style='padding:2px 12px 2px 8px; color:#fff; font-size:0px; border-bottom:0px #aed solid; border-right:0px #aed solid; border-bottom-left-radius : 10px; border-bottom-right-radius : 10px' ><strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";

		var idx1 = (idx_actualities>=1) ? (idx_actualities-1) : actualities.length-1; actu = actualities[idx1];
		//color:#cde; background-image:url(\"images/degradeicetop.gif\"); background-repeat:repeat-x; background-position:left bottom;-->
		firstline="<p id='actufirstline' style='padding:2px 12px 2px 8px; color:#fff; font-size:10px; cursor:pointer; border-top:0px #ced solid; border-right:0px #aed solid' onmouseup='prev_news()'>" +
				"<strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";

		var idx3 =(idx_actualities<(actualities.length-1) ) ? (idx_actualities+1) : 0; actu = actualities[idx3];
		// background-image:url(\"images/degradeice.gif\"); background-repeat:repeat-x; background-position:left top; background-size:contain;
		lastline="<p id='actulastline' style='padding:2px 12px 5px 8px; color:#fff; font-size:10px; cursor:pointer; border-bottom:0px #aed solid; border-right:0px #aed solid; border-bottom-left-radius : 10px; border-bottom-right-radius : 10px'  onmouseup='next_news()'><strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";

		var idxn =(idx_actualities<(actualities.length-2) ) ? (idx_actualities+2) : 0; actu = actualities[idxn];
		newline="<p id='actunextline' style='padding:5px 12px 5px 8px; color:#fff; font-size:0px; border-bottom:0px #aed solid; border-right:0px #aed solid; border-bottom-left-radius : 10px; border-bottom-right-radius : 10px' ><strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";

		tmr_actu=setTimeout("showActuality()", 7500);
	}
	else if (actualities.length>=2) {
		var actu = actualities[1];
		lastline="<p id='actulastline' style='padding:2px 12px 2px 8px; color:#fff; font-size:14px; border-top:0px #ced solid; border-right:0px #aed solid' >" +
		"<strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";
		if (actualities.length>=1) {
			actu = actualities[0];
			firstline="<p id='actufirstline' style='padding:2px 12px 2px 8px; color:#fff; font-size:14px; border-top:0px #ced solid; border-right:0px #aed solid' >" +
			"<strong>"+fmtDateStr(actu.date)+"</strong> "+actu.info +"</p>\n";
		}
	}

	setNodeContent("actualitybanner", firstnewline+firstline+mainline+lastline+newline); 

}


function prev_news() {
	
	clearTimeout(tmr_actu);
	idx_actualities = (idx_actualities>0 ) ? (idx_actualities-1) : actualities.length-1 ;
	showActuality(idx_actualities,"-");
}

function next_news() {
	
	clearTimeout(tmr_actu);
	var nactus=actualities.length;
	var idmax=nactus-1;
	idx_actualities = ( idx_actualities < idmax ) ? (idx_actualities+1) : 0;
	showActuality(idx_actualities);
}

function showActualities(xmlinfo) {
	
	//alert("showActualities()");
	
	var actustext="";
	var actus = new Array(); 
	actualities=ActuXmltoArray(xmlinfo);
	for (var i=0; i<actualities.length; i++ ) {
		//boutons
		var line="<div id='news_"+i+"' onmouseover='showbtns(this,true,webmaster)' onmouseout='showbtns(this,false)' style='float:left; clear:left; width:400px; background:#fff; padding:4px 0px; border-bottom:3px solid #dee'>";
			line += "<div id='newsbtns_"+i+"' style='float:left; visibility:hidden; cursor:pointer'><img src=\"./actualites/bin.gif\" onmouseup=\"del_Actu('"+actualities[i].date+"')\" /></div>"; 
			//data
			line+="<div style='float:left; width:374px; font-size:15px; padding-left:3px'><strong>"+fmtDateStr(actualities[i].date)+"</strong> "+actualities[i].info +"</div>\n"; 
		line+="</div>";
		actustext+=line;
	}
	setNodeContent("actualities", actustext );
	showActuality(0);

}


function create_Actu() {
	
	var dateActu=getNodeValue("Actu_Date"); // frm_Actu
	dateActu=checkDateFld(dateActu);
	if (dateActu!=null) {
		var infoActu=getNodeValue("Actu_Info");
		var page="actualites/createActu.php";
		new Ajax.Request(page, {
		    method:'post',
			parameters: {Actu_Date: dateActu, Actu_Info: infoActu},
		    onSuccess: 
		    	function(transport) {
			      var response = (transport.responseText || "no response text");
			      if (ifError(response)==false) {
			    	  getActualities();
			      }
			    }
			,
		    onFailure: 
		    	function(){ 
					//alert('Sorry something went wrong at calling page '+ page); 
			    	getActualities();
				}
		  });
	}
}


function del_Actu(pId) {
	
	var page='actualites/delActu.php';
	new Ajax.Request(page, {
	    method:'post',
	    parameters: {Actu : pId},
	    onSuccess: 
	    	function(transport){
		      var response = transport.responseText || "no response text";
		      if (ifError(response)==false) {
		    	  getActualities();
		      }
	    	}
	    ,
	    onFailure: 
	    	function(){ 
	    		//alert('Sorry something went wrong at calling page '+ page);
	    	  	getActualities();
	    	}
	});
		
}


// xml treatment


function getNewsXmlTag(xmltagname) {

	var datanodes=document.getElementsByTagName(xmltagname);
	if (datanodes!=null) {
		
		var datanode=datanodes[0]; 
		var Actu = getActuXml(datanode);
		return Actu;
	}
	else
		return null;
}


function getActuXml(xmlnode) {
	
	var Actu = new actuality();
	
	Actu.date=getTagInfo("DATE", xmlnode);
	Actu.info=getTagInfo("INFO", xmlnode);
	
	return Actu; 	
}


function ActuXmltoArray(xmlinfo) {
	
	var list = new Array();
	
	var fiches=new Array();
	var pos=0;
	var lastpos=0;
	var tag="</ACTU>";
	if (xmlinfo!=null) {
		while ( (pos=xmlinfo.indexOf(tag, (lastpos+tag.length) ))!=-1) {
			fiches[fiches.length]=xmlinfo.substring(lastpos,pos);
			lastpos=pos+tag.length;
		}
		if (fiches!=null) {
			
			var ind=0;
			var xmlnode=fiches[ind]; 
		
			while (	xmlnode!=null) {
				list[list.length]=getActuXml(xmlnode);
				xmlnode=fiches[++ind];
			}
		}
	}
	
	
	
/*	var xmlnodes=document.getElementsByTagName("ACTU");
	if (xmlnodes!=null) {
		
		var ind=0;
		var xmlnode=xmlnodes[ind]; 
	
		while (	xmlnode!=null) {
			
			list[list.length]=getActuXml(xmlnode);
					
			xmlnode=xmlnodes[++ind];
		}
	}
	
	*/
	return list;
}

