/*
-------------------------------------------------------------------------
Function: VerifyEmptyField()
Description: Use this function to verify the compulsory fields of a submit 
			 form, use unlimited arguments, which are the id of the form fields.
--------------------------------------------------------------------------
*/
/*
function VerifyEmptyField(){
	var verified=true;
	for(i=0;i<arguments.length;i++){
		if(document.getElementById(arguments[i]).value==""){
			alert("The fields marked with * can not be empty!");
			verified=false;
			break;
		}
	}
	return verified;
}*/

function VerifyEmptyField()
{
	var verified=true;
	for(i=0;i<arguments.length;i++)
	{
		if(document.getElementById(arguments[i]).value=="")
		{
			alert("The fields marked with * can not be empty!");
			verified=false;
			return false;//break;
		}
	}
	//return verified;
	setPowerLevelCookie('startLevel','endLevel');
	location.href="power-leveling.html";
}

//Skill 02/27/2009
function VerifyEmptyFieldSkill()
{
	var verified=true;
	for(i=0;i<arguments.length;i++)
	{
		if(document.getElementById(arguments[i]).value=="")
		{
			alert("The fields marked with * can not be empty!");
			verified=false;
			return false;
		}
	}
	//return verified;
	setProfessionCookie('txt_pfName','txt_pfPrice');
	location.href="power-leveling.html";
}

/*
-------------------------------------------------------------------------
Function: VerifyPassword()
Description: Verify password for registration forms to see if both passwords
			 are the same.
--------------------------------------------------------------------------
*/
function VerifyPassword(password01,password02){
	var pass01=document.getElementById(password01);
	var pass02=document.getElementById(password02);
	if(pass01.value!=pass02.value){
		alert("Passwords entered are not the same, please retype them!");
		pass01.select();
		return false;
	}
	return true;
}

/*
-------------------------------------------------------------------------
Function: ToggleSection(sectionId1,sectionId2)
Description: Toggle between two section
--------------------------------------------------------------------------
*/
function ToggleSection(sectionId1,sectionId2)
{
	if(document.getElementById(sectionId1).style.display=='block')
	{
		document.getElementById(sectionId1).style.display='none';
		document.getElementById(sectionId2).style.display='block';
	}
	else
	{
		document.getElementById(sectionId1).style.display='block';
		document.getElementById(sectionId2).style.display='none';
	}
}


/*
-------------------------------------------------------------------------
Function: Estimate(sLevel,eLevel)
Description: Do the estimate of the quote.
--------------------------------------------------------------------------
*/
function Estimate(sLevel,eLevel,price, hour){
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	if( hours[e]!=null && hours[s]!=null ){
		if(e-s>0 && prices[e]>prices[s] && hours[e]>hours[s]){
			document.getElementById(price).value="$"+roundNumber((prices[e]-prices[s]),2);
			document.getElementById(hour).value=(hours[e]-hours[s])+" hours";
		}else{
			alert("Please enter the correct levels");
		}
	}else{
		alert("Sorry, the level you requested doesn't exist(not defined). Please try another level!");
	}
}

/*-----------------------------------------------------------------------*/
function Estimate(sLevel,eLevel,price, hour, _desc, _rate){
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	if( hours[e]!=null && hours[s]!=null ){
		if(e-s>0 && prices[e]>prices[s] && hours[e]>hours[s]){
			document.getElementById(price).value=_desc+roundNumber(_rate*(prices[e]-prices[s]),2);
			document.getElementById(hour).value=(hours[e]-hours[s])+" hours";
		}else{
			alert("Please enter the correct levels");
		}
	}else{
		alert("Sorry, the level you requested doesn't exist(not defined). Please try another level!");
	}
}


/*--------------------------------Add: 01/13/2009----------------------------------*/

//onload Level
function levelLoad(sLevel)
{
    if(document.getElementById(sLevel)!=null && hourss[1]!=null)
    {
        for(var i=1;i<hourss[1].length-1;i++)
        {
            var obj=document.createElement("OPTION");
			obj.value=i;
			obj.text=i;
			document.getElementById(sLevel).options.add(obj);
        }
    }
}

//select start level
function Estimate_Sel(sLevel, eLevel, price, hour)
{
	var s=parseInt(document.getElementById(sLevel).value);
	document.getElementById(eLevel).options.length=0;
	document.getElementById(eLevel).options[0]=new Option("---");
	document.getElementById(price).value="";
	document.getElementById(hour).value="";
	
	if(hourss[1][s]!=null)
	{
		for(var i=s+1;i<hourss[1].length;i++)
		{
			var _option=document.createElement("OPTION");
			_option.value=i;
			_option.text=i;
			document.getElementById(eLevel).options.add(_option);
		}
	}
}

//1-80 08/20/2009
function Estimate_Eels(sLevel, eLevel, price, hour)
{
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	document.getElementById(price).value="";
	document.getElementById(hour).value="";
	
	var _price=0;
	var _hour=0;
	
	if(e>s)
	{
		//price
		for(i=s;i<=e;i++)
		{
			_price+=prices[1][i]; 
		}
		
		//Hours
	    	for(i=s;i<=e;i++)
	    	{
	        	_hour+=hourss[1][i];
	    	}
	    
	    	document.getElementById(price).value=_price.toFixed(2);
		document.getElementById(hour).value=Math.ceil(_hour/24);
	}
	else
	{
		alert("Please enter the correct levels. ");
	}
}


