// JavaScript Document
var win=null;
function NewWindow(mypage,myname,w,h,Isscroll,pos){
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+Isscroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=0,fullscreen=0';
win=window.open(mypage,myname,settings);}

function trim(s) 
{ 
    var l=0; var r=s.length -1; 
    while(l < s.length && s[l] == ' ') 
         l++;  
    while(r > l && s[r] == ' ') 
         r-=1;
    return s.substring(l, r+1); 
}

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 isValidZip (zip,country){
	if(!zip){
		return "Please enter ZIP code.";
	}
	var zipRegExp = "";
	if(!country) format = 'US';
	switch(country){
		case'US': zipRegExp = /^\d{5}$|^\d{5}-\d{4}$/; break;
		case'CA': zipRegExp = /^[A-Z]\d[A-Z] \d[A-Z]\d$/; break;
		case'FR': zipRegExp = /^\d{5}$/; break;
		case'Monaco':zipRegExp = /^(MC-)\d{5}$/; break;
	}
	if(zipRegExp!="")
		if(!zipRegExp.test(zip)){
			return "ZIP code is not valid.";
		}
	return '';
}

function isValidEmail(string){
	emailRegExp = (/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/);

	if(!emailRegExp.test(string)){
		return "Email is not valid.";
	}
	return "";
}
function validatePhone(phoneField) {
    var num = phoneField.value.replace(/[^\d]/g,'');
    if(num.length != 10) {
		return false;
    } else {
		phoneField.value = num.substring(0,3) + "-" + num.substring(3, 6) + "-" + num.substring(6);
    }
}
function checkPhone(phoneField)
{
	var num = phoneField.value.replace(/[^\d]/g,'');
    if(num.length != 10) {
		return false;
    }
	return true;
}
function isPhoneNum(s)
{
	if(s!="() ")
	{
		isPhoneNumRegExp = (/^\([1-9]\d{2}\)\s?\d{7}$/);
		if (!isPhoneNumRegExp.test(s)) {
			return "Phone number must be entered as: xxx xxxxxxx";
		}
	}
	return '';
}

/*function IsNumeric(strString){
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;
   if (strString.length == 0) return false;
   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      	strChar = strString.charAt(i);
      	if (strValidChars.indexOf(strChar) == -1) {
         		blnResult = false;
         }
      }
   return blnResult;
}*/

function IsNumeric(sText)
{
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	{ 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
			IsNumber = false;
	}
	return IsNumber;
}

function IsFloat(strString){
   var strValidChars = "0123456789.";
   var strChar;
   var blnResult = true;
   if (strString.length == 0) return false;
   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      	strChar = strString.charAt(i);
      	if (strValidChars.indexOf(strChar) == -1) {
         		blnResult = false;
         }
      }
   return blnResult;
}
function CheckNumberInt(obj){
	if(!IsNumeric(obj.value)){
		obj.value = '';
	}	
}
function CheckNumberFloat(obj){
	if(!IsFloat(obj.value)){
		obj.value = '';
	}	
}
function checkUsername(strng)
{
	if ((strng.length < 4) || (strng.length > 20)) {
    	return "The username is the wrong length. Username must be from 4 to 20 characters.";
	}
	var illegalChars = /\W/;
  // allow only letters, numbers, and underscores
    if (illegalChars.test(strng)) {
       return "The username contains illegal characters.";
    }
	return '';
}

function checkPassword (strng) 
{
	var illegalChars = /[\W_]/; // allow only letters and numbers
	if ((strng.length < 6) || (strng.length > 20)) {
		return "The password is the wrong length. Password must be from 6 to 20 characters";
	}
	else if (illegalChars.test(strng)) {
		return "The password contains illegal characters.";
	}
	return '';
}

function login_(form,username,password,msgbox)
{
	//$("#"+form).submit(function()
	//{
		//remove all the class add the messagebox classes and start fading
		$("#"+msgbox).removeClass().addClass('messagebox').text('Validating....').fadeIn(1000);
		//check the username exists or not from ajax
		if($('#'+username).val()==''){
			$("#"+msgbox).html('Please enter username to login!').addClass('error').fadeTo(900,1);
			$('#'+username).focus();
			return false;
		}
		var mess = checkUsername($('#'+username).val());
		if(mess!=''){
			$("#"+msgbox).html(mess).addClass('error').fadeTo(900,1);
			$('#'+username).focus();
			return false;
		}
		if($('#'+password).val()==''){
			$("#"+msgbox).html('Please enter password to login!').addClass('error').fadeTo(900,1);
			$('#'+password).focus();
			return false;
		}
		mess = checkPassword($('#'+password).val());
		if(mess!=''){
			$("#"+msgbox).html(mess).addClass('error').fadeTo(900,1);
			$('#'+password).focus();
			return false;
		}

		$.post("ajax/ajax_login.php",{ username:$('#'+username).val(),password:$('#'+password).val(),rand:Math.random() } ,function(data)
		{
			if(data != ''){
				var arr_ = data.split("<@@>");
				var page = arr_[0];
				if(page != '' && page != 'no') //if correct login detail
				{
					$("#"+msgbox).fadeTo(200,0.1,function()  //start fading the messagebox
					{ 
						  //add message and change the class of the box and start fading
						  $(this).html('Logging in.....').addClass('messageboxok').fadeTo(900,1,
						  function()
						  { 
//						  	 var topmenu = arr_[1];
//						  	 if(topmenu != '' && topmenu != 'no'){
//						  	 	var arr_tam = topmenu.split("<@>");
//						  	 	if(arr_tam.length > 1){
//						  	 		arr_TopMenu = arr_tam[0].split(",");
//						  	 		arr_PageTopMenu = arr_tam[1].split(",");
//						  	 		p_active = arr_tam[2];
//						  	 	}
//						  	 }
						 // 	 loadBlockLogin();
						//	 loadTab(page);							 
						//	 LoadTopMenu();
								window.location.replace(data);
						  });
					});
				}
				else
				{
					$("#"+msgbox).fadeTo(200,0.1,function() //start fading the messagebox
					{ 
					  //add message and change the class of the box and start fading
					  $(this).html('The username or password incorrect.').addClass('error').fadeTo(900,1);
					});		
				}
			}
		});
 		return false; //not to post the  form physically
	//});
	//now call the ajax also focus move from 
	$("#"+password).blur(function()
	{
		$("#"+form).trigger('submit');
	});
}

