var arrName = {
"ene":0,
"feb":1,
"mar":2,
"abr":3,
"may":4,
"jun":5,
"jul":6,
"ago":7,
"sep":8,
"oct":9,
"nov":10,
"dic":11
};

function reformatDate(strDate){
  var r;  
    
  if(strDate.length==0) return null;
  // Este replace repare el problema que había con las fechas Nan  
  strDate=strDate.replace("<br />","");
  var arr = strDate.split('/');
  //r=new Date(arr[2],arrName[arr[1]],arr[0]);
  r=new Date(arr[2]+'/'+ZeroPad(arrName[arr[1]]+1,2)+'/'+ZeroPad(arr[0],2));
  //r=new Date(arr[2]+'/'+arrName[arr[1]]+'/'+ZeroPad(arr[0],2));
  //alert(strDate+' -> '+r);  
  return r;
}

function DiaRelativo(d,dr){
  // ¿Es Hoy?
	if(d.getDate()==dr.getDate()) return 'hoy';
	// ¿Es mañana?
	if(d.getDate()-dr.getDate()==1) return 'mañana';
	// ¿Es pasado mañana?
	if(d.getDate()-dr.getDate()==2) return 'pasado mañana';
	//alert(d1);  	
	return 'el día '+d.getDate();  
}

function DiaRelativo2(d,dr){
  // ¿Es Hoy?
	if(d.getDate()==dr.getDate()) return 'hoy';
	// ¿Es mañana?
	if(d.getDate()-dr.getDate()==1) return 'mañana';
	// ¿Es pasado mañana?
	if(d.getDate()-dr.getDate()==2) return 'pasado mañana';
	//alert(d1);  	
	return 'el '+d.getDate();  
}

function DiaRespectoAHoy(d1, d2, d3){	                    
  var ds1,ds2;  

  ds1=DiaRelativo(d1,d2);
  if(d3!=undefined){
     ds2=DiaRelativo2(d3,d2);
     return 'Desde '+ds1+' hasta '+ds2+':';     
  }else{
     return ds1.substr(0,1).toUpperCase()+ds1.substr(1)+':';
     //return ds1+':';
  }
}

function DateAdd(timeU, byMany, dateObj) {
	var millisecond=1;
	var second=millisecond*1000;
	var minute=second*60;
	var hour=minute*60;
	var day=hour*24;
	var year=day*365;

	var newDate;
	var dVal=dateObj.valueOf();
	switch(timeU) {
		case "ms": newDate=new Date(dVal+millisecond*byMany); break;
		case "s": newDate=new Date(dVal+second*byMany); break;
		case "mi": newDate=new Date(dVal+minute*byMany); break;
		case "h": newDate=new Date(dVal+hour*byMany); break;
		case "d": newDate=new Date(dVal+day*byMany); break;
		case "y": newDate=new Date(dVal+year*byMany); break;
	}
	return newDate;
}

function FillString2(c,n){
  var s='';
  
  for(var i=0;i<n;i++) s+=c;  
  return s; 
}

function ZeroPad(s,n)
{  
  s=s.toString();
  if(s.length<n){
    s=FillString2('0',n-s.length)+s;
  }  
  return s;
}

function RFC3339Date(d){
  var rt=d.getFullYear()+'-'+ZeroPad(d.getMonth()+1,2)+'-'+ZeroPad(d.getDate(),2)+'T00:00:00';  
  return rt;
}
	
