   var currentForm = '';
   function Tunnel_Services_displayNewShippingAddress(param){
      $("input[@name=newShippingAddressAble]").val('true');
      $("input[@name=redirect]").val($("input[@name=redirectForNewAddress]").val());
      $('#chooseAddress_input').hide();
      $('#newShippingAddressLink').hide();
      $('#newDeliveryAddressLink').hide();
      $('#shipping_adresses').hide();
      $('#shipping_body').hide();
      //$('#selectAdress').hide();
      $('fieldset.livraison br').hide();
      $('#cancel').show();
      $('#service_gift').hide();
      $('#service_address').fadeIn();
      $('#shipping').hide();
      $('#billing').hide();
      if(param == '1') {
      	$('#shipping').show();
      	$("input[@name=newAddressType]").val(1);
      }
      if(param == '2') {
      	$('#billing').show();
      	$("input[@name=newAddressType]").val(2);
      }
    }

    function Tunnel_Services_cancelNewShippingAddress() {
      $("input[@name=redirect]").val($("input[@name=redirectForReview]").val());
      $("input[@name=newShippingAddressAble]").val('false');
      $('#chooseAddress_input').show();
      $('#newShippingAddressLink').show();
      $('#newDeliveryAddressLink').show();
      $('#selectAdress').show();
      $('fieldset.livraison br').show();
      $('#cancel').hide();
      $('#service_address').hide();
      $('#service_gift').fadeIn();
    }


/* These scripts used for makeup/bodycare/exclusivities pages */

 /**
  * Increases the index
  */
  function incIndex(){
    if (index < maxcnt ){
      index = index + 2;
    }
    showLinks();
    showPanes();
  }

 /**
  * Decreases the index
  */
  function decIndex(){
    if (index > 2 ){
      index = index - 2;
    }
    showLinks();
    showPanes();
  }

 /**
  * Shows or hides the products according to their index
  */
  function showPanes(){
    var panesToBeHidden = new Array();
    var panesToBeShowed = new Array();
    var panes = $("div.pane");
    var i;
    var currentPane;
    for(i=0; i<panes.size(); i++) {
      currentPane = panes.get(i);
      if ($(currentPane).attr("id") == index ||
          $(currentPane).attr("id") == index + 1){
        panesToBeShowed.push(currentPane);
      } else {
        panesToBeHidden.push(currentPane);
      }
    }

    $(panesToBeHidden).hide();
    $(panesToBeShowed).fadeIn("slow");
  }

 /**
  * Only shows the page links if necessary
  */
  function showLinks(){

    if (index >= maxcnt - 1) {
      $("a[@id=next]").hide();
    } else {
      $("a[@id=next]").show();
    }

    if (index == 1) {
      $("a[@id=prev]").hide();
    } else {
      $("a[@id=prev]").show();
    }
  }
  
  /**
  *	Module permettant de compter en temps réel le nombre de caractères dispos restants sur un textarea
  * - on passe en  paramètre l'id du textarea
  * - l'id du textarea nous permet de cibler un autre élément pour afficher le décompte. Suffixe : "CountCharsLeft"
  * - listenerInit (true par défaut) : un booléen indiquant si le keyup doit être initialisé pour compter les caractères, permet d'en définir un différent
  */
  function initCountArea(textAreaId, nbCharMax, listenerInit) {
  	var listener;
  	if (listenerInit == undefined) {
  		listener = true;
  	} else {
  		listener = listenerInit;
  	}
  	if ( $("#" + textAreaId).val() != null ) {
	  	$("#" + textAreaId + "CountCharsLeft").html(nbCharMax - $("#" + textAreaId).val().length);
	} else {
		$("#" + textAreaId + "CountCharsLeft").html(nbCharMax);
	}
	if ( listener ) {
	  	$("#" + textAreaId).keyup(function() {
			if ($(this).val().length > nbCharMax) {
				$(this).val($(this).val().substring(0,nbCharMax));
			}
			$("#" + textAreaId + "CountCharsLeft").html(nbCharMax - $(this).val().length );
		});
	}
  }