function logout(){
	$.ajax(
	{
		url: "logout.php", 
		cache: false,
		success: function(message) 
		{
			$("#block_login").empty().append(message);
			arr_TopMenu = ["about", "advertisers", "partners", "contact"];
			arr_PageTopMenu = ["digital.php", "advertisers.php", "partners.php", "contact.php"];
			p_active = "";
			
			loadTab("?a=home");	
			loadBlockLogin();		 
			LoadTopMenu();
			
		}
	});	
}

function loadBlockLogin(){
	$.ajax(
	{
		url: "ajax/login_block.php", 
		cache: false,
		success: function(message)
		{
			$("#block_login").empty().append(message);
		}
	});	
}

function formatMoney(mnt)
{
	//-- Returns the passed number as a string in the xxxxxx.xx format.
	mnt -= 0;
	mnt = (Math.round(mnt*100))/100;
	return (mnt == Math.floor(mnt)) ? mnt + '.00'
	: ( (mnt*10 == Math.floor(mnt*10)) ?
	mnt + '0' : mnt);
}

function formatAsMoney (value) {
      //decimal  - the number of decimals after the digit from 0 to 3
	  var decimal = 2;
      //-- Returns the passed number as a string in the xxx,xxx.xx format.
        anynum=eval(value);
        divider =10;
        switch(decimal){
             case 0:
                 divider =1;
                 break;
             case 1:
                 divider =10;
                 break;
             case 2:
                 divider =100;
                 break;
             default:       //for 3 decimal places
                 divider =1000;
         } 
  
        workNum=Math.abs((Math.round(anynum*divider)/divider));
  
        workStr=""+workNum
  
        if (workStr.indexOf(".")==-1){workStr+="."}
  
        dStr=workStr.substr(0,workStr.indexOf("."));dNum=dStr-0
        pStr=workStr.substr(workStr.indexOf("."))
  
        while (pStr.length-1< decimal){pStr+="0"}
  
        if(pStr =='.') pStr ='';
  
        //--- Adds a comma in the thousands place.   
        if (dNum>=1000) {
           dLen=dStr.length
          dStr=parseInt(""+(dNum/1000))+","+dStr.substring(dLen-3,dLen)
        } 
  
        //-- Adds a comma in the millions place.
        if (dNum>=1000000) {
           dLen=dStr.length
           dStr=parseInt(""+(dNum/1000000))+","+dStr.substring(dLen-7,dLen)
        }
        retval = dStr + pStr
        //-- Put numbers in parentheses if negative.
      if (anynum<0) {retval="("+retval+")";}
 
    //You could include a dollar sign in the return value.
       //retval =  "$"+retval
     return retval;
}

function numberFormat(value,decimal) {
      //-- Returns the passed number as a string in the xxx,xxx.xx format.
        anynum=eval(value);
        divider =10;
        switch(decimal){
             case 0:
                 divider =1;
                 break;
             case 1:
                 divider =10;
                 break;
             case 2:
                 divider =100;
                 break;
             default:       //for 3 decimal places
                 divider =1000;
         } 
  
        workNum=Math.abs((Math.round(anynum*divider)/divider));
  
        workStr=""+workNum
  
        if (workStr.indexOf(".")==-1){workStr+="."}
  
        dStr=workStr.substr(0,workStr.indexOf("."));dNum=dStr-0
        pStr=workStr.substr(workStr.indexOf("."))
  
        while (pStr.length-1< decimal){pStr+="0"}
  
        if(pStr =='.') pStr ='';
  
        //--- Adds a comma in the thousands place.   
        if (dNum>=1000) {
           dLen=dStr.length
          dStr=parseInt(""+(dNum/1000))+","+dStr.substring(dLen-3,dLen)
        } 
  
        //-- Adds a comma in the millions place.
        if (dNum>=1000000) {
           dLen=dStr.length
           dStr=parseInt(""+(dNum/1000000))+","+dStr.substring(dLen-7,dLen)
        }
        retval = dStr + pStr
        //-- Put numbers in parentheses if negative.
      if (anynum<0) {retval="("+retval+")";}
 
    //You could include a dollar sign in the return value.
       //retval =  "$"+retval
     return retval;
}
function isNumberIntKey(evt){
 	var charCode = (evt.which) ? evt.which : event.keyCode;
 	if (charCode > 31 && (charCode < 48 || charCode > 57)) return false;
 	return true;
}
function isNumberFloatKey(evt){
 	var charCode = (evt.which) ? evt.which : event.keyCode;
 	if (charCode > 31 && ((charCode < 48 && charCode != 46) || charCode > 57)) return false;
 	return true;
}