function insertarAgenda(root){
	var feed = root.feed;
	var entries = feed.entry || [];
	var html = ['<ul class="normal">'];
	var j;
	var u,uf,uu='';	  			
  var horaini;
  var end;	
  var d1,d2,d3;	  	

	if(entries.length>0){
		html.push('');
	}else{
		html.push('<li class="normal">No hay información de actividades para los próximos días.');
	}
	for (var i = 0; i < entries.length; ++i) {	    
	  var entry = entries[i];
	  var title = entry.title.$t;		 
	  var start = entry.content.$t;
	  var end;
        
    title=RepairEncoding(title);
    start=RepairEncoding(start);
    	  
	  start=start.substr(0,start.indexOf('\n')).substr(12).replace('acute; ','').replace(/ al /g,'-').replace(/ de /g,'/');
	  start=start.replace('lun ','');
	  start=start.replace('mar ','');
	  start=start.replace('mié ','');
	  start=start.replace('jue ','');
	  start=start.replace('vie ','');
	  start=start.replace('sáb ','');
	  start=start.replace('dom ','');
		  	  
	  j=start.indexOf('-');		  
	  if(j>=0){
		end=start.substr(j+1);
		start=start.substr(0,j);
	  }else end='';	      	  		  
    		  
	  // Quitamos la hora de inicio
	  j=start.indexOf(':');	  
	  if(j>=0){
		horaini=start.substr(j-2);
		start=start.substr(0,j-3);
	  }else horaini='';
	  
	  // Quitamos la hora de fin
	  j=end.indexOf(':');	  
	  if(j>=0){
		   end=end.substr(0,j-3);
    }    		
		  	  	  
    // Aquí tenemos que sustituir los nombres de los meses por sus números
    // para que IE convierta bien las fechas    
    var d1=new Date(reformatDate(start));    
	  var d2=new Date();  
	  if(end.length>0) var d3=new Date(reformatDate(end)); else var d3=undefined;	  
    u=DiaRespectoAHoy(d1,d2,d3);
    
	  if(uu!=u){
		if(uu.length>0) html.push('</li>');
		html.push('<li class="normal"><b>',u,'</b>');		
	  }
	  if(horaini.length) html.push('<br /><span class="content_hora">',horaini,'</span>',title); else html.push('<br /><img src="/layout/images/bullet_1.gif" />',title); 				  
	  uu=u 
	}

	html.push('</li></ul>');
	if($(divID_C)) $(divID_C).set('html',html.join(""));
}

function insertarMenu(root){
	var feed = root.feed;
	var entries = feed.entry || [];
	var html = ['<ul class="normal">'];
	var j;
	var u,uu='';	  					  	

	if(entries.length>0){
		html.push('');
	}else{
		html.push('<li class="normal">No hay información del menú para los próximos días.');
	}
	for (var i = 0; i < entries.length; ++i) {
	  var entry = entries[i];
	  var title = entry.title.$t;		 
	  var start = entry.content.$t;

    title=RepairEncoding(title);
    start=RepairEncoding(start);
    
    // Quitamos el 1º, 2º, 3º y 4º
    title=title.replace('1º ','');    
    title=title.replace('2º ','');
    title=title.replace('3º ','');
    title=title.replace('4º ','');
    	  
	  start=start.substr(0,start.indexOf('\n')).substr(12).replace('acute; ','').replace(/ al /g,'-').replace(/ de /g,'/');		  		  
		  
	  var end;
	  j=start.indexOf('-');		  
	  if(j>=0){
		end=start.substr(j+1);
		start=start.substr(0,j);
	  }
		  
	  // Quitamos la hora de inicio
	  j=start.indexOf(':');
	  var horaini;
	  if(j>=0){
		horaini=start.substr(j-2);
		start=start.substr(0,j-3);
	  }	
		  	  	  
    // Aquí tenemos que sustituir los nombres de los meses por sus números
    // para que IE convierta bien las fechas
    j=start.indexOf('/');
    var d1=new Date(reformatDate(start));    
	  var d2=new Date();	  
	  
	  u=DiaRespectoAHoy(d1,d2);		  		  
	  if(uu!=u){
		if(uu.length>0) html.push('</li>');
		html.push('<li class="normal"><b>',u,'</b>');		
	  }
	  html.push('<br /><img src="/layout/images/bullet_1.gif" />',title);				  
	  uu=u 
	}

	html.push('</li></ul>');
	if($(divID_M)) $(divID_M).set('html',html.join(""));
}
	
function calendario(url,n){
  var url=url+'?alt=json-in-script&callback=insertarAgenda&orderby=starttime&max-results='+n+'&singleevents=true&sortorder=ascending&futureevents=true'
  new Asset.javascript(url);
}

function menu(url,n){
  var d=new Date();
  var url=url+'?alt=json-in-script&callback=insertarMenu&orderby=starttime&max-results='+n+'&singleevents=true&sortorder=ascending&start-min='+RFC3339Date(d)+'&start-max='+RFC3339Date(DateAdd('d',3,d));
  new Asset.javascript(url);
}
