var selectedElement = 0;

function AffFicheCalendrier(nofiche, nbElementCalendrier, spLangue, npID) {
	var nlAffiches = 0;

	if(selectedElement == 0 || nofiche == 0){
		var llDefaut = false;
		for(i=0;i<agActivites.length;i++) {
			HideElement("ficheCalendrier"+agActivites[0][i]);
			HideElement("cellule"+agActivites[0][i]);
			DesactiverCellule(agActivites[0][i]);
			if (Elem("menu" + agActivites[0][i])){ 
				Elem("menu" + agActivites[0][i]).style.backgroundColor='';
				//if (nlAffiches < 4){
					ShowElement("cellule" + agActivites[0][i]);
					nlAffiches++;
				//}
				if (!llDefaut){
					ActiverCellule(agActivites[0][i], 1);
					llDefaut = true;
				}
			}
		}	
	}else if(IsVisible("cellule" + npID)){
		for(i=0;i<agActivites.length;i++) {
			if (Elem("cellule" + agActivites[0][i])) { Elem("cellule" + agActivites[0][i]).className='cellule'; }
			if (Elem("menu" + agActivites[0][i])) { Elem("menu" + agActivites[0][i]).style.backgroundColor=''; }
			HideElement("ficheCalendrier"+agActivites[0][i]);
		}
		ActiverCellule(npID, nofiche);
	}
	
	ActiverFleches(spLangue);	
}

function NbrElements() {
	var nlElements = 0;
	
	for(i=0;i<agActivites.length;i++) {
		if (Elem("menu" + agActivites[0][i])){
			nlElements++;
		}
	}

	return nlElements;
}

function SegmentSel(){	
	for(i=0;i<agActivites.length;i++) {
		if (Elem("menu" + agActivites[0][i]))
			return agActivites[1][i]; 
	}
	
	return "Bio";
}

function ChangerCellule(npMode, spLangue) {
	var nlPos = 0;
	var nlPosDebut = 0;
	var nlPosFin = agActivites.length-2;

	nlPos = CelluleSel();

	//ActiverCellule(agActivites[0][nlPos+npMode], selectedElement+npMode);
	ActiverCellule(agActivites[0][Suivant(nlPos, npMode)], selectedElement+npMode);
	DesactiverCellule(agActivites[0][nlPos]);
	ActiverFleches(spLangue);
	
	//for(i=0;i<agActivites.length;i++) {
	//	HideElement("cellule" + agActivites[0][i]);
	//}	
	
	AfficherCellules(nlPos, npMode);
}

function AfficherCellules(npPos, npMode){
	ShowElement("cellule" + agActivites[0][npPos]);
	
	if (npMode >0){
		switch (npPos){
			case 0:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,2)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,3)]);
				break;
			case 1:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,2)]);
				break;
				
			case NbrElements()-2:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-2)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos, 1)]);
				break;
				
			default:
				
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,2)]);
				break;
		}
	}
	else{
		switch (npPos){
			case 0:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,2)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,3)]);
				break;
			case 1:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,2)]);
				break;
		
			case NbrElements()-2:
				if (NbrElements() > 4){
					ShowElement("cellule" + agActivites[0][Suivant(npPos,-3)]);
					ShowElement("cellule" + agActivites[0][Suivant(npPos,-2)]);
					ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				}
				else{
					ShowElement("cellule" + agActivites[0][Suivant(npPos,-2)]);
					ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
					ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				}
				break;
			
			case NbrElements()-1:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-3)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-2)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				break;
			
			default:
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-2)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,-1)]);
				ShowElement("cellule" + agActivites[0][Suivant(npPos,1)]);
				break;
		}
	}
	
}

function ActiverCellule(npID, npSelection) {
	if (Elem("menu" + npID)){
		Elem("menu" + npID).style.backgroundColor='#f1faff'; 
		Elem("cellule" + npID).className='cellule on';
		ShowElement("ficheCalendrier" +npID);
		selectedElement = npSelection;
	}
}

function DesactiverCellule(npID) {
	if (Elem("menu" + npID)){
		Elem("menu" + npID).style.backgroundColor='#ffffff'; 
		if (Elem("cellule" + npID)) { Elem("cellule" + npID).className='cellule'; }
		HideElement("ficheCalendrier" + npID);
	}
}

function CelluleSel(){
	var nlPos = 0;
	var nlCompteur = 0;
	
	for(i=0;i<agActivites.length;i++) {
		if (Elem("cellule" + agActivites[0][i])){
			if(IsVisible("cellule" + agActivites[0][i])){
				if(Elem("cellule" + agActivites[0][i]).className=="cellule on"){		
					nlPos = nlCompteur;	
				}
				nlCompteur++;
			}
		}
	}
	
	return nlPos;
}

function ActiverFleches(spLangue){
	selectedElement = CelluleSel()+1;
	
	if (NbrElements() == 0)
		selectedElement = 0;
	
	if (spLangue != "fra")
		Elem("pageDe").value = selectedElement + " on " + NbrElements();
	else
		Elem("pageDe").value = selectedElement + " de " + NbrElements();
		
	if(selectedElement == 1){
		Elem("fleche-gauche").className = "fleche-gauche-gris";
		Elem("fleche-droite").className = "fleche-droite";
		Elem("fleche-gauche").href = "Javascript:none();";
		Elem("fleche-droite").href = "Javascript:ChangerCellule(1,'" + spLangue + "');"; 
	}else if(selectedElement == NbrElements()){
		Elem("fleche-gauche").className = "fleche-gauche";
		Elem("fleche-droite").className = "fleche-droite-gris";
		Elem("fleche-gauche").href = "Javascript:ChangerCellule(-1,'" + spLangue + "');";
		Elem("fleche-droite").href = "Javascript:none();";
	}else{
		Elem("fleche-gauche").className = "fleche-gauche";
		Elem("fleche-droite").className = "fleche-droite";
		Elem("fleche-gauche").href = "Javascript:ChangerCellule(-1,'" + spLangue + "');";
		Elem("fleche-droite").href = "Javascript:ChangerCellule(1,'" + spLangue + "');"; 
	}
	
	if (NbrElements() <= 1){
		Elem("fleche-gauche").className = "fleche-gauche-gris";
		Elem("fleche-droite").className = "fleche-droite-gris";
		Elem("fleche-gauche").href = "Javascript:none();";
		Elem("fleche-droite").href = "Javascript:none();";
	}
}

function Suivant(npPos, npDeplacement){
	var nlPos = 0;
	var nlCompteur = 1;
	
	if (npDeplacement > 0){
		nlCompteur = 1;
		for(i=npPos+1;i<agActivites.length;i++) {
			if (Elem("menu" + agActivites[0][i])){
				if (nlCompteur == npDeplacement){
					return i;
				}
				nlCompteur++;
			}
		}
	}
	else{
		nlCompteur = -1;
		for(i=npPos-1;i>=0;i--){
			if (Elem("menu" + agActivites[0][i])){
				if (nlCompteur == npDeplacement){
					return i;
				}
				nlCompteur--;
			}	
		}
	}
	
	//HideElement("cellule" + agActivites[0][npPos+npDeplacement]);
}