//1-80  2009-04-14
function Estimate_Eel(sLevel, eLevel, price, hour)
{
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	document.getElementById(price).value="";
	document.getElementById(hour).value="";
	
	var _price=0;
	var _hour=0;
	var _sL70=70;
	var _sL60=60;
	var _sL40=40;
	var _sL20=20;
	
	if(e>s)
	{
	    //Prices
	    if(s>=_sL70)
	    {
	        _price=parseFloat(levelPrice70_80(s, e, 7.0)); //10.9   7.5
	    }
	    else if(s>=_sL60)
	    {
	        if(e>_sL70)
	        {
	            _price=parseFloat(levelPrice60_70(s, _sL70, 7.0));  //9.5   7.5
	            _price+=parseFloat(levelPrice70_80(_sL70, e, 7.0));    //10.9   7.5
	        }
	        else
	        {
	            _price=parseFloat(levelPrice60_70(s, e, 7.0));  //9.5   7.5
	        }
	    }
	    else if(s>=_sL40)
	    {
	        if(e>_sL70)//
	        {
	            _price=parseFloat(levelPrice40_60(s, _sL60, 6.0));  //8.0   7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 7.0));    //9.5    7.5
	            _price+=parseFloat(levelPrice70_80(_sL70, e, 7.0)); //10.9  7.5
	        }
	        else if(e>_sL60)//
	        {
	            _price=parseFloat(levelPrice40_60(s, _sL60, 6.0));  //8.0   7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, e, 7.0)); //9.5   7.5
	        }
	        else
	        {
	            _price=parseFloat(levelPrice40_60(s, e, 7.5));  //8.0
	        }
	    }
	    else if(s>=_sL20)
	    {
	        if(e>_sL70)//
	        {
	            _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0   7.0
	            _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0  7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 7.5)); //9.5   8.5 8.0 
	            _price+=parseFloat(levelPrice70_80(_sL70, e, 7.5));    //10.9  7.0  8.0
	        }
	        else if(e>_sL60)//
	        {
	            _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0  7.0
	            _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0   7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, e, 8.0)); //9.5  8.5  7.5 8.5
	        }
	        else if(e>_sL40)//
	        {
	            _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0   7.0
	            _price+=parseFloat(levelPrice40_60(_sL40, e, 6.0)); //8.0  7.0
	        }
	        else
	        {
	            _price=parseFloat(levelPrice20_40(s, e, 7.5));  //8.0
	        }
	    }
	    else if(s>0)
	    {
	        if(e>_sL70)
	        {
	            _price=parseFloat(levelPrice20_40(_sL20, _sL40, 6.0));  //8.0
	            _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0   7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 6.0)); //9.5   7.5
	            _price+=parseFloat(levelPrice70_80(_sL70, e, 6.0));    //10.9   7.5
	            //_price+=1;
	        }
	        else if(e>_sL60)
	        {
	            _price=parseFloat(levelPrice20_40(_sL20, _sL40, 7.0)); //8.0
	            _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.5)); //8.0   7.0
	            _price+=parseFloat(levelPrice60_70(_sL60, e, 7.0)); //9.5   7.5
	            _price+=4;
	        }
	        else if(e>_sL40)
	        {
	            _price=parseFloat(levelPrice20_40(_sL20, _sL40, 6.0));  //8.0
	            _price+=parseFloat(levelPrice40_60(_sL40, e, 6.0)); //8.0
	            _price+=3;
	        }
	        else if(e>_sL20)
	        {
	            _price=parseFloat(levelPrice20_40(_sL20, e, 7.5));  //8.0
	            _price+=4;
	        }
	        else
	        {
	            _price=7.5;   //8
	        }
	    }
	    
	    //Hours
	    for(i=s;i<=e;i++)
	    {
	        _hour+=hourss[1][i];
	    }
	    
	    document.getElementById(price).value=_price.toFixed(2);   //roundNumber(_price,2)
		document.getElementById(hour).value=Math.ceil(_hour/24);
	}
    else
	{
		alert("Please enter the correct levels. ");
	}
}

//21-40 02/15/2009
function levelPrice20_40(sLevel, eLevel, _price)
{
    var returnPrice=0;
    var _lev=14;
    //var _price=8;
    var _priceAdd=1;
    
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)>_lev)
        {
            returnPrice=_price+parseFloat(parseInt(eLevel-sLevel-_lev)*_priceAdd);
        }
        else
        {
            returnPrice=_price;
        }
    }
    return returnPrice;
}

//41-60 02/15/2009
function levelPrice40_60(sLevel, eLevel, _price)
{
    var returnPrice=0;
    var _lev=5;
    //var _price=8;
    var _priceAdd=1;
    
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)>_lev)
        {
            returnPrice=_price+parseFloat(parseInt(eLevel-sLevel-_lev)*_priceAdd);
        }
        else
        {
            returnPrice=_price;
        }
    }
    return returnPrice;
}

