
/*---------------------------------------------------------------------------------------------------------------------*/
/* CONSTANTES GLOBALES																			    */
/*---------------------------------------------------------------------------------------------------------------------*/
     gConcertBackNothing	= HTMLImage('arrow_back_no',false,28,25,'0px;','','','','') ;
     gConcertBackImage	= HTMLImage('arrow_back',true,28,25,'0px;','','',glConcertBack,'') ;
/*---------------------------------------------------------------------------------------------------------------------*/
     gConcertNextNothing	= HTMLImage('arrow_next_no',false,28,25,'0px;','','','','') ;
     gConcertNextImage	= HTMLImage('arrow_next',true,28,25,'0px;','','',glConcertNext,'') ;
/*---------------------------------------------------------------------------------------------------------------------*/
     gConcert			= new Array() ;
     gConcertRef		= new Array() ;
     gConcertRefAn		= new Array() ;
/*---------------------------------------------------------------------------------------------------------------------*/
	gConcertActive		= 0 ;
/*---------------------------------------------------------------------------------------------------------------------*/
	gConcertArrowL		= 0 ;
	gConcertArrowR		= 0 ;
/*---------------------------------------------------------------------------------------------------------------------*/
     gConcertsNb		= 0 ;
     gConcertsRefNb		= 0 ;
     gConcertsPage		= '' ;
/*---------------------------------------------------------------------------------------------------------------------*/

function SORTConcertDate(pC1,pC2)
{
	if (pC1.date == pC2.date)
	{
		if (pC1.nivc == pC2.nivc) { return (pC1.heure > pC2.heure) ? 1 : -1 ; } else { return (pC1.nivc > pC2.nivc) ? 1 : -1 ; }
	}
	else
	{
		return (pC1.date > pC2.date) ? 1 : -1 ;
	}
}

function COLORConcertDate(pMenu,pDate)
{
	var iCOLOR  = gColorViolet ;
	var iPass   = gColorBrun ;
	var iActive = gColorBlanc ;
	var iDate   = new Date() ;
	var iAnnee  = iDate.getFullYear() ;
	var iMois   = iDate.getMonth() ;
	var iJour   = iDate.getDate() ;
	if (pDate != null)
	{
		if (pDate[2] < iAnnee)
		{
			iCOLOR = iPass ;
		}
		else
		{
			if ((pDate[2] == iAnnee) && (pDate[1] < iMois))
			{
				iCOLOR = iPass ;
			}
			else
			{
				if ((pDate[1] == iMois) && (pDate[0] < iJour))
				{
					iCOLOR = iPass ;
				}
			}
		}
		if ((pDate[2] == iAnnee) && (pDate[1] == iMois) && (pDate[0] == iJour))
		{
			iCOLOR = iActive ;
		}
	}
	gConcertActive += ((pMenu > 0) && (iCOLOR == iPass  )) ? 1 : 0 ;
	gConcertActive -= ((pMenu > 0) && (iCOLOR == iActive)) ? 1 : 0 ;
	return iCOLOR ;
}

function ConcertBack(pMenu)
{
     if (gConcertActive > 1)
     {
          gConcertActive-- ;
		Concerts(pMenu) ;
     }
}

function ConcertNext(pMenu)
{
     if (gConcertActive < gConcertsNb)
     {
          gConcertActive++ ;
		Concerts(pMenu) ;
	}
}

function ConcertLinks(pID,pOK)
{
	var iUrl = document.getElementById(pID).href ;
	if (iUrl != null)
	{
		var iChar  = (pOK) ? '?' : '&' ;
		var iIndex = iUrl.indexOf(iChar) ;
		if (iIndex > 0)
		{
			iUrl = iUrl.substring(0,iIndex) ;
		}
		iUrl += iChar + 'concert=' + gConcertActive ;
		document.getElementById(pID).href = iUrl ;
	}
}

