// Determine browser.
var isMinIE4 = (document.all) ? 1 : 0;
var isMinIE5 = (isMinIE4 && navigator.appVersion.indexOf("5.") >= 0) ? 1 : 0;
var NS6 = (document.getElementById&&!document.all)
var isSubmitted;
isSubmitted = false;
document.write('<map name="cyberpresse"><area coords="21,7,151,47" alt="Cyberpresse.ca" href="http://www.cyberpresse.ca" target="blank_" /></map>');


function etireacc(){
	gauche1=getLayer('gauche');
	droit1=getLayer('droit');
	footer1=getLayer('footer');
	head=getLayer('header');
	var haut=getHeight();
		
	if(gauche1.offsetHeight>droit1.offsetHeight) droit1.style.height=gauche1.offsetHeight+"px";
	else gauche1.style.height=droit1.offsetHeight+"px";
	
	if((haut-(head.offsetHeight+footer1.offsetHeight))>gauche1.offsetHeight){
		gauche1.style.height=haut-(head.offsetHeight+footer1.offsetHeight+55)+"px";
	}

	gauche1.style.visibility="visible";
	droit1.style.visibility="visible";
	footer1.style.visibility="visible";
}

function etirepanier(){
	gauche1=getLayer('centre');
	footer1=getLayer('footer');
	head=getLayer('header');
	haut=getHeight();
	
	if((haut-(head.offsetHeight+footer1.offsetHeight))>gauche1.offsetHeight){
		gauche1.style.height=haut-(head.offsetHeight+footer1.offsetHeight+35)+"px";
	}


 footer1.style.visibility="visible";
}

function getHeight(){
	if(NS6) haut=window.innerHeight;
	else if (isMinIE5 && navigator.appVersion.indexOf("Macintosh") != -1) haut =document.body.offsetHeight-15;
	else haut = document.documentElement.clientHeight;
	
	return haut;
}

function getLayer(name) {
	if (isMinIE4)
		return eval('document.all.' + name);
	if (NS6)
		return document.getElementById(name);
	return null;
}


function display_menu(nom){
	layer= getLayer(nom)
	if(nom=="auteur" || nom=="titres") layer.className = "niveau2done";
	else layer.className = "done";
}

function changeimg(ajout){
	livre= getLayer('couverture');
	navigation = getLayer('navig');
	if(ajout=="+"){
		image++;
		livre.innerHTML='<a href="javascript:showimg();" id="couverturea"><img src="../img/livres/170px/'+tabimg[image-1]+'" width="170" alt="" border="0" /></a>';
		if(image+1>tabimg.length)navigation.innerHTML='<a href="javascript:changeimg(\'-\');"><img src="../img/fleche_precedent.gif" width="9" height="11" alt="" border="0"></a>&nbsp;Images '+ (image)+'  / '+tabimg.length +'&nbsp;<img src="../img/fleche_suivant_inactif.gif" width="9" height="11" alt="" border="0">';
		else{
		  navigation.innerHTML='<a href="javascript:changeimg(\'-\');"><img src="../img/fleche_precedent.gif" width="9" height="11" alt="" border="0"></a>&nbsp;Images '+ (image)+'  / '+tabimg.length +'&nbsp;<a href="javascript:changeimg(\'+\');"><img src="../img/fleche_suivant.gif" width="9" height="11" alt="" border="0"></a>';
		}
	}
	else{
		image--;
		if(image-1<=0){
			navigation.innerHTML='<img src="../img/fleche_precedent_inactif.gif" width="9" height="11" alt="" border="0">&nbsp;Images '+ (image)+'  / '+tabimg.length +'&nbsp;<a href="javascript:changeimg(\'+\');"><img src="../img/fleche_suivant.gif" width="9" height="11" alt="" border="0"></a>';
		}
		else{
			navigation.innerHTML='<a href="javascript:changeimg(\'-\');"><img src="../img/fleche_precedent.gif" width="9" height="11" alt="" border="0"></a>&nbsp;Images '+ (image)+'  / '+tabimg.length +'&nbsp;<a href="javascript:changeimg(\'+\');"><img src="../img/fleche_suivant.gif" width="9" height="11" alt="" border="0"></a>';
			
		}livre.innerHTML='<a href="javascript:showimg();" id="couverturea"><img src="../img/livres/170px/'+tabimg[image-1]+'" width="170" alt="" border="0" /></a>';
	}

}

