//var actionGlobale;
var status;
var lastMember = '';
var context;

function request2(url, module, action, parameters, contextVar) {
	context = contextVar;
	request(url, module, action, parameters);
}

function request(url, module, action, parameters) {
	actionGlobale = action;
	if (window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	} else {
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}

	xmlHttp.onreadystatechange = displayContents;
	xmlHttp.open("POST", url, true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	// xmlHttp.setRequestHeader("Content-length", parameters.length);
	// xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters + '&MODULE=' + module + '&ACTION=' + action);

}

function displayContents() {
	if(status == null || status == undefined){
		status = document.getElementById('status');
	}
	if (xmlHttp.readyState == 1) {
		status.innerHTML = 'En cours de chargement...';
	}
	if (xmlHttp.readyState == 2) {
		status.innerHTML = 'Chargé';
	}
	if (xmlHttp.readyState == 3) {
		status.innerHTML = 'Chargé 99%';
	}
	if (xmlHttp.readyState == 4) {

		if (xmlHttp.status == 200) {
			status.innerHTML = '';
		  textdoc = xmlHttp.responseText;
			xmldoc = xmlHttp.responseXML;
			//alert(actionGlobale + "-----"+textdoc);
			if (actionGlobale == 'ListActivity') {
				showActivities(textdoc);
			} else if (actionGlobale == 'LogoutMember') {
				showLogout(textdoc);
			} else if (actionGlobale == 'LoginMember') {
				showLoginResponse(textdoc);
			} else if (actionGlobale == 'CreateMember') {
				alert(textdoc);
			} else if (actionGlobale == 'ListNews') {
				showNewsResponse(textdoc);
				// onSuccess
				listMemberRequest();
			} else if (actionGlobale == 'CreateNews') {
				showCreateNewsResponse(textdoc);
			} else if (actionGlobale == 'CreateInfos') {
				showCreateInfosResponse(textdoc);
			} else if (actionGlobale == 'CreateActivity') {
					alert(textdoc);
			} else if (actionGlobale == 'CreateAlbum') {
				showCreateAlbumResponse(textdoc);
			} else if (actionGlobale == 'ListAlbum') {
				showAlbumResponse(textdoc);
			} else if (actionGlobale == 'ListPhoto') {
				//alert(textdoc);
				showPhotoResponse(textdoc);
			}else if (actionGlobale == 'ListMember' && context == 'news') {
				showMemberNews(textdoc);
			}else if (actionGlobale == 'ListMember') {
				//alert(textdoc);
				showMemberResponse(textdoc);
				displayLastMember();
				//showInfosResponse(textdoc);
			}else if (actionGlobale == 'ListRegularActivity') {
				showActivities(textdoc);
			}
		} else {
			alert('There was a problem with the request.');
		}
	}
}


function listActivity() {
	request('/controller/Front.php', 'activity', 'ListActivity', '');
}

function listRegularActivity() {
	request('/controller/Front.php', 'activity', 'ListRegularActivity', '');
}

function listAlbum() {
	request('/controller/Front.php', 'album', 'ListAlbum', '');
}

function listMemberRequest() {
	request('/controller/Front.php', 'member', 'ListMember', '');
}

function listMemberNewsRequest() {
	request2('/controller/Front.php', 'member', 'ListMember', '', 'news');
}

function listNewsRequest() {
	request('/controller/Front.php', 'news', 'ListNews', '');
}

function listInfosRequest() {
	request('/controller/Front.php', 'infos', 'ListInfos', '');
}

function showLogout(values) {
	document.getElementById("content").innerHTML = ('<div>' + values + '</div><br/>');
}

function logout() {
	request('/controller/Front.php', 'member', 'LogoutMember', '');
}

function login() {
	request('/controller/Front.php', 'member', 'LoginMember', 'email='
	    + document.getElementById('email').value + '&password='
	    + document.getElementById('password').value);
}

// Response
function showLoginResponse(values) {

	document.getElementById("content").innerHTML = ('<div>' + values + '</div><br/>');
	if (values.indexOf('Authentification') != -1) {
		showAdminMenus();
	}
}

function showPhotoResponse(values) {
	document.getElementById("photoDiv").style.display = 'none';
	document.getElementById("content").style.visibility = 'visible';
	document.getElementById("content").style.display = '';
	document.getElementById("content").innerHTML = (values);
	loadPhoto();
}

function showCreateNewsResponse(response){
	alert(response);
	document.getElementById("responseDiv").style.visibility='visible';
	document.getElementById("responseDiv").innerHTML = response;
}

function showCreateAlbumResponse(response){
	alert(response);
}

function showCreateInfosResponse(response){
	alert(response);
}

function showAdminMenus() {
  document.getElementById("photoDiv").style.display = 'none';
  document.getElementById("newsDiv").style.display = 'none';
	document.getElementById("content").style.display = '';
	document.getElementById("content").innerHTML = "<table><tr><td><a onclick=window.open('form/activite.php','')>Gérer les activités</a></td>"
	    + "<td><a onclick=window.open('form/news.php','')>Gerer les news</a></td>"
	    + "<td><a onclick=>Gerer les membres</a></td>" +
	    		"<td><a onclick=window.open('form/album.php','')>Gerer les albums</a></td></tr></table>";

}


function showLogin() {
	document.getElementById("photoDiv").style.display = 'none';
	document.getElementById("content").style.visibility = 'visible';
	document.getElementById("content").style.display = '';
	document.getElementById('content').innerHTML = "<div><table>"
	    + "<tr><td>Email</td><td><input type=text id=email size=30></td></tr>"
	    + "<tr><td>Password</td><td><input type=password id=password value='xxxxx'></td></td></tr>"
	    + "<tr><td>&nbsp;</td><td><input type=button value=Login onClick=login()></td></tr>"
	    + "</table></div>";
}

function showNewsResponse(response) {
	//alert(response);
	if (response != undefined) {
		var activites = response.split('<br/>');
		var html ='<table>';
		for ( var j = 0; j < activites.length - 1; j++) {
			var properties = activites[j].split('|');
			html += "<tr class=news-item><td><span class=date>"+properties[3]+"</span>&nbsp;<span class=newsTitle>"+properties[2]+"</span><br/><span class=newsText>"+properties[1]+"</span></td></tr>";
			
		}
		html +='</table>';
		document.getElementById("newsDiv").innerHTML = "<h4>DERNIÈRES News</h4>" + html;
	}
}

function showInfosResponse(response) {
	//alert(response);
	if (response != undefined) {
		var activites = response.split('<br/>');
		var html ='<table>';
		for ( var j = 0; j < activites.length - 1; j++) {
			var properties = activites[j].split('|');
			html += "<tr class=news-item><td><span class=date>"+properties[3]+"</span>&nbsp;<span class=newsTitle>"+properties[2]+"</span><br/><span class=newsText>"+properties[1]+"</span></td></tr>";
			
		}
		html +='</table>';
		document.getElementById("infosDiv").innerHTML = "<h4>Infos pratiques</h4>" + html;
	}
}

function showAlbumResponse(response){
	document.getElementById("photoDiv").style.display = 'none';
	document.getElementById("newsDiv").style.display = 'none';
	document.getElementById("content").style.visibility = 'visible';
	document.getElementById("content").style.display = '';
	var albums = response.split('<br/>');
	var html= '<table cellpadding=0>';
	for ( var j = 1; j < albums.length; j++) {		
		if(j==1 || (j-1)%3 == 0){
			html+= "<tr valign=top><td>";
		}else{
			html+= "<td>";
		}
		var properties = albums[j-1].split('|');
		html+= "<table cellpadding=0 width=180px>";
		html+= "<tr valign=top><td><font style='border:1px solid;font-weight:bold;font-size:17px;'>&nbsp;"+j+"&nbsp;</font></td><td>" + properties[4] + "<br/><a href=# onclick=listPhotos('" + properties[1] + "')><img src='images/"+properties[1]+"/thumb/"+properties[8]+"' title='Cliquez pour voir les photos' width=130px></a></td></tr>";
		html+= "<tr><td align=center colspan=2 style='font-size:10px;'><b>LIEU<br/></b>" + properties[3] + "</td></tr>";
		html+= "<tr><td style='font-size:10px;' colspan=2><b>" + properties[2] + "</b><br/>" + properties[7] + "</td></tr>"
		html+= "</table>";
		if(j==1 || j%3 != 0){
			html+= "</td>";
		}else if(j!=1 && j%3 == 0){			
			html+= "</td></tr>";
		}
	}
	html+= "<td></tr></table>";
	document.getElementById("content").innerHTML = html;
}

function showMemberResponse(response){	
	var albums = response.split('<br/>');
	var html= '<b>Membres inscrits ('+albums.length+')</b> : ';
	for ( var j = 0; j < albums.length - 1; j++) {
		var properties = albums[j].split('|');
		html+= properties[1] + " " + properties[2] + " - ";
		lastMember = (properties[1] + " " + properties[2]);
	}
	document.getElementById("memberDiv").innerHTML = ('<div>' + html + '</div><br/>');
}

function listPhotos(txPath){
	request('/controller/Front.php', 'photo', 'ListPhoto', 'path='+ txPath);
}

function doDisplay(id){
	//alert(document.getElementById('zone'+id).style.display == 'none');
	var show = (document.getElementById('zone'+id).style.display == 'none');
	document.getElementById('zone'+id).style.display= (show ? '': 'none');
	document.getElementById('showHide'+id).innerHTML="<a onclick=doDisplay(" + id + ");>"+ (show ? 'Masquer' : 'Voir détails')+"</a>";
	
}

function getImage(idCategorie, title){
	var image = '';
	if(idCategorie == 5){
	  image ="<img src='images/dmini.png' title='"+title+"'>";
	}else if(idCategorie == 0){
	  image ="<img src='images/tmini.png' title='"+title+"'>";
	}else if(idCategorie == 1){
	  image ="<img src='images/tmini.png' title='"+title+"'>";
	}else if(idCategorie == 2){
	  image ="<img src='images/damesmini.png' title='"+title+"'>";
	}else if(idCategorie == 3){
	  image ="<img src='images/hmini.png' title='"+title+"'>";
	}else if(idCategorie == 4){
	  image ="<img src='images/jmini.png' title='"+title+"'>";
	}
	return image;
}

function showActivities(response) {
	document.getElementById("photoDiv").style.display = "none";
	document.getElementById("content").style.visibility = 'visible';
	document.getElementById("content").style.display = '';
	document.getElementById("newsDiv").style.display='none';
	var activites = response.split('<br/>');
	var html= '';
	for ( var j = 0; j < activites.length - 1; j++) {
		var properties = activites[j].split('|');
		var image = getImage(properties[20],properties[17]);
		html+="<table ><tr valign=center>" + "<td width=50>" + image
    + "</td><td class=title>[" + properties[19]+"] " +properties[6] + " - "+properties[2] + "<br/><span class=fontBlue>" + properties[3]+"</span>"
    + "</td><td><div id='showHide" + properties[0] + "'><a onclick=doDisplay(" + properties[0] + ");>Voir détails</a></div></td></tr></table>" +
 		"<table id='zone" + properties[0] + "' style='display:none'><tr><td colspan=3 width=300>" + properties[1]+ "</td></tr>";

		if (properties[7] != '') {
			html += "<tr><td>Lieu de RDV</td><td>" + properties[7] + "</td></tr>" + "";
		}
		if (properties[8] != '') {
			html += "<tr><td>Horaire de RDV</td><td>" + properties[8] + "</td></tr>" + "";
		}
		if (properties[9] != '') {
			html += "<tr><td>Infos Age</td><td>" + properties[9] + "</td></tr>" + "";
		}
		if (properties[10] != '') {
			html += "<tr><td>Inscription</td><td>" + properties[10] + "</td></tr>";
		}
		if (properties[11] != '') {
			html += "<tr><td>Durée</td><td>" + properties[11] + "</td></tr>";
		}
		if (properties[12] != '') {
			html += "<tr><td>Matériel</td><td>" + properties[12] + "</td></tr>";
		}
		if (properties[13] != '') {
			html += "<tr><td>Meteo</td><td>" + properties[13] + "</td></tr>";
		}
		if (properties[14] != '') {
			html += "<tr><td>Remarque</td><td>" + properties[14] + "</td></tr>";
		}
		if (properties[15] != '') {
			html += "<tr><td>Prix</td><td>" + properties[15] + "</td></tr>";
		}
		if (properties[16] != '') {
			html += "<tr><td>Responsable(s)</td><td>" + properties[16] + "</td></tr>";
		}
		if (properties[18] != '') {
			html += "<tr><td>Divers</td><td>" + properties[18] + "</td></tr>";
		}
		html += "</table><br/>";
	}
	document.getElementById("content").innerHTML = (html);
}

function createActivity() {
	if(trim(document.getElementById('desc').value) == '' || 
			trim(document.getElementById('tit').value) == '' || 
			trim(document.getElementById('debut').value) == '' || 
			trim(document.getElementById('dtActivite').value) == ''){
		alert('Une activite doit omporter au moins une date debut, date activite, titre et description.');
		
	}else{
	request('/controller/Front.php', 'activity', 'CreateActivity', "desc="
	    + document.getElementById('desc').value + "&tit="
	    + document.getElementById('tit').value + "&st="
	    + document.getElementById('st').value + "&rdv="
	    + document.getElementById('rdv').value + "&insc="
	    + document.getElementById('insc').value + "&hor="
	    + document.getElementById('hor').value + "&age="
	    + document.getElementById('age').value + "&duree="
	    + document.getElementById('duree').value + "&mat="
	    + document.getElementById('mat').value + "&meteo="
	    + document.getElementById('meteo').value + "&prix="
	    + document.getElementById('prix').value + "&debut="
	    + document.getElementById('debut').value + "&fin="
	    + document.getElementById('fin').value + "&res="
	    + document.getElementById('res').value+"&rem="
		    + document.getElementById('rem').value+ "&dtActivite="
	    + document.getElementById('dtActivite').value+ "&cat="
	    + document.getElementById('cat').value+ "&dv="
	    + document.getElementById('dv').value+ "&per="
	    + document.getElementById('per').value);
	}
}
function createAlbum() {
	request('/controller/Front.php', 'album', 'CreateAlbum', "com="
	    + document.getElementById('com').value + "&nom="
	    + document.getElementById('nom').value + "&lieu="
	    + document.getElementById('lieu').value + "&path="
	    + document.getElementById('path').value + "&dtAlbum="
	    + document.getElementById('dtAlbum').value + "&debut="
	    + document.getElementById('debut').value+ "&fin="
	    + document.getElementById('fin').value);
}

function register() {
	if(document.getElementById('password').value != 	document.getElementById('passwordrepeat').value){
		alert('Les mots de passes ne sont pas identiques');
	}else if(document.getElementById('password').value.length <6){
		alert('Le mot de passe doit faire au moins 6 caractères');
	}else if(! validate(document.getElementById('email').value)){
		alert('Adresse email invalide');
	}else if(document.getElementById('an').value < 1900){
		alert('Année invalide');
	}else{
	  request('/controller/Front.php', 'member', 'CreateMember', "nom="
	    + document.getElementById('nom').value + "&prenom="
	    + document.getElementById('prenom').value + "&email="
	    + document.getElementById('email').value + "&password="
	    + document.getElementById('password').value + "&activation="
	    + document.getElementById('activation').value + "&sexe="
	    + (document.getElementById('m').checked ? 'm' : 'f') + "&jo="
	    + document.getElementById('jo').value+ "&mo="
	    + document.getElementById('mo').value+ "&an="
	    + document.getElementById('an').value);
	  document.getElementById('devenirMembreBtn').disable;
	}
}

function validate(email) {
  var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
  if(reg.test(email) == false) {
     return false;
  }else{
  	return true;
  }
}

function showUsResponse() {
	document.getElementById("content").style.visibility = 'visible';
	document.getElementById("newsDiv").style.display='';
	
	document.getElementById("content").style.display = '';
	document.getElementById("photoDiv").style.display = 'none';
	document.getElementById('content').innerHTML = " <div id=lastMember></div><br/>" +
			" <h2>Téléchargez le carnet des activités 2011 !</h2><br/>" +
			"<div style='vertical-align:top;'>Le carnet des activités 2011 est disponible en ligne, téléchargement : <a href=pdf/carnet2011.pdf title='Cliquez pour télécharger le carnet 2011' target=_new><img src=images/icone_PDF.png border=0></a></div>" +
                        "<iframe src='https://www.google.com/calendar/embed?src=fullytrotteurs%40gmail.com&ctz=Europe/Zurich' style='border: 0' width=700 height=300 frameborder=0 scrolling=no></iframe>" +
			"<p/><h2>Qui sommes-nous ?</h2>Rejoignez le Team des trotteurs : accédez à un panel d'activités axées sur les sports de course - marche, raquette, rando - dans un environnement riche en diversité et plaisirs."
	    + "<br/><br/>Quel que soit votre niveau, votre âge, il existe aux Trotteurs une section adaptée à votre profil.<br/><br/>"
	    + "<h3>Que peut vous apporter le club :</h3> "
	    + "<ul><li>Découvrez les activités de course à pied sur Fully et ses environs</li>"
	    + "  <li>Partagez des instants inoubliables à la cabane du Demècre.</li> "
	    + " <li>Participez à la grande course annuelle <b>Fully-Sorniot</b></li>"
	    + "<li>Restez informés tout au long de l'année des courses, sorties et autres événements</li></ul>";
}

function createNews(emails) {
	this.request('/controller/Front.php', 'news', 'CreateNews', "tit="+document.getElementById('tit').value+"&desc="
  + document.getElementById('desc').value + "&dtNews="
  + document.getElementById('dtNews').value+ "&debut="
  + document.getElementById('debut').value+ "&fin="
  + document.getElementById('fin').value+"&emails="+emails);
}

function createInfos() {
	this.request('/controller/Front.php', 'infos', 'CreateInfos', "tit="+document.getElementById('tit').value+"&desc="
  + document.getElementById('desc').value + "&dtInfos="
  + document.getElementById('dtInfos').value+ "&debut="
  + document.getElementById('debut').value+ "&fin="
  + document.getElementById('fin').value+"&emails="+emails);
}


function showRegister() {
	var content = document.getElementById("content");
	content.style.visibility = 'visible';
	content.style.display = '';
	document.getElementById("photoDiv").style.display = 'none';

	var html = "<table>"
	    + "<tr>"
	    + "<td colspan=2><b>Recevez les News en vous inscrivant ! <br/><br/>En vous inscrivant sur le site des Trotteurs, vous serez informés par email des courses, nouveaux événements, sorties et changement de programme."
	    + "<br/><br/> </b></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Nom</td>"
	    + "<td><input type='text' name='nom' id='nom'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Prénom</td>"
	    + "<td><input type='text' name='prenom' id='prenom'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Email</td>"
	    + "<td><input type='text' name='email' id='email' size=30></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Mot de passe (6 carac. mini.)</td>"
	    + "<td><input type='password' name='password' id='password'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Confirmer mot de passe</td>"
	    + "<td><input type=password id='passwordrepeat'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Sexe</td>"
	    + "<td>Masculin <input type='radio' name='sexe' value='m' id='m' checked> Feminin <input type='radio' name='sexe' value='f' id='f'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Date de naissance (jj/mm/aaaa)</td>"
	    + "<td><input type=text size=1 id=jo maxlength=2> (jj) <input type=text size=1 maxlength=2 id=mo>(mm) <input type=text size=1 maxlength=4 id=an>(aaaa)</td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td>Activer notification des News</td>"
	    + "<td><input type='checkbox' name='activation' checked id='activation'></td>"
	    + "</tr>"
	    + "<tr>"
	    + "<td colspan='2'>"
	    + "<input type='button' id='devenirMembreBtn' value='Devenir membre' onclick='register();'>"
	    + "</td>" + "</tr>" + "</table>";

	content.innerHTML = html;
}

function displayLastMember(){
	document.getElementById('lastMember').innerHTML = "<h2>Bienvenue à notre nouveau membre :</h2> <font color=red><b>" + lastMember + "</b></font>, nouveau membre des Trotteurs.ch !";
}

function init() {
	status = document.getElementById('status');
	displayMenuLeft();
	showUsResponse();
	listNewsRequest();
	//listInfosRequest();
	
}

function trim (myString){
  return myString.replace(/^\s+/g,'').replace(/\s+$/g,'')
} 

function loadPhoto(){
	$(document).ready(function(){
		$(".gallery:first a[rel^='prettyPhoto']").prettyPhoto({animationSpeed:'slow',slideshow:6000, autoplay_slideshow: true});
		$(".gallery:gt(0) a[rel^='prettyPhoto']").prettyPhoto({animationSpeed:'fast',slideshow:10000});

		$("#custom_content a[rel^='prettyPhoto']:first").prettyPhoto({
			custom_markup: '<div id="map_canvas" style="width:260px; height:265px"></div>',
			changepicturecallback: function(){ initialize(); }
		});

		$("#custom_content a[rel^='prettyPhoto']:last").prettyPhoto({
			custom_markup: '<div id="bsap_1237859" class="bsarocks bsap_d49a0984d0f377271ccbf01a33f2b6d6" style="height:260px"></div><div id="bsap_1251710" class="bsarocks bsap_d49a0984d0f377271ccbf01a33f2b6d6"></div>',
			changepicturecallback: function(){ _bsap.exec(); }
		});
	});
}
