/*	Affichage d'Alphonse sur mise à jour du panier	*/
var icon = false;
document.onclick = move;

function move(e){
	if(navigator.appName != "Microsoft Internet Explorer"){
		$("curseur").style.left = e.pageX + 10 + 'px';
		$("curseur").style.top = e.pageY + 10 + 'px';
	}
	else{
		if(document.documentElement.clientWidth > 0){
				$("curseur").style.left = 20 + event.x + document.documentElement.scrollLeft + "px";
				$("curseur").style.top = 10 + event.y + document.documentElement.scrollTop + "px";
	    }
			else{
				$("curseur").style.left = 20 + event.x + document.body.scrollLeft + "px";
				$("curseur").style.top = 10 + event.y + document.body.scrollTop + "px";
		  }
		/*
		$("curseur").style.left = window.event.x + 10 + 'px';
		$("curseur").style.top = window.event.y + 10 + 'px';
		*/
	}
}

function change(){
	if(icon == true){
		$("curseur").style.visibility = "hidden";
		icon = false;
		document.onmousemove = null;
	}
	else if(icon == false){
		$("curseur").style.visibility = "visible";
		icon = true;
		document.onmousemove = move;
	}
}


function update_panier(id, couleur, taille, action){
	if(action == 'add'){
		couleur = $('couleur').value;
		taille = $('tailles').options[$('tailles').selectedIndex].value;
		if(id == 0 || couleur == 0 || taille == 0){
			alert($('error').value);
			return;
		}
		else if(location.href.indexOf('shopping_bag') == -1){
			new Effect.ScrollTo('essentials');
		}
	}
	var xhr = getXhr();
	xhr.onreadystatechange = function() {ajax_fill_panier(xhr, action);};
	query = '/client/update_shopping_bag.php?id_produit=' + id + '&id_couleur=' + couleur + '&id_taille=' + taille + '&action=' + action;
	//on appelle le fichier
	xhr.open("GET", query, true);
	xhr.send(null);
	//on affiche le message d'attente
	change();
}

function doNothing(){
	return true;
}


function update_panier_final(id, couleur, taille, action){
	var xhr = getXhr();
	xhr.onreadystatechange = function() {ajax_fill_panier_final(xhr);};
	query = '/client/update_shopping_bag.php?id_produit=' + id + '&id_couleur=' + couleur + '&id_taille=' + taille + '&action=' + action;
	//on appelle le fichier
	xhr.open("GET", query, true);
	xhr.send(null);
	//on affiche le message d'attente
	change();
}


function show_panier(){
	var xhr = getXhr();
	xhr.onreadystatechange = function() {ajax_fill_panier(xhr);};
	query = '/client/update_shopping_bag.php?action=show';
	//on appelle le fichier
	xhr.open("GET", query, true);
	xhr.send(null);
	//on affiche le message d'attente
	change();
}

function ajax_fill_panier(xhr, action){
	if (xhr.readyState == 4){
		if(action == null) action = '';
		//	On masque le curseur d'attente
		change();
		
		var docXML = clean(xhr.responseXML);
		var panier = docXML.getElementsByTagName('panier');
		var produit = docXML.getElementsByTagName('produit');
		var id_produit = docXML.getElementsByTagName('id_article');
		var produit = docXML.getElementsByTagName('article');
		var photo = docXML.getElementsByTagName('photo');
		var id_couleur = docXML.getElementsByTagName('id_couleur');
		var couleur = docXML.getElementsByTagName('couleur');
		var id_taille = docXML.getElementsByTagName('id_taille');
		var taille = docXML.getElementsByTagName('taille');
		var quantite = docXML.getElementsByTagName('quantite');
		var urls = docXML.getElementsByTagName('url');
		var buffer = '';
		var nb_articles = 0;
		
		var deb = '<table border="0" cellspacing="2" cellpadding="2" style="width:98%;">';
		var fin = '</table>';
		
		if(panier.length > 0){
			for (i = 0; i<produit.length; i++){
				//	Variables
				var id, qty, id_color, id_size = 0;
				var picture, color, designation = '';
				id = id_produit.item(i).getAttribute('data');
				picture = photo.item(i).getAttribute('data');
				qty = quantite.item(i).getAttribute('data');
				color = couleur.item(i).getAttribute('data');
				id_color = id_couleur.item(i).getAttribute('data');
				size = taille.item(i).getAttribute('data');
				id_size = id_taille.item(i).getAttribute('data');
				designation = produit.item(i).getAttribute('data') +' '+ size +' '+ color ;
				url = urls.item(i).getAttribute('data');
				nb_articles += parseInt(qty);
				
				buffer += '<tr>'
							+ '<td><img src="images/produit/micro/'+ picture +'" alt="" /></td>'
							+ '<td>' + qty +'</td>'
							+ '<td><a href="'+ url +'">' + designation +'</a></td>'
							+ '<td><a href="javascript:;" onclick="update_panier('+ id +', '+ id_color +', '+ id_size +', \'remove\');"><img src="images/interface/suppress.gif" alt="" border="0" /></a></td>'
							+ '</tr>';
			}
		}
		$('panier_contenu').innerHTML = deb + buffer + fin;
		//$('nb_articles').innerHTML = nb_articles;
		$('nb_articles').value = nb_articles;
		if(action != null && action == 'add'){
			new Effect.Highlight($('nb_articles'));
			panier_voir();
			setTimeout(function(){new Effect.Highlight($('nb_articles'))}, 1000);
		}		
	}
}