function Concerts(pMenu)
{
	var iBackLink = HTMLLink(gConcertBackImage,'javascript: ConcertBack(' + pMenu + ');',glConcertBack,'','') ;
	var iNextLink = HTMLLink(gConcertNextImage,'javascript: ConcertNext(' + pMenu + ');',glConcertNext,'','') ;
	var iBack     = new Array(gConcertBackNothing,iBackLink) ;
	var iNext     = new Array(gConcertNextNothing,iNextLink) ;
	var iM ;
	var iP ;
//	----------------------------------
//	Affichage des dates et des fleches
//	----------------------------------
	InitConcertsArrows(pMenu) ;
	IDinnerHTML('CONCERTS',(gConcertsNb > 0) ? gConcert[gConcertActive - 1] : '') ;
	IDinnerHTML('CONCERTS_L',iBack[gConcertArrowL]) ;
	IDinnerHTML('CONCERTS_R',iNext[gConcertArrowR]) ;
	if (pMenu < 0)
	{
		InitFormMaintenance() ;
	}
	else
	{
//		--------------------------------------------------
//		Mise à jour des ID en cas de changement de concert
//		--------------------------------------------------
		if (gConcertsPage == 'guestbook')
		{
			for (iP = 0 ; iP < 9 ; iP++) { ConcertLinks(('_pageLDO_' + iP),false) ; }
		}
		if (gConcertsPage == 'message')
		{
			for (iP = 0 ; iP < 2 ; iP++) { ConcertLinks(('_retourLDO_' + iP),false) ; }
		}
		for (iM = 1 ; iM < (glMenu.length + 1) ; iM++)
		{
			if (pMenu != iM)
			{
				ConcertLinks(('_menuH_' + iM),false) ;
				ConcertLinks(('_menuB_' + iM),false) ;
			}
		}
		ConcertLinks(('_menuI_1'),true) ;
		ConcertLinks(('_menuI_2'),true) ;
	}
}

function FormatGuest(pStr)
{
	var iStr ;
	if (gl == 'fr')
	{
		var iChar = pStr.charAt(0).toUpperCase() ;
		if ((iChar == 'A') || (iChar == 'E') || (iChar == 'I') ||
		    (iChar == 'O') || (iChar == 'U') || (iChar == 'Y'))
		{
			iStr = '1&egrave;re partie d&#39;' ;
		}
		else
		{
			iStr = '1&egrave;re partie de ' ;
		}
		iStr += pStr ;
	}
	else
	{
		iStr  = pStr ;
		iStr += (pStr.charAt(pStr.length - 1).toUpperCase() != 'S') ? '&#39;s' : '&#39;'
		iStr += ' guest' ;
	}
	return iStr ;
}

function FormatConcert1(pI,pChar)
{
	var iStr = '' ;
	iStr += ((gSConcert[pI].manif != '') && ( gSConcert[pI].guest)) ? FormatGuest(gSConcert[pI].manif) : '' ;
	iStr += ((gSConcert[pI].manif != '') && (!gSConcert[pI].guest)) ? gSConcert[pI].manif : '' ;
	iStr += ((gSConcert[pI].manif != '') && ((gSConcert[pI].salle != '') || (gSConcert[pI].avec))) ? pChar : '' ;
	iStr +=  (gSConcert[pI].salle != '') ? gSConcert[pI].salle : '' ;
	iStr += ((gSConcert[pI].salle != '') && (gSConcert[pI].avec)) ? ', ' : '' ;
	iStr +=  (gSConcert[pI].avec) ? (glWith + ' ' + gSConcert[pI].avec) : '' ;
	return iStr ;
}

function FormatConcert2(pI,pChar)
{
	var iStr = '' ;
	iStr += gSConcert[pI].ville ;
	iStr +=  ((gl == 'fr') && (gSConcert[pI].dept !=       '')) ? '&nbsp;(' + gSConcert[pI].dept + ')' : '' ;
	iStr += (((gl != 'fr') || (gSConcert[pI].pays != 'France')) && (gSConcert[pI].pays != '')) ? '&nbsp;(' + gSConcert[pI].pays + ')' : '' ;
	iStr += pChar ;
	return iStr ;
}

function InitConcertsID(pPage)
{
	gConcertsPage = pPage ;
}

function InitConcertsArrows(pMenu)
{
	gConcertArrowL = (gConcertActive >           1) ? 1 : 0 ;
	gConcertArrowR = (gConcertActive < gConcertsNb) ? 1 : 0 ;

}