//61-70 02/15/2009
function levelPrice60_70(sLevel, eLevel, _price)
{
    var returnPrice=0;
    //var _price=9.5;
    
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)==10)
        {
            returnPrice=_price+(3*1+3*2+3*3+1*4);
        }
        else if(parseInt(eLevel-sLevel)>6)
        {
            returnPrice=_price+(3*1+3*2+(parseFloat(eLevel-sLevel)-6)*3);
        }
        else if(parseInt(eLevel-sLevel)>3)
        {
            returnPrice=_price+(3*1+(parseFloat(eLevel-sLevel)-3)*2);
        }
        else
        {
            returnPrice=_price+(parseFloat(eLevel-sLevel)*1);
        }
    }
    return returnPrice;
}
	
//71-80 04/13/2009
function levelPrice70_80(sLevel, eLevel, _price)
{
    var returnPrice=0;
    //var _price=10.9;
    
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)==10)
        {
            returnPrice=_price+(1*1+3*2+5*4+1*5);
        }
        else if(parseInt(eLevel-sLevel)>4)
        {
            returnPrice=_price+(1*1+3*2+(parseFloat(eLevel-sLevel)-4)*4);
        }
        else if(parseInt(eLevel-sLevel)>1)
        {
            returnPrice=_price+(1*1+(parseFloat(eLevel-sLevel)-1)*2);
        }
        else
        {
            returnPrice=_price+1;
        }
    }
    return returnPrice;
}


//select end level
/*function Estimate_Eel(sLevel, eLevel, price, hour)
{
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	document.getElementById(price).value="";
	document.getElementById(hour).value="";
	
	var _startLevel=40;
	var _endLevel=60;
	var _sLevel=70;
	var _price=0;
	var _hour=0;
    
    if(hourss[1][e]!=null && hourss[1][s]!=null)
    {
        if(e-s>0 && prices[1][e]>0 && hourss[1][e]>0)
        {
			//get price and hours			
			if(e>_endLevel)
			{
			    if(s<_startLevel)
			    {
			        var _eCount=e>72 ? _sLevel : 72;
			        
			        //level:1-60
			        for(i=s+1;i<=_endLevel && i<prices[1].length;i++)
			        {
			            _price+=prices[1][i];
				        _hour+=hourss[1][i];
			        }
			        
			        //level:41-80
			        for(i=_endLevel+1;i<=e && prices[2][e]>0;i++)
			        {
			            if(i<=_eCount)
			                _price+=prices[2][i];
				        _hour+=hourss[2][i];
			        }
			        
			        _price+=parseFloat(levelPrice(_eCount, e));
			    }
			    else
			    {
			        var _eCount=s<_sLevel&&e<=72 ? 72: _sLevel;
			        
			        //level:41-80
			        for(i=s+1;i<=e && prices[2][e]>0;i++)
			        {
			            if(i<=_eCount)
			                _price+=prices[2][i];
				        _hour+=hourss[2][i];
			        }
			        
			        var sL=s>_sLevel ? s : _eCount;
			        _price+=parseFloat(levelPrice(sL, e));
			    }
			}
			else
			{
			    //level:1-60
			    for(i=s+1;i<=e && i<prices[1].length;i++)
			    {
				    _price+=prices[1][i];
				    _hour+=hourss[1][i];
			    }
			}
			
			document.getElementById(price).value=roundNumber(_price,2);
			document.getElementById(hour).value=Math.ceil(_hour/24);
        }
        else
		{
			alert("Please enter the correct levels");
		}
    }
}*/

//70-80 02/13/2009
function levelPrice(sLevel, eLevel)
{
    var returnPrice=0;
    var _price=10.9;
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)==10)
        {
            returnPrice=_price+(1*1+3*2+5*4+1*5);
        }
        else if(parseInt(eLevel-sLevel)>4)
        {
            returnPrice=_price+(1*1+3*2+(parseFloat(eLevel-sLevel)-4)*4);
        }
        else if(parseInt(eLevel-sLevel)>1)
        {
            returnPrice=_price+(1*1+(parseFloat(eLevel-sLevel)-1)*2);
        }
        else
        {
            returnPrice=_price+1;
        }
    }
    return returnPrice;
    
/*
    var returnPrice=0;
    var _lev=3;
    var _price=14.99;   //13.99
    var _priceAdd=4;  //3.5
    
    if(eLevel>sLevel)
    {
        if(parseInt(eLevel-sLevel)>_lev)
        {
            returnPrice=_price+parseFloat(parseInt(eLevel-sLevel-_lev)*_priceAdd);
        }
        else
        {
            returnPrice=_price;
        }
    }
    return returnPrice;*/
}

//load page	08/20/2009
function levelSelect(sLevel, eLevel, price, hour)
{
    document.getElementById(sLevel).value=1;
    Estimate_Sel(sLevel, eLevel, price, hour);
    document.getElementById(eLevel).value=80;
    Estimate_Eels(sLevel, eLevel, price, hour);
	
}