function showimg(){
	bigimg= getLayer('grandeimg');
	acouverture= getLayer('couverturea');
	acouverture.blur();
	bimg=tabimg[image-1];
	rstsplit=bimg.split("_");
	bigimg.innerHTML='<div class="reduire"><a href="javascript:hideimg();">Cliquer pour r&eacute;duire</a></div><a href="javascript:hideimg();"><img src="../img/livres/300px/'+rstsplit[0]+'_300.jpg" width="300" alt="" border="0" /></a>';
	bigimg.style.display="block";
	//bigimg.focus();
}

function hideimg(){
	bigimg= getLayer('grandeimg');
	bigimg.innerHTML='';
	bigimg.style.display="none";
}

function displaynavig(){
	if (tabimg.length > 1)
	{
		document.write('<img src="../img/fleche_precedent_inactif.gif" width="9" height="11" alt="" border="0">&nbsp;');
		document.write('Images 1 / '+tabimg.length);
		document.write('&nbsp;<a href="javascript:changeimg(\'+\');"><img src="../img/fleche_suivant.gif" width="9" height="11" alt="" border="0"></a>')
	}
}

function Popup(name,urlstr,w,h) {
	popup2=window.open(urlstr,name,"focus=yes,location=no,toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,history=no,resizable=no,width="+w+",height="+h+"");
	popup2.focus();
}
isValidCreditCardNumber = function(cardNumber, cardType)
{
  var isValid = false;
  var ccCheckRegExp = /[^\d ]/;
  isValid = !ccCheckRegExp.test(cardNumber);
	if (cardNumber == 4508395784903826784)
		return true;
  if (isValid)
  {
    var cardNumbersOnly = cardNumber.replace(/ /g,"");
    var cardNumberLength = cardNumbersOnly.length;
    var lengthIsValid = false;
    var prefixIsValid = false;
    var prefixRegExp;

    switch(cardType.toLowerCase())
    {
      case "mastercard":
        lengthIsValid = (cardNumberLength == 16);
        prefixRegExp = /^5[1-5]/;
        break;

      case "visa":
        lengthIsValid = (cardNumberLength == 16 || cardNumberLength == 13);
        prefixRegExp = /^4/;
        break;

      case "amex":
        lengthIsValid = (cardNumberLength == 15);
        prefixRegExp = /^3(4|7)/;
        break;

      default:
        prefixRegExp = /^$/;
        alert("Card type not found");
    }

    prefixIsValid = prefixRegExp.test(cardNumbersOnly);
    isValid = prefixIsValid && lengthIsValid;
  }

  if (isValid)
  {
    var numberProduct;
    var numberProductDigitIndex;
    var checkSumTotal = 0;

    for (digitCounter = cardNumberLength - 1; 
      digitCounter >= 0; 
      digitCounter--)
    {
      checkSumTotal += parseInt (cardNumbersOnly.charAt(digitCounter));
      digitCounter--;
      numberProduct = String((cardNumbersOnly.charAt(digitCounter) * 2));
      for (var productDigitCounter = 0;
        productDigitCounter < numberProduct.length; 
        productDigitCounter++)
      {
        checkSumTotal += 
          parseInt(numberProduct.charAt(productDigitCounter));
      }
    }

    isValid = (checkSumTotal % 10 == 0);
  }

  return isValid;
}
function validateCreditCard()
{
	if(document.getElementById('modepaiement').value == 'credit')
	{ 
		if(isValidCreditCardNumber(document.getElementById('nocredit').value, document.getElementById('creditcard').options[document.getElementById('creditcard').selectedIndex].value))
		{
			if (isSubmitted == false)
			{
				isSubmitted = true;
				document.getElementById("boutonSubmit").disabled = true;
				document.formpaiement.submit();
			}
			isSubmitted = true;
		}
		else
		{ 
			document.getElementById('erreurcredit').innerHTML = 'Mauvais num&eacute;ro de carte de cr&eacute;dit.';
		}
	}
}

/****** Pour le fade ********/

