// <script type="text/javascript" language="JavaScript">
/* ***************** NOTA IMPORTANTE --- LEGGERE *****************
   E' importante che questo script venga dichiarato prima di
   filedata.js che è il file che serve per alimentarlo
   *************************************************************** */ 
// Questa funzione restituisce il mese corrente
function WebDate() {
	var now = new Date();
	var year= now.getYear();if (year < 1000) year += 1900;
	nameDay = new Array('Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato');
	nameMth = new Array('Gennaio','Febbraio','Marzo','Aprile','Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre','Dicembre');
  	mese = (nameMth[now.getMonth()]);
	return  mese;
}
// Restitusce il mese successivo al corrente
function WebNextDate() {
	var now = new Date();
	var year= now.getYear();if (year < 1000) year += 1900;
	nameDay = new Array('Domenica','Lunedi','Martedi','Mercoledi','Giovedi','Venerdi','Sabato');
	nameMth = new Array('Gennaio','Febbraio','Marzo','Aprile','Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre','Dicembre');
	gm = now.getMonth();
	gm = ++gm ;
	if (gm > 11) gm = 0;  // Se il mese corrente è dicembre (11 nell'array), occorre passare a gennaio (0 nell'array)
  	mese = (nameMth[gm]);
	return  mese;
}
// Restituisce l'anno in corso  - Servirà per superare il problema delle gite di Gennaio, che ora legge quelle del vecchio anno
function WebYear() {
	var now = new Date();
	anno = now.getFullYear;
	return anno;
}
// Restituisce il giorno del mese
function WebDay() {
	var now = new Date();
	giorno = now.getDate();
	return giorno;
}

function createArray(length)
{
	this.length = length;
	for( var i = 1; i<= length; i++)
		this[i] = null;
	return this;		
}

var LastMatch = 0; 

function GetField(Entry,number) 
{
	var Out = "";
	var FirstChar;
	var LastChar;

	FirstChar = 0;
// document.write(FirstChar + "<br>" + Separator + "<br>");
	LastChar = Entry.indexOf(Separator) ;
	if (number == 1) 
	{
		Out += Entry.substring(FirstChar,LastChar); 
		return Out;
	}
	if (number == Fields)
	{
		Out+= Entry.substring(Entry.lastIndexOf(Separator) + 1,Entry.length)
		return Out;
	}

	for(var i =2; i <= number; i++)
	{
		FirstChar = LastChar + 1;
		LastChar = Entry.indexOf(Separator, FirstChar);
	}
	Out += Entry.substring(FirstChar,LastChar); 
	return Out;
}

function FindNext(db,String, number) 
{	
	var CompareWith = "";
	//***********//
	//alert(number);
	//**********//

	for(var i = LastMatch + 1; i <=db.length; i++)
//	document.write(i + "<br>" );
	{
		var buf = GetField(db[i],number);
		var bl = parseInt(buf.length);
		var sl = parseInt(String.length);

msg = "buf (Campo data) :" + buf + "\n";
msg += "bl (lunghezza record) :" + bl + "\n";
msg += "sl (lungh. stringa ricercata) :" + sl + "\n";
msg += "i (indice) :" + i + "\n";
msg += "CompareWith (...) :" + CompareWith + "\n";
//alert(msg);

		if(bl > sl)
		{
		CompareWith = buf.substring(0,sl );
//		alert(1);
		}	
		else
		{
			CompareWith = buf;
//			alert(2);
		}
		if (CompareWith == String)
		{
			LastMatch = i;
			return i;
//			alert(3);
		}
	}
	LastMatch = 0;
	return 0;
//	alert(4);	
}