/*------------------------- Add: 02/15/2008 Update: 01/13/2009 -------------------------------------*/
function Estimates(sLevel, eLevel, price, hour, details, gLevel)
{
	var s=parseInt(document.getElementById(sLevel).value);
	var e=parseInt(document.getElementById(eLevel).value);
	var _startLevel=40;
	var _endLevel=60;
	var _price=0;
	var _hour=0;
		
    if(hourss[1][e]!=null && hourss[1][s]!=null)
    {
        if(e-s>0 && prices[1][e]>0 && hourss[1][e]>0)
        {
            var mark="";
			var startNum=0;
			var goldNum=0;
			var n=30;
			
			//get startNum
			for(i=1;i<goldss[1].length;i++)
			{
				if(i>s && i<=e)
				{
					goldNum+=goldss[1][i];
					if(startNum==0 && goldNum>0)
					{
						startNum=i-1;
					}
				}
			}
			if(startNum==0 && goldss[1][e+1]!=null && goldss[1][e+1]>0)
			{
				startNum=e;
			}
			
			//get mark
			if(goldNum>0)
			{
				mark="1."+goldNum+"G for free.<br>";
			}
			
			if(mark=="")
			{
				if(startNum==0 || (startNum>0 && s>n))
				{
					mark+="1.Keep all the drops in your characters.<br>";
				}
				else
				{
					mark="1.Lv"+startNum+" Mount for free.<br>";
				}
				mark+="2.Complete your class quests.<br>3.Open your current flight paths.<br>";
			}
			else
			{
				if(s<=n)
				{
					mark+="2.Lv"+startNum+" Mount for free.<br>";
					mark+="3.Complete your class quests.<br>4.Open your current flight paths.<br>";
				}
				else
				{
					mark+="2.Complete your class quests.<br>3.Open your current flight paths.<br>";
				}
			}
			
			document.getElementById(details).innerHTML=mark;
			
			//get price and hours			
			if(e>_endLevel)
			{
			    if(s<_startLevel)
			    {
			        //level:1-60
			        for(i=s+1;i<=_endLevel && i<prices[1].length;i++)
			        {
			            _price+=prices[1][i];
				        _hour+=hourss[1][i];
			        }
			        
			        //level:41-80
			        for(i=_endLevel+1;i<=e && prices[2][e]>0;i++)
			        {
			            _price+=prices[2][i];
				        _hour+=hourss[2][i];
			        }
			    }
			    else
			    {
			        //level:41-80
			        for(i=s+1;i<=e && prices[2][e]>0;i++)
			        {
			            _price+=prices[2][i];
				        _hour+=hourss[2][i];
			        }
			    }
			}
			else
			{
			    //level:1-60
			    for(i=s+1;i<=e && i<prices[1].length;i++)
			    {
				    _price+=prices[1][i];
				    _hour+=hourss[1][i];
			    }
			}
			document.getElementById(price).value="$"+roundNumber(_price,2);
			document.getElementById(hour).value=_hour+" hours";
			document.getElementById(gLevel).value=goldNum;
        }
        else
		{
			alert("Please enter the correct levels");
		}
    }
    else
	{
		alert("Sorry, the level you requested doesn't exist(not defined). Please try another level!");
	}
}


// rounds number to X decimal places, defaults to 2
function roundNumber(number,X) {
    X = (!X ? 2 : X);
    return Math.round(number*Math.pow(10,X))/Math.pow(10,X);
}

/*
-------------------------------------------------------------------------
Function: ResetValues()
Description: Reset the specified fields
--------------------------------------------------------------------------

function ResetValues(){
	for(i=0;i<arguments.length;i++)
		document.getElementById(arguments[i]).value="";
}*/
function ResetValues(){
	for(i=0;i<arguments.length;i++)
		document.getElementById(arguments[i]).value="";
	document.getElementById(arguments[arguments.length-1]).innerHTML="";
}

/*
-------------------------------------------------------------------------
Function:MM_validateForm()
Description:Check text
-------------------------------------------------------------------------
*/
function MM_findObj(n, d) { 
  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_validateForm() { 
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);	//alert('Please enter the character name in the character box!');
  document.MM_returnValue = (errors == '');
  
  if(errors=="" && document.getElementById("confirmPass")!=undefined && document.getElementById("confirmPass").value!=document.getElementById("loginPass").value){
  	alert('The password must be the same!');
  	document.MM_returnValue=false;
  }
}


/*
Function: setTradeInfo() 
Function: setTradeTime()
Description: Set TradeTime
*/

	
function setTradeInfo(rb1, rb2, rb3)
{
	document.getElementById("rb_Trade"+rb1).checked="checked";
	document.getElementById("t_"+rb1).style.display="";
	document.getElementById("rb_Trade"+rb2).checked="";
	document.getElementById("t_"+rb2).style.display="none";
	document.getElementById("rb_Trade"+rb3).checked="";
	document.getElementById("t_"+rb3).style.display="none";
}

function setTradeTime(rt1, rt2, t, dis)
{
	document.getElementById(rt1).checked="checked";
	document.getElementById(rt2).checked="";
	document.getElementById(t).value="";
	document.getElementById(t).disabled=dis;
}