function InitConcertsRef()
{
	if (gConcertsRefNb > 0)
	{
		var iA = 1 ;
		gConcertRef.reverse() ;
		gConcertRefAn[0] = gConcertRef[0].substring(0,4) ;
		for (iC = 1 ; iC < gConcertsRefNb ; iC++)
		{
			if (gConcertRef[iC].substring(0,4) != gConcertRefAn[iA - 1])
			{
				gConcertRefAn[iA] = gConcertRef[iC].substring(0,4) ;
				iA++ ;
			}
		}
	}
}

function InitConcerts(pMenu)
{
	var iDate ;
	var iDateC ;
	var iDateR ;
	var iNotShow ;
	var iC ;
//	----------------------------
//	Initialisation des variables
//	----------------------------
	gConcertsNb    = 0 ;
	gConcertsRefNb = 0 ;
	gConcertActive = 1 ;
	if (gSConcert[0] != null)
	{
		gSConcert.sort(SORTConcertDate) ;
//		-----------------------------------
//		Remise à zéro des données formatées
//		-----------------------------------
		if (gConcert.length > 0)
		{
			for (iC = 0 ; iC < gConcert.length ; iC++) { gConcert[iC] = null ; }
		}
//		-----------------------------------------
//		Traitement & formatage des données brutes
//		-----------------------------------------
		for (iC = 0 ; iC < gSConcert.length ; iC++)
		{
			iNotShow = ((pMenu > 0) && (gSConcert[iC].nivc > 0)) ;
			if ((!iNotShow) && ((gl == 'fr') || ((gl == 'en') && (gSConcert[iC].en))))
			{
				iDate  = DATEFromServer(gSConcert[iC].date) ;
				iColor = COLORConcertDate(pMenu,iDate) ;
				iDateC = iDate[0] + '&nbsp;' + glMois[iDate[1]] + '&nbsp;' + iDate[2] ;
				iDateR = iDate[2] + ' ' + glMois[iDate[1]].toUpperCase() + '#' ;
				gConcert[gConcertsNb]  = HTMLBlock('div',((pMenu != -2) ? ('color: #' + iColor + ';') : ''),'','',false) ;
				gConcert[gConcertsNb] += HTMLBlock('span','letter-spacing: 0px;','','',false) ;
				gConcert[gConcertsNb] += iDateC.bold() ;
				gConcert[gConcertsNb] += ((gSConcert[iC].heure != '') && ((iColor != gColorBrun) || (pMenu < 1))) ? (',&nbsp;' + gSConcert[iC].heure.bold()) : '' ;
				gConcert[gConcertsNb] += HTMLCloseSpan ;
				gConcert[gConcertsNb] += HTMLBR ;
				gConcert[gConcertsNb] += HTMLBlock('span','letter-spacing: 1px;','','',false) ;
				gConcert[gConcertsNb] += FormatConcert1(iC,HTMLBR) ;
				gConcert[gConcertsNb] += HTMLBR ;
				gConcert[gConcertsNb] += FormatConcert2(iC,'') ;
				gConcert[gConcertsNb] += HTMLCloseSpan ;
				gConcert[gConcertsNb] += HTMLCloseDiv ;
				if ((pMenu == 3) && (iColor == gColorBrun) && (gSConcert[iC].ref))
				{
					gConcertRef[gConcertsRefNb]  = iDateR ;
					gConcertRef[gConcertsRefNb] += FormatConcert2(iC,' : ') ;
					gConcertRef[gConcertsRefNb] += FormatConcert1(iC,' / ') ;
					gConcertsRefNb++ ;
				}
				gConcertsNb++ ;
			}
		}
		InitConcertsRef() ;
	}
//	-------------------------------------------
//	Récupération de l'indice du concert courant
//	-------------------------------------------
	if (gParametres['concert'] != null)
	{
		gConcertActive = parseFloat(gParametres['concert']) ;
	}
	else
	{
		if (gConcertActive > gConcertsNb)
		{	
			gConcertActive = gConcertsNb ;
		}
	}
}