function show_panier_final(){
	var xhr = getXhr();	
	xhr.onreadystatechange = function() {ajax_fill_panier_final(xhr);};
	query = '/client/update_shopping_bag.php?action=show';
	//on appelle le fichier
	xhr.open("GET", query, true);
	xhr.send(null);
	//	On affiche le curseur d'attente
	change();
}

function ajax_fill_panier_final(xhr){
	if (xhr.readyState == 4){
		//	On masque le curseur d'attente
		change();
		
		var docXML = clean(xhr.responseXML);
		var panier = docXML.getElementsByTagName('panier');
		var produit = docXML.getElementsByTagName('produit');
		var id_produit = docXML.getElementsByTagName('id_article');
		var produit = docXML.getElementsByTagName('article');
		var photo = docXML.getElementsByTagName('photo');
		var id_couleur = docXML.getElementsByTagName('id_couleur');
		var couleur = docXML.getElementsByTagName('couleur');
		var id_taille = docXML.getElementsByTagName('id_taille');
		var taille = docXML.getElementsByTagName('taille');
		var quantite = docXML.getElementsByTagName('quantite');
		var prix = docXML.getElementsByTagName('prix');
		var urls = docXML.getElementsByTagName('url');
		var buffer = '';
		var total = '';
		var prix_total = 0;
		var devise = $('devise').value;
		var nb_articles = 0;
		
		var deb = '<table border="0" cellspacing="4" style="width:98%;">';
		var fin = '</table>';
		
		if(panier.length > 0){
			for (i = 0; i<produit.length; i++){
				//	Variables
				var id, qty, id_color, id_size, price = 0;
				var picture, color, designation = '';
				id = id_produit.item(i).getAttribute('data');
				picture = photo.item(i).getAttribute('data');
				qty = quantite.item(i).getAttribute('data');
				color = couleur.item(i).getAttribute('data');
				id_color = id_couleur.item(i).getAttribute('data');
				size = taille.item(i).getAttribute('data');
				id_size = id_taille.item(i).getAttribute('data');
				price = prix.item(i).getAttribute('data');
				url = urls.item(i).getAttribute('data');
				designation = produit.item(i).getAttribute('data') +' '+ size +' '+ color ;
				
				prix_total += parseFloat(price);
				nb_articles += parseInt(qty);
				
				buffer += '<tr>'
							+ '<td width="5%" style="text-align:center;"><img src="images/produit/micro/'+ picture +'" alt="" /></td>'
							+ '<td class="td_center" width="10%">' + qty +'</td>'
							+ '<td><a href="'+ url +'">' + designation +'</a></td>'
							+'<td class="td_right">' + price + '</td>'
							+ '<td width="15%"><a class="bouton_plus" href="javascript:;" onclick="update_panier_final('+ id +', '+ id_color +', '+ id_size +', \'add\');">&nbsp;</a>'
							+ '<td width="15%"><a class="bouton_moins" href="javascript:;" onclick="update_panier_final('+ id +', '+ id_color +', '+ id_size +', \'sub\');">&nbsp;</a>'
							+ '<td width="10%" class="td_center"><a href="javascript:;" onclick="update_panier_final('+ id +', '+ id_color +', '+ id_size +', \'remove\');"><img src="images/interface/suppress.gif" alt="" border="0" /></a></td>'
							+ '</tr>';
			}
			total = '<tr><td colspan="3" class="td_right"><strong>TOTAL</strong></td><td>' 
							+'<strong>' + devise + ' ' + number_format(prix_total, 2, '.', ' ') + '</strong></td>'
							+'<td colspan="3">&nbsp;</td></tr>';
		}
		
		$('panier_contenu_table').innerHTML = deb + buffer + total + fin;
		$('nb_articles').value = nb_articles;
	}
}
