/**
 * @encoding UTF-8
 */

/**
 * 
 * @param {Object} myElementId
 * @param {Object} myOptionValue
 */
function autoSelect(myElementId, myOptionValue) {
  myElement = document.getElementById(myElementId);
  myOptions = myElement.options;
  n = myOptions.length;
  for (i = 0; i < n; i++) {
    if (myOptions[i].value == myOptionValue) {
      myElement.selectedIndex = i;
      break;
    }
  }
}

/**
 * 
 */
function unFrame() {
  if (window!=top) { top.location=window.location; }
}

/**
 * 
 */
function doTheCookieStuff() {
  sp = getCookie('selected_panel');
  if (sp != null) {
    p.show(sp, document.getElementById(sp + '_cursor'));
  }
}

/**
 * 
 * @param {Object} ElementID
 * @param {Object} Path
 */
function setLoadingDiv(ElementID, Path, Message) 
{
	if(arguments.length <= 1 || arguments[1].length < 1)
	{
		Path = '../..';
	}
	if(arguments.length <= 2 || arguments[2].length < 1)
	{
		Message = '';
	}
	$(ElementID).innerHTML = '<img src="' + Path + '/shop/images/ajax_loading.gif" /> '+ Message;
}

/**
 * 
 * @param {Object} ElementID
 */
function unsetLoadingDiv(ElementID) 
{
  $(ElementID).innerHTML = '';
}

/**
 * 
 * @param {Object} ProductID
 * @param {Object} quantityToAdd
 * @param {Object} maxQuantity
 */
function setQuantity(ProductID, quantityToAdd, maxQuantity) {
	currentQuantity = parseInt(document.getElementById('inputId' + ProductID).value);
	futureQuantity  = currentQuantity + parseInt(quantityToAdd);
	if (futureQuantity > maxQuantity) {
		alert('Ce produit n\'est pas disponible en quantité plus élevée !');
	} else if (futureQuantity < 0) {
		alert('Vous ne pouvez pas disposer d\'un produit en quantité négative !');
	} else {
		document.getElementById('inputId' + ProductID).value = futureQuantity;
	}
}

/**
 * 
 * @param {Object} id
 */
function openClose(id)
{
	var o = document.getElementById(id);
	if(o)
	{
		if(o.style.display == 'none')
		{
			o.style.display = 'block';
		}
		else
		{
			o.style.display = 'none';
		}
	}
}

function openClose2(id)
{
	var o = document.getElementById(id);
	if(o)
	{
		if(o.style.display == 'block')
		{
			o.style.display = 'none';
		}
		else
		{
			o.style.display = 'none';
		}
	}
}


function showBubble(e){
	if (document.all) {
		e = event;
	}
	var obj  = document.getElementById('bubble');
	obj.style.display = 'block';
	var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
	if (navigator.userAgent.toLowerCase().indexOf('safari')>=0) {
		st = 0; 
	}
	var leftPos = e.clientX - 100;
	if (leftPos<0) {
		leftPos = 0;
	}
	obj.style.left = leftPos + 'px';
	obj.style.top = e.clientY - obj.offsetHeight -1 + st + 'px';
}

function showBubbleElement(e, elementID){
	if (document.all) {
		e = event;
	}
	var obj  = document.getElementById(elementID);
	obj.style.display = 'block';
	var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
	if (navigator.userAgent.toLowerCase().indexOf('safari')>=0) {
		st = 0; 
	}
	obj.style.left = e.clientX + 5 + 'px';
	obj.style.top = e.clientY + 5 + st + 'px';
}

function showBubbleElementLeft(e, elementID){
	if (document.all) {
		e = event;
	}
	var obj  = document.getElementById(elementID);
	obj.style.display = 'block';
	var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
	if (navigator.userAgent.toLowerCase().indexOf('safari')>=0) {
		st = 0; 
	}
	obj.style.left = e.clientX - 323 + 'px';
	obj.style.top = e.clientY + 10 + st + 'px';
}

function hideBubbleElement(elementID) {
	document.getElementById(elementID).style.display = 'none';
}
	
function hideBubble() {
	document.getElementById('bubble').style.display = 'none';
}

function recordNewsletter(subscribe) {
	if (subscribe) {
		new Ajax.Request('/ajax/logNewsletter.php', {
			method: 'get',
			parameters: 'c=y'});
		$('btn-nl').style.display = 'none';
		$('merci-nl').style.display = 'block';
		setTimeout("fade('inscription-nl')", 5000);
		setTimeout("$('inscription-nl').style.display='none'", 6500);
	} else {
		new Ajax.Request('/ajax/logNewsletter.php', {
			method: 'get',
			parameters: 'c=n'});
		fade('inscription-nl');
		setTimeout("$('inscription-nl').style.display='none'", 1500);
	}
	
}

var TimeToFade = 1000.0;

function fade(eid)
{
  var element = document.getElementById(eid);
  if(element == null)
    return;
   
  if(element.FadeState == null)
  {
    if(element.style.opacity == null
        || element.style.opacity == ''
        || element.style.opacity == '1')
    {
      element.FadeState = 2;
    }
    else
    {
      element.FadeState = -2;
    }
  }
   
  if(element.FadeState == 1 || element.FadeState == -1)
  {
    element.FadeState = element.FadeState == 1 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade - element.FadeTimeLeft;
  }
  else
  {
    element.FadeState = element.FadeState == 2 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade;
    setTimeout("animateFade(" + new Date().getTime() + ",'" + eid + "')", 33);
  } 
}

function animateFade(lastTick, eid)
{  
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
 
  var element = document.getElementById(eid);
 
  if(element.FadeTimeLeft <= elapsedTicks)
  {
    element.style.opacity = element.FadeState == 1 ? '1' : '0';
    element.style.filter = 'alpha(opacity = '
        + (element.FadeState == 1 ? '100' : '0') + ')';
    element.FadeState = element.FadeState == 1 ? 2 : -2;
    return;
  }
 
  element.FadeTimeLeft -= elapsedTicks;
  var newOpVal = element.FadeTimeLeft/TimeToFade;
  if(element.FadeState == 1)
    newOpVal = 1 - newOpVal;

  element.style.opacity = newOpVal;
  element.style.filter = 'alpha(opacity = ' + (newOpVal*100) + ')';
 
  setTimeout("animateFade(" + curTick + ",'" + eid + "')", 33);
}

function checkoutNewsletter()
{
	new Ajax.Request('/ajax/logNewsletter.php', {
		method: 'get',
		parameters: 'c=y'});
	fade('table-inscription-nl');
	setTimeout("$('table-inscription-nl').style.display='none'", 1500);
}
