function MM_swapImgRestore() { // v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { // v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { // v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { // v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
 
function openPopup(psUrl, psTitle, psWidth, psHeight) {

    if( psWidth == null )
        psWidth = 700;
    if( psHeight == null )
        psHeight = 520;
    if( psTitle == null )
        psTitle = "POPUP";

    var lsOptions = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width="+(psWidth)+",height="+(psHeight)+",top=50,left=150";
    var name = psTitle;
    var popWin = window.open(psUrl, name, lsOptions);
    
    if (popWin)
        popWin.focus();   
}

function toggle(psMnem){
    var elt = $(".content_" + psMnem);
    var img = $("#img_" + psMnem);
    var bar = $("#bar_" + psMnem);
    if (!elt || !img)
    	return;
    elt.toggle();  
    if (bar) bar.toggle();  
    if(elt.is(":hidden")){
       img.attr("src", img.attr("closed"));
       closePaper(psMnem);
    }else{
       img.attr("src", img.attr("opened"));
       openPaper(psMnem);
    }
}

function initControls(defaultAccessCodeValue) {
	// clicking on the access code textbox resets its default value
	$("#FRedeemVoucher_PINcode").bind("click", function(e) {
		if ($(this).val() == defaultAccessCodeValue)
			$(this).val("");
	}).bind("blur", function(e) {
		if (!$(this).val().length)
			$(this).val(defaultAccessCodeValue);			
	});
}

function loadTabs(psItemsMnem) {
	loadPaperStates(psItemsMnem);
}

function loadPaperStates(psItemsMnem) {
	var sValue = readCookie("paperstate");
	var aOpenPapers = (sValue ? sValue.split(",") : new Array());
   
   if (!sValue){
	  var items = (psItemsMnem ? psItemsMnem.split(",") : new Array());
		for(var i=0; i<items.length; i++)
			toggle(items[i]);
   }
   
	for(var i=0; i<aOpenPapers.length; i++)
		toggle(aOpenPapers[i]);
}

function openPaper(psMnem) {
	var sValue = readCookie("paperstate");
	var aOpenPapers = (sValue ? sValue.split(",") : new Array());
	var bAppend = true;
	
	for(var i=0; i<aOpenPapers.length; i++) {
		if (aOpenPapers[i] == psMnem)
			bAppend = false;
	}
	
	if (bAppend)
		aOpenPapers.push(psMnem);

	createCookie("paperstate", aOpenPapers.join(","), 1);
}

function closePaper(psMnem) {
	var sValue = readCookie("paperstate");
	var aOpenPapers = (sValue ? sValue.split(",") : new Array());
	var aNewValues = new Array();

	for(var i=0; i<aOpenPapers.length; i++) {
		if (aOpenPapers[i] != psMnem)
			aNewValues.push(aOpenPapers[i]);
	}
	createCookie("paperstate", aNewValues.join(","), 1);
}

function confirmBuyExercise(psMessage, psUrl) {
    if (psUrl && confirm(psMessage))
        window.location.replace(psUrl);
}


/*
 * Cookies functions
 */

function createCookie(name,value,days) {
   name += (giUserExtId ? "-" + giUserExtId : "");
   if (days) {
      var date = new Date();
      date.setTime(date.getTime()+(days*24*60*60*1000));
      var expires = "; expires="+date.toGMTString();
   }
   else var expires = "";
   document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
   name += (giUserExtId ? "-" + giUserExtId : "");
   var nameEQ = name + "=";
   var ca = document.cookie.split(';');
   for(var i=0;i < ca.length;i++) {
      var c = ca[i];
      while (c.charAt(0)==' ') c = c.substring(1,c.length);
      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
   }
   return null;
}

function eraseCookie(name) {
   name += (giUserExtId ? "-" + giUserExtId : "");
   createCookie(name,"",-1);
}


// TOOLTIP
function hideToolTip( psDivId )
{
    var oDiv = document.getElementById( psDivId );
    if( oDiv )
        oDiv.style.display = "none";
}

function showToolTip( psDivId, poEvent)
{
    var oDiv = document.getElementById( psDivId );        
    if( oDiv ) {
        var posX, posY;    
        try{
            posX = poEvent.clientX + document.body.scrollLeft + 15;
            posY = poEvent.clientY + document.body.scrollTop;
        }catch(e){
            posX = poEvent.pageX + 15;
            posY = poEvent.pageY;
        }

        oDiv.style.left = posX  + "px";
        oDiv.style.top = posY + "px";
        oDiv.style.display = "block";
    }
}

function loadPage(psUrl) {
    if (psUrl)
        document.location.href = psUrl;
}


function submitCredit(noAmountMessage) {
	if(document.getElementById("SelAmount").value > 0)
		document.getElementById("FAddCredit").submit();
	else
		alert(noAmountMessage);
}

function submitRedeemVoucher(emptyPinCodeMessage) {
	if(document.getElementById("FRedeemVoucher_PINcode").value == "") {
		alert(emptyPinCodeMessage);
		return false;
	}
	return true;
}