// Le due function() RigaGita e RigaAttivita, sono in realtà la stessa funzione, 
// ma vengono usate in modo diverso, e cioè la prima legge i dati del mese corrente
// la seconda invece prende in considerazione il mese seguente, e questo si evince
// dalla chiamata alle funzioni javascript WebDate() e WebNextDate(), scritte più sopra
// QUINDI QUANDO SI FA UNA MODIFICA, BISOGNA REPLICARLA SU ENTRAMBE LE FUNZIONI
function RigaGita()
{
	ms = WebDate();			// ********* QUI Leggo il mese corrente, per popolare la prima tabella ************
	ms = ms.toUpperCase();
	Mese= ms ;
	gg = WebDay();			//	scelgo il giorno del mese per non mostrare le gite più vecchie! (non serve sulla function RigaAttivita)
//	gg=5;					//  per esguire prove con giorni diversi
//	Mese = "GIUGNO";		//  per eseguire delle prove con mesi diversi!
	
	var arraygita = new Array();		// contiene, se ci sono, le gite del mese.
	iarraygita = 0;						// indice e contatore di elementi dell'array. -1 sono gli elementi
	
	do
	{ 
		indicegita=FindNext(Data,Mese,3);   // Il secondo parametro indica la posizione nell'array Data[]
//		document.write("..<br>");
		if (indicegita != 0)
		{
//			gita = Data[indicegita].split("|");     // Carattere separatore dei campi
			gita = Data[indicegita].split(":");     // Carattere separatore dei campi
			gitaURL = "pages/" + gita[0];    // path per reperire il file nel SITO
			
			if (gitaURL == "pages/###")			 // trucco per non attivare alcun link
				gitaURL = "javascript:;"

			testo = gita[1] + " ";
			testo += gita[2] + " - ";
			testo += gita[3];
			tipo = gita[4];
			aLink = testo.link(gitaURL); 
			
			hike = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_gita.gif\" width=\"23\" height=\"23\" align=\"absmiddle\" title=\"gita\" border=\"0\"></a>&nbsp;";
			conf = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_conf.gif\" width=\"28\" height=\"21\" align=\"absmiddle\" title=\"conferenza\" border=\"0\"></a>&nbsp;";
			tam = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_tam.gif\" width=\"41\" height=\"23\" align=\"absmiddle\" title=\"tam\" border=\"0\"></a>&nbsp;";;
			alpi = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_alp.gif\" width=\"27\" height=\"23\" align=\"absmiddle\" title=\"alpinismo\" border=\"0\"></a>&nbsp;";
			esc = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_esc.gif\" width=\"25\" height=\"23\" align=\"absmiddle\" title=\"escursonismo\" border=\"0\"></a>&nbsp;";
			news = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_news.gif\" width=\"22\" height=\"23\" align=\"absmiddle\" title=\"news\" border=\"0\"></a>&nbsp;";
 			cors = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_corso.gif\" width=\"28\" height=\"21\" align=\"absmiddle\" title=\"corso\" border=\"0\"></a>&nbsp;";
			cias = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_ciaspole.png\" width=\"34\" height=\"29\" align=\"absmiddle\" title=\"ciaspe\" border=\"0\"></a>&nbsp;";
			bike = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_bike.jpg\" width=\"34\" height=\"22\" align=\"absmiddle\" title=\"bici\" border=\"0\"></a>&nbsp;";
			
			if (tipo == "gita") img = hike;
			if (tipo == "conf") img = conf;
			if (tipo == "tam") img = tam;			
			if (tipo == "alpi") img = alpi;
			if (tipo == "esc") img = esc;						
			if (tipo == "cors") img = cors;						
			if (tipo == "news") img = news;
			if (tipo == "cias") img = cias;
			if (tipo == "bike") img = bike;
			
			arraygita[ iarraygita ] = "<tr><td>" + img + aLink + "</td></tr>";
//			alert(iarraygita + " " + arraygita[ iarraygita ]);

			giornata=gita[1];								//
			if ( giornata.length > 2) {						// 		Tutta questa parte serve a togliere la visualizzazione
				posiz = giornata.indexOf("-");				//		dei giorni antecedenti alla data attuale del mese	
				day = giornata.substring(0,posiz);			//		corrente. In questo modo la tabella risulta più pulita
				giornata=day;								//
			}												//		Questa parte di codice non bisogna replicarla nella
															//		function "gemella" RigaAttivita() perché la tabella
//			iarraygita ++;									//		serve intera!!
			if (giornata >= gg ) iarraygita ++;				//
			
//			document.write(aLink + "<br>");		
		}
	}
	while (indicegita != 0);
	
//	document.write("n° inserimenti: " + iarraygita);
	
	if (iarraygita > 0)
	{
		document.write("<table border=\"0\"");
		document.write("<tr><td><div align=\"left\"><strong><font size=\"-1\"><u>Attivit&agrave; del mese di " + mese + "</u></font></strong></div></td></tr>");
// conta è un variabile contatore che contiene la riga (gita o altro) da visualizzare
		for ( conta=0 ; conta < iarraygita ; conta ++)
		{
			document.write(arraygita[conta]);
		}
		document.write("</table>");
	}
}



