// JavaScript Document
function getXMLHttp()
{
  var xmlHttp;

  try
  {
    //Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
    //Internet Explorer
    try
    {
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
      try
      {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
      catch(e)
      {
        alert("Your browser does not support AJAX!");
        return false;
      }
    }
  }
  return xmlHttp;
}

function MakeRequest()
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
      HandleResponse(xmlHttp.responseText);
    }
  };

  xmlHttp.open("GET", "ajax.php", true); 
  xmlHttp.send(null);
}

/* 
 * Reordonner les produits
 * Fonction AJAX pour reordonner les produit dans la liste.
 * */
function orderprods( cat, prod, pos, total )
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			if( total-1 == pos )
			{
				HandleResponseOrderProdFinal(xmlHttp.responseText);
			}
			else
				HandleResponseOrderProd(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/administrator/orderprod.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("cat="+cat+"&prod="+prod+"&pos="+pos);
}

function HandleResponseOrderProd(response)
{
  document.getElementById('customtext').innerHTML += response;
}
function HandleResponseOrderProdFinal(response)
{
  document.getElementById('customtext').innerHTML += response+"ok";
  location.reload(true);
}

/* 
 * Reordonner les categories
 * Fonction AJAX pour reordonner les categories dans la liste.
 * */
function ordercats( cat, pos, total )
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			if( total-1 == pos )
			{
				HandleResponseOrderCatFinal(xmlHttp.responseText);
			}
			else
			{
				HandleResponseOrderCat(xmlHttp.responseText);
			}
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/administrator/ordercat.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("cat="+cat+"&pos="+pos);
}

/* 
 * Reordonner les categories du blog
 * Fonction AJAX pour reordonner les categories dans la liste.
 * */
function ordercatsnews( cat, pos, total )
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			if( total-1 == pos )
			{
				HandleResponseOrderCatFinal(xmlHttp.responseText);
			}
			else
			{
				HandleResponseOrderCat(xmlHttp.responseText);
			}
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/administrator/ordercatnews.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("cat="+cat+"&pos="+pos);
}
function HandleResponseOrderCat(response)
{
  document.getElementById('customtext').innerHTML += response;
}
function HandleResponseOrderCatFinal(response)
{
  document.getElementById('customtext').innerHTML += response+"ok";
  location.reload(true);
}

/* 
 * Reordonner les categories
 * Fonction AJAX pour reordonner les categories dans la liste.
 * */
function ordercollec( cat, pos, total )
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			if( total-1 == pos )
			{
				HandleResponseOrderColFinal(xmlHttp.responseText);
			}
			else
			{
				HandleResponseOrderCol(xmlHttp.responseText);
			}
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/administrator/ordercol.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("cat="+cat+"&pos="+pos);
}

function HandleResponseOrderCol(response)
{
  document.getElementById('customtext').innerHTML += response;
}
function HandleResponseOrderColFinal(response)
{
  document.getElementById('customtext').innerHTML += response+"ok";
  location.reload(true);
}

/* 
 * modifie le panier
 * Fonction AJAX pour modifier le panier.
 * */
function modifPanier( id, size, qte )
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseModifPanier(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/modifcart.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("id="+id+"&size="+size+"&qte="+qte);
}

function HandleResponseModifPanier(response)
{
  //document.getElementById('customtext').innerHTML += response;
  location.reload(true); 
}

/* 
 * modifie le panier
 * Fonction AJAX pour modifier le panier.
 * */