function fade1(){
	if(noPanier!=0){
		var myColorFx2 = new Fx.Color('panierLien', 'color', {duration: 500});
		myColorFx2.custom('ffffff', 'BE6424');
		fadetimer1=setTimeout(fade2,1000)
	}
}
function fade2(){
	var myColorFx2 = new Fx.Color('panierLien', 'color', {duration: 500});
	myColorFx2.custom('BE6424', 'ffffff');
	fadetimer2=setTimeout(fade1,1000);
}

/****** Mets le focus dans le champ dont on recoit l'ID ********/

function focusNext(elmnt,nextId) {
	var valeur = elmnt.value;
	var suivant = document.getElementById(nextId);
	if (valeur.length==elmnt.maxLength) suivant.focus();
}

function resetAddress()
{
	//alert(this.document.getElementById('meme-adresse').checked);
	if(this.document.getElementById('meme-adresse').checked != true)
		return false;
		
	var pCountry = this.document.getElementById('paysfact').options[this.document.getElementById('paysfact').selectedIndex].value	
	changer_adresse(pCountry, 'livraison');
	switch(pCountry)
	{
		case 'CA':
			var regionPrefix = 'canada-';
			break;
		case 'US':
			var regionPrefix = 'usa-';
			break;
		default:
			var regionPrefix = 'autres-';
			break;
	}
	this.document.getElementById('nomliv').value = this.document.getElementById('nom').value;
	this.document.getElementById('prenomliv').value = this.document.getElementById('prenom').value;
	this.document.getElementById('noadresseliv').value = this.document.getElementById('noadressefact').value;
	this.document.getElementById('rueliv').value = this.document.getElementById('ruefact').value;
	this.document.getElementById('aptliv').value = this.document.getElementById('aptfact').value;
	this.document.getElementById(regionPrefix+'villeliv').value = this.document.getElementById(regionPrefix+'villefact').value;
	this.document.getElementById('paysliv').value = this.document.getElementById('paysfact').value;
	this.document.getElementById(regionPrefix+'provinceliv').value = this.document.getElementById(regionPrefix+'provincefact').value;
	this.document.getElementById(regionPrefix+'codepostalliv').value = this.document.getElementById(regionPrefix+'codepostalfact').value;
	return true;
}
function changer_type_client(pType)
{
	pType = parseInt(pType);
	if(pType > 0 && pType != 1 && pType != 5 )
	{
		this.document.getElementById('div-entreprise').style.display = 'block';
		switch(pType)
		{
			case 2:
				this.document.getElementById('label-entreprise').innerHTML = 'Nom de l\'organisme gouvernemental';
				break;
			case 3:
				this.document.getElementById('label-entreprise').innerHTML = 'Nom de l\'entreprise';
				break;
			case 4:
				this.document.getElementById('label-entreprise').innerHTML = 'Nom de l\'&eacute;tablissement d\'enseignement';
				break;
			
		}
		
	}
	else
		this.document.getElementById('div-entreprise').style.display = 'none';
}

/****** Modifie les informations demandées selon le pays choisi. ********/
function changer_adresse(pCountry, pType)
{
	if(pType == 'facturation')
	{
		var div_canada = this.document.getElementById('adresse-canada');
		var div_usa = this.document.getElementById('adresse-usa');
		var div_autres = this.document.getElementById('adresse-autres');
	}
	else
	{
		var div_canada = this.document.getElementById('adresse-liv-canada');
		var div_usa = this.document.getElementById('adresse-liv-usa');
		var div_autres = this.document.getElementById('adresse-liv-autres');
	}
	switch(pCountry)
	{
		case 'CA':
			div_canada.style.display = 'block';	
			div_usa.style.display = 'none';	
			div_autres.style.display = 'none';	
		 	break;
		case 'US':
			div_canada.style.display = 'none';	
			div_usa.style.display = 'block';	
			div_autres.style.display = 'none';	
		 	break;
		default:
			if(pCountry != '')
			{
				div_canada.style.display = 'none';	
				div_usa.style.display = 'none';	
				div_autres.style.display = 'block';
			}	
			break;
			
	}
	
}

function initRecherche(e) {
	var s = document.getElementById('search');
	s.onfocus = function() {
		if (this.value == this.defaultValue) { this.value = ''; }
	}
	s.onblur = function() {
		if (this.value == '') { this.value = this.defaultValue; }
	}
}