function RigaAttivita()
{
	ms = WebNextDate();						// QUI VIENE definito il mese successivo, per popolare la seconda tabella
	ms = ms.toUpperCase();
	Mese= ms ;
//	Mese = "MARZO";		//  Impostato a Mano per forzare la lettura del Mese
	
	var arrayattivita = new Array();
	iarrayattivita = 0;						
	
	do
	{ 
		indiceattivita=FindNext(Data,Mese,3);
		if (indiceattivita != 0)
		{
			attivita = Data[indiceattivita].split(":");
			attivitaURL = "pages/" + attivita[0];

			if (attivitaURL == "pages/###")
				attivitaURL = "javascript:;"
			testo = attivita[1] + " ";
			testo += attivita[2] + " - ";
			testo += attivita[3];
			tipo = attivita[4];
			aLink = testo.link(attivitaURL); 
			
//			gita = "<img src=\"images/autobus.gif\" width=\"22\" height=\"20\" align=\"absmiddle\">&nbsp;";
//			acty = "<img src=\"images/audit.gif\" width=\"28\" height=\"21\" align=\"absmiddle\">&nbsp;";
//			news = "<img src=\"images/news.gif\" width=\"22\" height=\"23\" align=\"absmiddle\">&nbsp;";
//			if (tipo == "gita") img = gita;
//			if (tipo == "acty") img = acty;
//			if (tipo == "news") img = news;
			
			hike = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_gita.gif\" width=\"23\" height=\"23\" align=\"absmiddle\" title=\"gita\" border=\"0\"></a>&nbsp;";
			conf = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_conf.gif\" width=\"28\" height=\"21\" align=\"absmiddle\" title=\"conferenza\" border=\"0\"></a>&nbsp;";
			tam = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_tam.gif\" width=\"41\" height=\"23\" align=\"absmiddle\" title=\"tam\" border=\"0\"></a>&nbsp;";;
			alpi = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_alp.gif\" width=\"27\" height=\"23\" align=\"absmiddle\" title=\"alpinismo\" border=\"0\"></a>&nbsp;";
			esc = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_esc.gif\" width=\"25\" height=\"23\" align=\"absmiddle\" title=\"escursonismo\" border=\"0\"></a>&nbsp;";
			news = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_news.gif\" width=\"22\" height=\"23\" align=\"absmiddle\" title=\"news\" border=\"0\"></a>&nbsp;";
 			cors = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_corso.gif\" width=\"28\" height=\"21\" align=\"absmiddle\" title=\"corso\" border=\"0\"></a>&nbsp;";
			cias = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_ciaspole.png\" width=\"34\" height=\"29\" align=\"absmiddle\" title=\"ciaspe\" border=\"0\"></a>&nbsp;";
			bike = "<a href=\"javascript:aprilegenda();\"><img src=\"images/icone/i_bike.jpg\" width=\"34\" height=\"22\" align=\"absmiddle\" title=\"bici\" border=\"0\"></a>&nbsp;";
			
			if (tipo == "gita") img = hike;
			if (tipo == "conf") img = conf;
			if (tipo == "tam") img = tam;			
			if (tipo == "alpi") img = alpi;
			if (tipo == "esc") img = esc;						
			if (tipo == "cors") img = cors;						
			if (tipo == "news") img = news;
			if (tipo == "cias") img = cias;
			if (tipo == "bike") img = bike;
			
			arrayattivita[ iarrayattivita ] = "<tr><td>" + img + aLink + "</td></tr>";
			iarrayattivita ++;			
		}
	}
	while (indiceattivita != 0);
	
	if (iarrayattivita > 0)
	{
		document.write("<table border=\"0\"");
		document.write("<tr><td><div align=\"left\"><strong><font size=\"-1\"><u>Attivit&agrave; del mese di " + mese + "</u></font></strong></div></td></tr>");
		for ( conta=0 ; conta < iarrayattivita ; conta ++)
		{
			document.write(arrayattivita[conta]);
		}
		document.write("</table>");
	}
}