function checkTrade()
{
	if(document.MM_returnValue)
	{
		if(document.getElementById("rb_TradeAuction")!=null && document.getElementById("rb_TradeAuction").checked)
		{
			MM_validateForm('item_name','','R');
		}
		else if(document.getElementById("rb_TradeAccount")!=null && document.getElementById("rb_TradeAccount").checked)
		{
			MM_validateForm('login_name','','R','login_pass','','R','confirm_pass','','R');
			if(document.MM_returnValue && document.getElementById("confirm_pass").value!=document.getElementById("login_pass").value)
			{
				alert('The Account Login Password must be the same!');
				document.MM_returnValue=false;
			}
		}
	}
}



/*
    Search Game Server
*/
function searched()
{
	window.location="Search.aspx?s_n="+document.getElementById("s_n").value;
}


/*
    Browser Compatible
*/
function setAttributeEventToQty(qty)
{
    if(navigator.userAgent.indexOf("Firefox")>0)
    {
	    document.getElementById(qty).setAttribute("oninput","return CurrentPrice();");
    }
    else
    {
        document.getElementById(qty).attachEvent("onpropertychange",CurrentPrice);
    }
}

function CurrentPrice()
{
    GetCurrentPrice('gPic','gQty','currencyPrice','currentPic');    //GetCurrentPrice('gPic','gQty','currentPic');
}

function GetCurrentPrice(pic,qty,cyPic,ctPic)
{
    if(isNaN(document.getElementById(qty).value) || document.getElementById(qty).value=="" || parseInt(document.getElementById(qty).value)<1)
    {
        document.getElementById(qty).value=1;
        getCurrencyRate(document.getElementById(pic).value, document.getElementById(qty).value, cyPic, ctPic);  //document.getElementById(ptd).innerHTML="$"+roundNumber(document.getElementById(pic).value);
        alert('Please input the digit.');
    }
    else
    {
        getCurrencyRate(document.getElementById(pic).value, document.getElementById(qty).value, cyPic, ctPic);  //document.getElementById(ptd).innerHTML="$"+roundNumber(document.getElementById(pic).value*document.getElementById(qty).value);
        setCookie('PQty|',document.getElementById(qty).value+"|");
    }
}


/*
------------------------------------    Cookie   -------------------------------
*/

//Set Cookie
function setCookie(name,value)
{
    var cName=name.split("|");
    var cValue=value.split("|");
    if(cName.length>0)
    {
        for(i=0;i<cName.length;i++)
        {
            var an=cName[i];
            if(an!="")
            {
                var Days=1;
                var exp=new Date();
                exp.setTime(exp.getTime()+Days*24*60*60*1000);
                document.cookie=an+"="+escape(cValue[i])+";expires="+exp.toGMTString();
            }
        }
    }
}

//Get Cookie
function getCookie(name)
{
    var arr=document.cookie.split(";");
    for(var i=0;i<arr.length;i++)
    {
        var arrName=arr[i].split("=");
        var cName=arrName[0].replace(/(^\s*)|(\s*$)/g,"");
        if(cName==name)
        {
            return unescape(arrName[1]);
        }
    }
    return "";
}
    
//Delete Cookie
function delCookie(name,value)
{
    var cName=name.split("|");
    var cValue=value.split("|");
    if(cName.length>0)
    {
        for(i=0;i<cName.length;i++)
        {
            var an=cName[i];
            var exp=new Date();
            exp.setTime(exp.getTime()-10000);
            document.cookie=an+"="+escape(cValue[i])+";expires="+exp.toGMTString();
        }
     }
}


/*
    Set Power Level Cookie
*/
function setPowerLevelCookie(sLevel,eLevel)
{
    var pName="StartLevel|EndLevel";
	var pValue=document.getElementById(sLevel).value+"|"+document.getElementById(eLevel).value;
	setCookie(pName,pValue);
	
	var gName="PPid|PQty|PPic|PName";
	var gValue="||||";
	setCookie(gName,gValue);
	
	var sName="ProfessionName|ProfessionPrice";
	var sValue="||";
	setCookie(sName,sValue);
}
/*
    Set Golds Cookie
*/
function setGoldsCookie(pid,qty,pic,name)
{
    var gName="PPid|PQty|PPic|PName";
	var gValue=document.getElementById(pid).value+"|"+document.getElementById(qty).value+"|"+document.getElementById(pic).value+"|"+document.getElementById(name).innerHTML;
	setCookie(gName,gValue);
	
	//Up 2009-05-19
	getCurrencyRate(document.getElementById(pic).value, document.getElementById(qty).value, 'currencyPrice', 'currentPic');
	
	var pName="StartLevel|EndLevel";
	var pValue="||";
	setCookie(pName,pValue);
	
	var sName="ProfessionName|ProfessionPrice";
	var sValue="||";
	setCookie(sName,sValue);
}
/*
    Set Skill Cookie    02/27/2009
*/
function setProfessionCookie(pName,pPrice)
{
    var sName="ProfessionName|ProfessionPrice";
	var sValue=document.getElementById(pName).value+"|"+document.getElementById(pPrice).value;
	setCookie(sName,sValue);
    
    var pName="StartLevel|EndLevel";
	var pValue="||";
	setCookie(pName,pValue);
	
	var gName="PPid|PQty|PPic|PName";
	var gValue="||||";
	setCookie(gName,gValue);
}