function emptyCart()
{
	var xmlHttp = getXMLHttp();
  
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseModifPanier(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/emptycart.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send();
}

function HandleResponseModifPanier(response)
{
  //document.getElementById('customtext').innerHTML += response;
  location.reload(true); 
}

/* 
 * modifie le panier
 * Fonction AJAX pour modifier le panier.
 * */
function setSize( size )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseSetSize(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/setsize.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("size="+size);
}

function HandleResponseSetSize(response)
{
  //document.getElementById('customtext').innerHTML += response;
  //location.reload(true); 
}

  /***************/
 /*	 CHECKOUT	*/
/***************/

//verifier le formulaire
function verifForm()
{
	var ok = true;
	var prenom = document.getElementById('firstname');
	var nom = document.getElementById('lastname');
	var mail = document.getElementById('email');
	var adresse = document.getElementById('address1');
	var cp = document.getElementById('zipcode');
	var ville = document.getElementById('city');
	var error = document.getElementById('error');
	
	var ok1 = verifNotEmpty(prenom);
	var ok2 = verifNotEmpty(nom);
	var ok3 = verifMail(mail);
	var ok4 = verifNotEmpty(adresse);
	var ok5 = verifNumeric(cp);
	var ok6 = verifNotEmpty(ville);
	var ok7 = verifMethod();
	
	ok = ( ok1 && ok2 && ok3 && ok4 && ok5 && ok6 && ok7 );
	
	return ok;
}
function verifMethod() 
{ 
	var field = document.forms['fmethode'];
	var radio = document.forms['fmethode'].elements['paymentmethod'];
	var selection = null;
	
	for (var i=0; i<radio.length;i++) 
	{
	    if (radio[i].checked) 
	    {
	       selection = i;
	    }
    }
	if(selection == null)	
	{
		field.style.backgroundColor = "#fdd";
		return false;
	}
	else					
	{
		if( radio[selection].value == 'autre' )
		{
			document.getElementById('precision').style.visibility = 'visible';
			document.getElementById('precisionlbl').style.visibility = 'visible';
			
			if( document.getElementById('precision').value == '' )
			{
				document.getElementById('precision').style.backgroundColor = "#fdd";
				return false;
			}
			else
			{
				setSess('methode_precision', document.getElementById('precision').value );
				document.getElementById('precision').style.backgroundColor = "#fff";
			}
		}
		else
		{
			document.getElementById('precision').style.backgroundColor = "#fff";
			document.getElementById('precision').style.visibility = 'hidden';
			document.getElementById('precisionlbl').style.visibility = 'hidden';
		}
		
		setSess('methode', radio[selection].value );
		field.style.backgroundColor = "#dfd";
		return true;
	}
}
function verifNotEmpty( field )
{
	var reg = new RegExp(" ","gi");
	if( field.value.replace(reg, "") != "" )	
	{
		field.style.backgroundColor = "#dfd";
		return true;
	}
	else
	{
		field.style.backgroundColor = "#fdd";
		return false;
	}
}

function verifNumeric( field )
{
	var reg = new RegExp("[0-9]","gi");
	if( reg.test(field.value) )
	{
		field.style.backgroundColor = "#dfd";
		return true;
	}
	else
	{
		field.style.backgroundColor = "#fdd";
		return false;
	}
}

function verifNumber( field )
{
	var num = field.value.replace(/\./g,'');
	if(!isNaN(num))
	{
		field.style.backgroundColor = "#dfd";
		return true;
	} 
	else
	{
		field.style.backgroundColor = "#fdd";
		return false;
	}
}

function verifMail( field )
{
	var adresse = field.value;
	var place = adresse.indexOf("@",1);
	var point = adresse.indexOf(".",place+1);
	
	if ((place > -1)&&(adresse.length >2)&&(point > 1))
	{
		field.style.backgroundColor = "#dfd";
		return true;
	}
	else
	{
		field.style.backgroundColor = "#fdd";
		return false;
	}
}

//enregistrer en variable session
function setSess( name, value )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseSetSess(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/setsession.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("name="+name+"&value="+value);
}
function HandleResponseSetSess(response)
{
	//alert(response);
  //document.getElementById('customtext').innerHTML += response;
  //location.reload(true); 
}

//calculShipping
function calculShiping( pays, poids, lang, prix )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseShiping(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/getshipprice.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("pays="+pays+"&poids="+poids+"&lang="+lang+"&prix="+prix);
}

function HandleResponseShiping(response)
{
	if( response != "true" )	
	{
		document.getElementById('error').innerHTML = response ;
	}
	else					
	{
		document.getElementById('error').innerHTML = '' ;
		location.reload(true); 
	}
}

//calulShippingFinal
function calulShippingFinal( poids, lang, prix )
{
	
	var liste = document.getElementById('country');
	var pays = liste.options[liste.selectedIndex].value;
	
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseShipingFinal(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/getshipprice.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("pays="+pays+"&poids="+poids+"&lang="+lang+"&prix="+prix);
}

function HandleResponseShipingFinal(response)
{
	if( response != "true" )	
	{
		document.getElementById('error').innerHTML = response ;
	}
	else			
	{
		document.getElementById('error').innerHTML = '' ;
		window.location = 'index.php?page=checkout&vue=1';
	}
}

function openBonCommande( lang ) 
{
    internalName = 'bon_commande';
    internalArgs = 'scrollbars,resizable,toolbar,status,location,width=770,height=880,left=50,top=50';
    popupWin = window.open('http://www.jonasbowman.com/bon_commande.php?lang='+lang,internalName,internalArgs);
    popupWin.focus();
}

/* Save paypal order */
function savePPOrder( ppform )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseSavePPOrder(xmlHttp.responseText, ppform );
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/saveCommande.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send();
}
function HandleResponseSavePPOrder( response, form )
{
	if( response != 0 )
	{
		//emptyCart();
		document.getElementById('invoiceid').value = response;
		
                document.forms['paypalform'].submit();
	}
	else
	{
		alert("erreur");
	}
}

/* Save other order */
function saveOtherOrder()
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseSaveOOrder(xmlHttp.responseText );
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/saveCommande.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send();
}
function HandleResponseSaveOOrder( response )
{
	if( response != '0' )
	{
		sendOOrderByMail( response );
	}
	else
	{
		alert("erreur retry later");
	}
}
function sendOOrderByMail( sale )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseSendCHKOrder( xmlHttp.responseText );
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/public/control/sendBonCommande.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send( 'sale='+sale );
}
function HandleResponseSendCHKOrder( response )
{
	if( response != '0' )
	{
		window.location = 'index.php?page=receipt';
	}
	else
	{
		alert("error retry later");
	}
}

