google.load("feeds", "1");

function loadRSS() {
	if(typeof(feeds)!='undefined'){ 
		for (var i = 0; i < feeds.length; i++) {
			getRSS(feeds[i]);
		}
	}	
}   


function getRSS(feedvar) {

var feed = new google.feeds.Feed(feedvar[0]);
var nbMax = feedvar[1];
var type = feedvar[2];
var target = feedvar[3];
var startIndex = feedvar[4];
var imgW = feedvar[5];
var imgH = feedvar[6];




//console.log("feed : "+feedvar); 
feed.setNumEntries(nbMax+startIndex);
feed.setResultFormat(google.feeds.Feed.XML_FORMAT);
feed.load(function(result) {
  if (!result.error) {

  		 	var items = result.xmlDocument.getElementsByTagName("item");

			if (type.indexOf('top')>-1){
				genererBlocTop(items[0], imgW, imgH, target); 
			}
			if (type.indexOf('liste')>-1) {
				for (var index = 0; index < items.length-startIndex ; index++) {					
					ajouterListe(items[index+startIndex],  index, target);				
				}
			}
			
			if (type.indexOf('bloc')>-1) {
			
				genererBloc(items, imgW, imgH, target,startIndex) ;
				
			}
			
			if (type.indexOf('slide')>-1) {
					ajouterSlides(items, imgW, imgH, target, nbMax);				
			}
					
	}
  }
);
}



function genererBlocTop(item, imgW, imgH, target) {


	 		var container = jQuery('#'+target);
			//var container = document.getElementById(target);
			if (typeof(container)!='undefined') {

			var titleElement = item.getElementsByTagName("title")[0];
			var title = titleElement.firstChild.nodeValue;
			var linkElement = item.getElementsByTagName("link")[0];
			var linkVal = linkElement.firstChild.nodeValue;	  	
			var enclosureElem = item.getElementsByTagName("enclosure")[0];
			var imgsrc = enclosureElem.attributes[0].value;
			var descElement = item.getElementsByTagName("description")[0];
			var descVal=""
			try {
			descVal = formatDesc(descElement.firstChild.nodeValue);
			descVal = contractText(descVal);
			} catch (e) {}	  	
			
			lien = jQuery(container).find('a')[1];
			//lien = container.getElementsByTagName("a")[1];					
				
				if (typeof(lien)!='undefined') {
					lien.setAttribute('href', linkVal);
					visuel = jQuery(lien).find('p:first');
					if (typeof(visuel)!='undefined') {
						img = jQuery(visuel).find('img:first');
						if (typeof(img)!='undefined') {
							img.attr('src', imgsrc);	
							img.attr('alt', title);	
							if (imgW > 0) {
								img.attr('width', imgW);
							}
							if (imgH > 0) {
								img.attr('height', imgH);
							}	
						}
					}
					titleEl = jQuery(lien).find('h2:first');
					if (typeof(titleEl)!='undefined') {	
						try {	
							titleEl.html(title);
						} catch (e) {
							try {
							titleEl.innerHTML = title;
							} catch (e) {}
						} 
					}
					
					descEl = jQuery(lien).find('p')[1];
					
					if(typeof(descEl)!='undefined' && descEl!=null && descVal!=null){

						try {	
							descEl.html(descVal);
						} catch (e) {
							try {
							descEl.innerHTML = descVal;
							} catch (e) {
							}
						} 
					}
				}
		}
	}