/*-------------------------Select Gold 12/12/2008--------------------------*/
function setGold_Cookie(pid,qty,pic,name)
{
    var gName="PPid|PQty|PPic|PName";
	var gValue=document.getElementById(pid).value+"|"+document.getElementById(qty).value+"|"+document.getElementById(pic).value+"|"+document.getElementById(name).value;
	setCookie(gName,gValue);
	
	var pName="StartLevel|EndLevel";
	var pValue="||";
	setCookie(pName,pValue);
	
	var sName="ProfessionName|ProfessionPrice";
	var sValue="||";
	setCookie(sName,sValue);
}

/*
    Remove product
*/
function removeProduct(ptr,ept,pass,cookieName,cookieValue)
{
    if(confirm('Are you sure to remove this item from your cart ?'))
    {        
        delCookie(cookieName,cookieValue);
        location.href="Shopping-Cart.html";
    }
}


/*
    Show Div Info
*/
function CreateInfo(tdTag,tag,divP)
{
    document.getElementById(tdTag).innerHTML=tag;
    document.getElementById(divP).style.left = (document.body.offsetWidth - 400) / 2;
	document.getElementById(divP).style.top = (document.body.offsetHeight - 200) / 2;
	document.getElementById(divP).style.display = '';
}

/*
    Shopping Cart
*/
function ShowCart()
{
    var falg=false;
    var pPid=getCookie("PPid");
    var pQty=parseInt(getCookie("PQty"));
    var pPic=roundNumber(getCookie("PPic"),2);
    var pName=getCookie("PName");
    
    //Gold List
    if(isNaN(pPid) || pPid=="" || isNaN(pQty) || pQty==0 || isNaN(pPic) || pPic==0 || pName=="")
    {
        falg=true;
        document.getElementById("cart").style.height=30;
        document.getElementById("cart").innerHTML="<br><p align='center'>Total Amount:0.00</p><p align='right'><a href='Shopping-Cart.html'>Check Out</a></p>";
    }
    else
    {
        document.getElementById("cart").innerHTML=pQty+" x "+pName+"<br>------------------------------<p align='right'><a href='Shopping-Cart.html'>Check Out</a></p>";
    }
    
    //Power Lever List
    if(falg)
    {
        var sLevel=parseInt(getCookie("StartLevel"));
        var eLevel=parseInt(getCookie("EndLevel"));
        
        //get Skill Cookie    02/27/2009
        var _pName=getCookie("ProfessionName");
        var _pPrice=parseFloat(getCookie("ProfessionPrice"));
        
        if(isNaN(sLevel) || sLevel=="" || isNaN(eLevel) || eLevel=="")
        {
            if(_pName=="" || _pPrice=="" || isNaN(_pPrice))
            {
                document.getElementById("cart").style.height=30;
                document.getElementById("cart").innerHTML="<br><p align='center'>Total Amount:0.00</p><p align='right'><a href='Shopping-Cart.html'>Check Out</a></p>";
            }
            else
            {
                document.getElementById("cart").innerHTML="1 x WOW Profession-"+_pName+"<br>-------------------------------<p align='right'><a href='Shopping-Cart.html'>Check Out</a></p>";
            }
        }
        else
        {
            document.getElementById("cart").innerHTML="1 x Custom Powerlevelling Level "+sLevel+"-"+eLevel+"<br>-------------------------------<p align='right'><a href='Shopping-Cart.html'>Check Out</a></p>";
        }
    }
    
    //Get Product Currency  2009-05-12
    var _name=getCookie("CurrencyName");
    var _rate=getCookie("CurrencyRate");
    if(_name!="" && _rate!="")
        chooseCurrencyRate(_name,_rate);
	
    //Customer Login
    var cInfo=getCookie("CUSTINFO");
    if(cInfo!='')
		setLoginDiv("logDiv", "offDiv", cInfo);
}


/*--------------------------------Show Cart---------------------------------------*/

/*---------Gold---------*/
function getGolds(ptr,gname,gprice,gqty,gshow,cpic,ept,pass)
{
    var pPid=getCookie("PPid");
    var pQty=parseInt(getCookie("PQty"));
    var pPic=roundNumber(getCookie("PPic"),2);
    var pName=getCookie("PName");
    
    if(isNaN(pPid) || pPid=="" || isNaN(pQty) || pQty==0 || isNaN(pPic) || pPic==0 || pName=="")
    {
        document.getElementById(ptr).style.display="none";
        document.getElementById(pass).style.display="none";
        if(navigator.userAgent.indexOf("Firefox")>0)
            document.getElementById(ept).style.display="table-row";
        else
            document.getElementById(ept).style.display="block";
            
        return false;
    }
    else
    {
        document.getElementById(gname).innerHTML=pName;
        //document.getElementById(gprice).innerHTML="$"+roundNumber(pPic,2);
        document.getElementById(gqty).value=pQty;
        document.getElementById(gshow).innerHTML="<input type='hidden' id='hPid' name='hPid' value='"+pPid+"'><input type='hidden' id='gPic' name='gPic' value='"+pPic+"'>";
        //document.getElementById(cpic).innerHTML="$"+roundNumber(pPic*pQty,2);
        
        //2009-05-20
        getCurrencyRate(pPic,pQty,gprice,cpic);
        
        //show
        if(navigator.userAgent.indexOf("Firefox")>0)
            document.getElementById(ptr).style.display="table-row";
        else
            document.getElementById(ptr).style.display="block";
        document.getElementById(ept).style.display="none";
        document.getElementById(pass).style.display="block";
        
        //Attribute Event
        setAttributeEventToQty(gqty);
        
        return true;
    }
}