/***********************/
/* FORMULAIRE PRODUITS */
/***********************/
function verifformproduit()
{
	var ok = true;
	var nomfr = document.getElementById('nomfr');
	var nomen = document.getElementById('nomen');
	var prix = document.getElementById('prix');
	var sizesfr = document.getElementById('sizesfr');
	var sizesen = document.getElementById('sizesen');
	var poidsp = document.getElementById('poidsp');
	
	var ok1 = verifNotEmpty(nomfr);
	var ok2 = verifNotEmpty(nomen);
	var ok3 = verifNotEmpty(prix) && verifNumber(prix);
	var ok4 = verifNotEmpty(sizesfr);
	var ok5 = verifNotEmpty(sizesen);
	var ok6 = verifNumber(poidsp);
	
	var erreur = "";
	
	if( !ok1 )	{
		nomfr.style.backgroundColor = "#fdd";
		erreur += "nom francais requis\n";
	}
	else		nomfr.style.backgroundColor = "#dfd";
	
	if( !ok2 )	{
		nomen.style.backgroundColor = "#fdd";
		erreur += "nom anglais requis\n";
	}
	else		nomen.style.backgroundColor = "#dfd";
	
	if( !ok3 )	{
		prix.style.backgroundColor = "#fdd";
		erreur += "prix requis\n";
	}
	else		prix.style.backgroundColor = "#dfd";
	
	if( !ok4 )	{
		sizesfr.style.backgroundColor = "#fdd";
		erreur += "tailles fr: mettre 0 si taille unique\n";
	}
	else		sizesfr.style.backgroundColor = "#dfd";
	
	if( !ok5 )	{
		sizesen.style.backgroundColor = "#fdd";
		erreur += "tailles en: mettre 0 si taille unique\n";
	}
	else		sizesen.style.backgroundColor = "#dfd";
	
	if( !ok6 )	{
		poidsp.style.backgroundColor = "#fdd";
		erreur += "poids packaging requis\n";
	}
	else		poidsp.style.backgroundColor = "#dfd";
	
	
	ok = ( ok1 && ok2 && ok3 && ok4 && ok5 && ok6 );
	if( !ok )
	{
		alert( "erreurs:\n"+erreur);
	}
	return ok;
}

 /**************************/
/* FORMULAIRE COLLECTIONS */
/**************************/
function verifformcollections()
{
	var ok = true;
	var nom = document.getElementById('nom');
	
	var ok1 = verifNotEmpty(nom);
	
	if( !ok1 )	
	{
		nom.style.backgroundColor = "#fdd";
		alert('rentrer un nom de collection');
	}
	else		nom.style.backgroundColor = "#dfd";
	
	ok = ( ok1 );
	
	return ok;
}


/******* COMMANDES */
function majEtatCommande( id, etat )
{
	var xmlHttp = getXMLHttp();
	
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState == 4)
		{
			HandleResponseChangeCommandState(xmlHttp.responseText);
		}
	};
	
	xmlHttp.open("POST", "http://www.jonasbowman.com/administrator/modifEtatCommande.php", true);
	xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xmlHttp.send("id="+id+"&etat="+etat);
}
function HandleResponseChangeCommandState(response)
{
	//alert(response);
  //document.getElementById('customtext').innerHTML += response;
	location.reload(true); 
}