function ajouterSlides(items, imgW, imgH, target, nb ) {
   
		var SlideDiv = jQuery('#'+target);
		////console.log(SlideDiv);
		var slides = SlideDiv.find('div.actuSlideElement');
		////console.log(slides);
		for (var index = 0; index < items.length ; index++) {	
		////console.log(index);
				ajouterSlide(slides[index], items[index],  imgW, imgH);				
			}
	}

	function ajouterSlide(container, item, imgW, imgH ) {
			//	//console.log(container);
				////console.log(item);

			if (typeof(container)!='undefined') {
			title = jQuery(item).find('title:first').text();
			linkVal = jQuery(item).find('link:first').text();
			imgsrc = jQuery(item).find('enclosure:first').attr('url');
			descVal = jQuery(item).find('description:first').text();
			
			//console.log(descVal);
			var t1bis = descVal.indexOf("<a");
			var t1 = descVal.indexOf(">", t1bis);
			//console.log(t1);
			var t2 = descVal.indexOf("</a>");
			//console.log(t2);
			descVal = descVal.substring(t1+1,t2);
			//console.log(descVal);
			
			article =  container ; //jQuery(container).find("div")[index];	
				
			if (typeof(article)!='undefined') {

		
				lien = jQuery(article).find('a:first');				
				lien.attr('href',linkVal);
				
				visuel =  jQuery(article).find('p:first').find('img:first');
				visuel.attr('src',imgsrc);
				visuel.attr('alt',title);
				if (imgW > 0) {
					visuel.attr('width', imgW);
				}
				if (imgH > 0) {
					visuel.attr('height', imgH);
				}	
				
				titleEl  =  jQuery(lien).find('h2:first');	
				titleEl.text(title);
				descEl  = jQuery(lien).find('p')[1];
				if (typeof(descVal)!='undefined') {
				try{
					descVal = contractText(descVal);
					descEl.html(descVal) ;
					
					}catch (e){
					try {
					descEl.innerHTML = descVal;
					} catch (e2){
					titleEl.after(descVal);
					}
					}
				}
			}
		}
	}
	
   
  function genererBloc(items, imgW, imgH, target, startIndex) {
   
   
	  for (var index = startIndex; index < items.length; index++) {	
	  			//console.log("genererBloc - index : " + index);
	  
			ajouterBloc(items[index],imgW,imgH, index-startIndex, target );
			
		  }
		  
   }
	
	function ajouterBloc(item, imgW, imgH, index, target ) {

  		//console.log("ajouterBloc - "+item+","+ imgW+","+ imgH+","+ index+"," +target);

 		var container = jQuery('#'+target);
		//var container = document.getElementById(target);
		
	  			//console.log(container);

			if (typeof(container)!='undefined') {

			var titleElement = item.getElementsByTagName("title")[0];
			//console.log(titleElement);
			
			var title = titleElement.firstChild.nodeValue;
			var linkElement = item.getElementsByTagName("link")[0];
			//console.log(linkElement);
			
			var linkVal = linkElement.firstChild.nodeValue;	  	
			var enclosureElem = item.getElementsByTagName("enclosure")[0];
			//console.log(enclosureElem);
			var imgsrc ="";
			try{
			imgsrc = enclosureElem.attributes[0].value;
			}catch (e){
			}
			var descElement = item.getElementsByTagName("description")[0];
			//console.log(descElement);

			

			
			
			
			var descVal = "";
			if(descElement!=null){				
				descVal = formatDesc(descElement.firstChild.nodeValue);
			}
			//console.log("ajouterBloc - descVal : " + descVal);
		

			//article = container.getElementsByTagName("div")[index];
			article = jQuery(container).find('div')[index];
			//console.log("ajouterBloc - article : " + article);
				
			if (typeof(article)!='undefined') {

		
				lien = jQuery(article).find('a:first');
				//lien = article.getElementsByTagName("a")[0];	
				
				//console.log("ajouterBloc - lien : " + lien);
				
				if (typeof(lien)!='undefined') {


				lien.attr('href', linkVal);
				//lien.setAttribute('href', linkVal);
					//visuel     = lien.getElementsByTagName("p")[0];
					visuel = jQuery(lien).find('p:first');
					//console.log("ajouterBloc - visuel : " + visuel);
					
					if (typeof(visuel)!='undefined') {
					
						img = jQuery(visuel).find('img:first');

						//img       = visuel.getElementsByTagName("img")[0];
						//console.log("ajouterBloc - img : " + img);
						
						if (typeof(img)!='undefined') {

							img.attr('src', imgsrc);	
							img.attr('alt', title);	

							//img.setAttribute('src', imgsrc);	
							//img.setAttribute('alt', title);
								
							if (imgW > 0) {
								//img.setAttribute('width', imgW);
								img.attr('width', imgW);
								
							}
							if (imgH > 0) {
								//img.setAttribute('height', imgH);
								img.attr('height', imgH);
								
							}	
						}
					}
					//titleEl  = lien.getElementsByTagName("h2")[0];
					titleEl = jQuery(lien).find('h2:first');
					
					//console.log(titleEl);
					
					if (typeof(titleEl)!='undefined') {	
						try {	
							titleEl.html(title);
						
						} catch (e) {
							try {
							
							titleEl.innerHTML = title;
							} catch (e) {
							//console.log("erreur " + e + " title : " + title);  
							}
							
						} 
					}
					
					descEl = jQuery(lien).find('p')[1];
					
					//descEl  = lien.getElementsByTagName("p")[1];
					//console.log(descEl);
					
					if(typeof(descEl)!='undefined' && descEl!=null && descVal!=null){
					
					descVal = contractText(descVal);	
						//descEl.innerHTML =  descVal; 	
				if (typeof(descVal)!='undefined') {
					try{
						descEl.html(descVal) ;
						
						}catch (e){
						try {
						descEl.innerHTML = descVal;
						} catch (e2){
						titleEl.after(descVal);
						}
						}
				}
						
					}
				}
			
			}
		}
	}
	
	
   
	function ajouterListe(item, index, target ) {

		var container = document.getElementById(target);
		
		if (typeof(container)!='undefined') {

			var titleElement = item.getElementsByTagName("title")[0];
			var title = titleElement.firstChild.nodeValue;
			var linkElement = item.getElementsByTagName("link")[0];
			var linkVal = linkElement.firstChild.nodeValue;	  
			
			//---
			var heureElement;
			var heure;
			if(target == "equipe"){
				heureElement = item.getElementsByTagName("pubDate")[0];
				heure = heureElement.firstChild.nodeValue;
			}
			
			elementListe  = container.getElementsByTagName("li")[index];		
			
			if (typeof(elementListe)!='undefined') {
				
				lien = elementListe.getElementsByTagName("a")[0];	
				if (typeof(lien)!='undefined') {
					lien.setAttribute('href', linkVal);
					lien.innerHTML = title ; 
					//---
					if(target == "equipe"){
						var morcDate = heure.split(" ");
						var marcDate2 = morcDate[4].split(":");
						var heureFormater = "<span style=\"color:red; font-weight:bold; \"; >"+marcDate2[0]+":"+marcDate2[1]+" </span>"
						lien.innerHTML = heureFormater + lien.innerHTML;
					}
				}
				
			
			}
		}
	}
   
   
	function formatDesc(desc){
	
		var formattedDesc;
		
		formattedDesc = desc.replace("<p>","");	
		formattedDesc = formattedDesc.replace("</p>","");	
	
		return formattedDesc; 
	
	} 
   
	function contractText(text) {	
		if (text.length > 250) {
			var lastSpace = text.substring(0,250).lastIndexOf(' ');
			if (lastSpace>0) {
				text = text.substring(0,lastSpace) + " ...";
			} 		
		}		
		return text;		 
	}

    google.setOnLoadCallback(loadRSS);
    
    
	
	
	