/*------------Level-------------*/
function getPowerLeveling(ptr,pName,pPrice,hName,hPrice,pPic,ept,pass)
{
    var s=parseInt(getCookie("StartLevel"));
    var e=parseInt(getCookie("EndLevel"));
    
    var _pName=getCookie("ProfessionName");
    var _pPrice=parseFloat(getCookie("ProfessionPrice"));
    
    if(isNaN(s) || s=="" || isNaN(e) || e=="")
    {
        if(_pName=="" || _pPrice=="" || isNaN(_pPrice))
        {
            document.getElementById(ptr).style.display="none";
            document.getElementById(pass).style.display="none";
            if(navigator.userAgent.indexOf("Firefox")>0)
                document.getElementById(ept).style.display="table-row";
            else
                document.getElementById(ept).style.display="block";
        }
        else
        {
            document.getElementById(hPrice).value=roundNumber(_pPrice,2);
            document.getElementById(hName).value="WOW Profession-"+_pName;
            document.getElementById(pName).innerHTML=document.getElementById(hName).value;
            //document.getElementById(pPrice).innerHTML="$"+document.getElementById(hPrice).value;
            //document.getElementById(pPic).innerHTML=document.getElementById(pPrice).innerHTML;
            
            //2009-05-20
            getCurrencyRate(_pPrice,1,pPrice,pPic);
            
            if(navigator.userAgent.indexOf("Firefox")>0)
                document.getElementById(ptr).style.display="table-row";
            else
                document.getElementById(ptr).style.display="block";
            document.getElementById(ept).style.display="none";
            document.getElementById(pass).style.display="block";
            //02/27/2009
            document.getElementById("btn_delP").style.display="none";
            document.getElementById("btn_delS").style.display="block";
        }
    }
    else
    {
		//2009-04-16_Up
		/*var _price=0;
	    var _hour=0;
	    var _sL70=70;
	    var _sL60=60;
	    var _sL40=40;
	    var _sL20=20;
    	
	    if(e>s)
	    {
	        //Prices
	        if(s>=_sL70)
	        {
	            _price=parseFloat(levelPrice70_80(s, e, 7.0)); //10.9   7.5
	        }
	        else if(s>=_sL60)
	        {
	            if(e>_sL70)
	            {
	                _price=parseFloat(levelPrice60_70(s, _sL70, 7.0));  //9.5   7.5
	                _price+=parseFloat(levelPrice70_80(_sL70, e, 7.0));    //10.9   7.5
	            }
	            else
	            {
	                _price=parseFloat(levelPrice60_70(s, e, 7.0));  //9.5   7.5
	            }
	        }
	        else if(s>=_sL40)
	        {
	            if(e>_sL70)//
	            {
	                _price=parseFloat(levelPrice40_60(s, _sL60, 6.0));  //8.0   7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 7.0));    //9.5    7.5
	                _price+=parseFloat(levelPrice70_80(_sL70, e, 7.0)); //10.9  7.5
	            }
	            else if(e>_sL60)//
	            {
	                _price=parseFloat(levelPrice40_60(s, _sL60, 6.0));  //8.0   7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, e, 7.0)); //9.5   7.5
	            }
	            else
	            {
	                _price=parseFloat(levelPrice40_60(s, e, 7.5));  //8.0
	            }
	        }
	        else if(s>=_sL20)
	        {
	            if(e>_sL70)//
	            {
	                _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0   7.0
	                _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0  7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 7.5)); //9.5   8.5 8.0 
	                _price+=parseFloat(levelPrice70_80(_sL70, e, 7.5));    //10.9  7.0  8.0
	            }
	            else if(e>_sL60)//
	            {
	                _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0  7.0
	                _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0   7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, e, 8.0)); //9.5  8.5  7.5 8.5
	            }
	            else if(e>_sL40)//
	            {
	                _price=parseFloat(levelPrice20_40(s, _sL40, 4.0));  //8.0   7.0
	                _price+=parseFloat(levelPrice40_60(_sL40, e, 6.0)); //8.0  7.0
	            }
	            else
	            {
	                _price=parseFloat(levelPrice20_40(s, e, 7.5));  //8.0
	            }
	        }
	        else if(s>0)
	        {
	            if(e>_sL70)
	            {
	                _price=parseFloat(levelPrice20_40(_sL20, _sL40, 6.0));  //8.0
	                _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.0)); //8.0   7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, _sL70, 6.0)); //9.5   7.5
	                _price+=parseFloat(levelPrice70_80(_sL70, e, 6.0));    //10.9   7.5
	                //_price+=1;
	            }
	            else if(e>_sL60)
	            {
	                _price=parseFloat(levelPrice20_40(_sL20, _sL40, 7.0)); //8.0
	                _price+=parseFloat(levelPrice40_60(_sL40, _sL60, 6.5)); //8.0   7.0
	                _price+=parseFloat(levelPrice60_70(_sL60, e, 7.0)); //9.5   7.5
	                _price+=4;
	            }
	            else if(e>_sL40)
	            {
	                _price=parseFloat(levelPrice20_40(_sL20, _sL40, 6.0));  //8.0
	                _price+=parseFloat(levelPrice40_60(_sL40, e, 6.0)); //8.0
	                _price+=3;
	            }
	            else if(e>_sL20)
	            {
	                _price=parseFloat(levelPrice20_40(_sL20, e, 7.5));  //8.0
	                _price+=4;
	            }
	            else
	            {
	                _price=7.5;   //8
	            }
	        }
    	    
	        //Hours
	        for(i=s;i<=e;i++)
	        {
	            _hour+=hourss[1][i];
	        }
    	    
	    }*/

	//08/20/2009
	var _price=0;
	var _hour=0;
    	
	if(e>s)
	{
		//price
		for(i=s;i<=e;i++)
		{
			_price+=prices[1][i]; 
		}
		
		//Hours
	        for(i=s;i<=e;i++)
	        {
	        	_hour+=hourss[1][i];
	        }
	}
		
        document.getElementById(hPrice).value=roundNumber(_price,2);
        
        var da=Math.ceil(_hour/24);
        document.getElementById(hName).value="Custom Powerlevelling for WOW Level "+s+" - "+e+"__ Duration "+da+" Days";
        document.getElementById(pName).innerHTML=document.getElementById(hName).value;
        
                    
        //document.getElementById(pPrice).innerHTML="$"+document.getElementById(hPrice).value;
        //document.getElementById(pPic).innerHTML=document.getElementById(pPrice).innerHTML;
        
        //2009-05-20
        getCurrencyRate(_price,1,pPrice,pPic);
        
        //show
        if(navigator.userAgent.indexOf("Firefox")>0)
            document.getElementById(ptr).style.display="table-row";
        else
            document.getElementById(ptr).style.display="block";
        document.getElementById(ept).style.display="none";
        document.getElementById(pass).style.display="block";
        //02/27/2009
        document.getElementById("btn_delP").style.display="block";
        document.getElementById("btn_delS").style.display="none";
    }
}

/*---------------------------------2009-05-12----------------------------------*/

/*
    Select Currency Rate 
*/
function chooseCurrencyRate(name, rate)
{
    if(document.getElementById("pCount")!=null)
    {
        var num=document.getElementById("pCount").value;
        for(i=0;i<num;i++)
        {
            document.getElementById("currencyPrice_"+i).value=name+(parseFloat(document.getElementById("productPrice_"+i).value)*rate).toFixed(2);
        }
    }
    else if(document.getElementById("currentPic")!=null && document.getElementById("gPic")!=null)
    {
        document.getElementById("currencyPrice").value=name+(parseFloat(document.getElementById("gPic").value)*rate).toFixed(2);
        document.getElementById("currentPic").value=name+(parseFloat(document.getElementById("gPic").value)*parseFloat(document.getElementById("gQty").value)*rate).toFixed(2);
    }
    else if(document.getElementById("hidPrice")!=null)
    {
        document.getElementById("pPrice").value=name+(parseFloat(document.getElementById("hidPrice").value)*rate).toFixed(2);
        document.getElementById("pPic").value=name+(parseFloat(document.getElementById("hidPrice").value)*rate).toFixed(2);
    }
    
    setCurrencyCookie(name, rate);
}


/*
    Get Currency Rate  2009-05-06
*/
function getCurrencyRate(pic,qty,cyPic,ctPic)
{
    var _name=getCookie("CurrencyName");
    var _rate=getCookie("CurrencyRate");
    
    if(_name!='' && _rate>0)
    {
        document.getElementById(cyPic).value=_name+(pic*_rate).toFixed(2);
        document.getElementById(ctPic).value=_name+(pic*qty*_rate).toFixed(2);
    }
    else
    {
        document.getElementById(cyPic).value="USD$ "+(pic*1).toFixed(2);
        document.getElementById(ctPic).value="USD$ "+(pic*qty).toFixed(2);
    }
}


/*
    Set Currency Cookie
*/
function setCurrencyCookie(cName, cRate)
{
    var pName="CurrencyName|CurrencyRate";
	var pValue=cName+"|"+cRate;
	setCookie(pName,pValue);
}

/*-----------------Check Integral	2009-06-29------------------*/
function CheckIntegral(Integraltxt, val)
{
	var num=document.getElementById(Integraltxt).value;
	if(num!="" && (isNaN(num) || num<0 || num>val) )
	{
		document.getElementById(Integraltxt).focus();
		document.getElementById(Integraltxt).select();
		alert("surplus integral between 1 to "+val+"! ");
	}
}



/*------------------------------2009-07-06-------------------------------*/
function inputPhone(fTel,bTel,fRD,bRD)
{
	document.getElementById(fTel).readOnly=false;
	document.getElementById(bTel).readOnly=true;
	document.getElementById(bTel).value="";
	document.getElementById(fRD).checked=true;
	document.getElementById(bRD).checked=false;
}

