// form validate functions
/*
==================================================================
LTrim(string) : Returns a copy of a string without leading spaces.
==================================================================
*/


/* 

Function to display or hide the division 
// arg1 (t) is the element id.
 
 START 
*/
function dispriceshow(t,f){
	eval("document.getElementById('" + t + "').style.display = ''");
	if(f){eval("document.getElementById('" + f + "').disabled = false");}
}
function dispricehide(t,f){
	eval("document.getElementById('" + t + "').style.display = 'none'");
		if(f){eval("document.getElementById('" + f + "').disabled = true");}
}
function disshow(t,tbl,f){
	eval("document.getElementById('" + t + "').style.display = ''");
	eval("document.getElementById('" + tbl + "').style.display = ''");
	if(f){eval("document.getElementById('" + f + "').disabled = false");}
}
function dishide(t,tbl,f){
	eval("document.getElementById('" + t + "').style.display = 'none'");
	eval("document.getElementById('" + tbl + "').style.display = 'none'");
		if(f){eval("document.getElementById('" + f + "').disabled = true");}
}

/*    END    */

/*
function LTrim(str)

  // PURPOSE: Remove leading blanks from our string.
  // IN: str - the string we want to LTrim

{
   var whitespace = new String(" tnr");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(0)) != -1) {
      // We have a string with leading blank(s)...

      var j=0, i = s.length;

      // Iterate from the far left of string until we
      // don't have any more whitespace...
      while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
         j++;

      // Get the substring from the first non-whitespace
      // character to the end of the string...
      s = s.substring(j, i);
   }
   return s;
}


//==================================================================
//RTrim(string) : Returns a copy of a string without trailing spaces.
//==================================================================

function RTrim(str)
  // PURPOSE: Remove trailing blanks from our string.
//   IN: str - the string we want to RTrim

{
   // We don't want to trip JUST spaces, but also tabs,
   // line feeds, etc.  Add anything else you want to
   // "trim" here in Whitespace
   var whitespace = new String(" tnr");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {
      // We have a string with trailing blank(s)...

      var i = s.length - 1;       // Get length of string

      // Iterate from the far right of string until we
      // don't have any more whitespace...
      while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
         i--;


      // Get the substring from the front of the string to
      // where the last non-whitespace character is...
      s = s.substring(0, i+1);
   }

   return s;
}


//=============================================================
//Trim(string) : Returns a copy of a string without leading or trailing spaces
//=============================================================

function Trim(str)

//   PURPOSE: Remove trailing and leading blanks from our string.
//   IN: str - the string we want to Trim
//   RETVAL: A Trimmed string!

{
   return RTrim(LTrim(str));
}
*/

// Check for valid number
function checkNumber(number){
	//check numbers in 123,123,122.23 or 123123123.123 or 123,123,123 or 123123123 format
	var rex = /^((\d{1,3},)?(\d{3},)?(\d{3})|(\d{1,}))((\.(\d{1,}))?)$/;
	return rex.test(number);
}


function check(field)
{
	for (i = 0; i < field.length; i++)
	{
		field[i].checked = true;
	}
}


function CheckLength(formName,field,len,msg) 
{
	field1 = eval("document."+formName+"."+field+".value");
	length1 = field1.length;
	//	var len_field = field1.length;

	if(length1<len)
	{
		alert(msg);
		return false;
	}
	return true;
}

function SetChecked(frmA, val) 
{	
	var frm='';
	frm = document.getElementById(frmA);
	
    //var frm = eval(frm);
    var dml;
    
    dml = frm;
            
    len = dml.elements.length; 
    var i=0;
    for( i=0 ; i<len ; i++)
	{
    	dml.elements[i].checked=val;
		
	}
}

/*
function SetChecked(val) 
{
	dml = document.tableform;

	len = dml.elements.length;
	var i=0;
	for( i=0 ; i<len ; i++) 
			dml.elements[i].checked=val;
}
*/

function uncheck(field)
{
	for (i = 0; i < field.length; i++)
	{
		field[i].checked = false;
	}
}

/*

function validateBlank(formName,fieldName,msg)
{
	var	doc = "document.";
	var input = Trim(eval(doc+formName+"."+fieldName+".value"));
	var lenth = input.length;
	var ctr=0 ;
	if(input==""){		
		alert(msg);
		eval(doc+formName+"."+fieldName+".focus()");
		return false;		
	}
	return true;
}
*/
/*
function chkPercentageAmount(formName,fieldName1,fieldName2,msg)
{
	var	doc = "document."
	if(eval(doc+formName+"."+fieldName1+".value") == 'P')
	{
		if(eval(doc+formName+"."+fieldName2+".value") > 100)
		{
				alert(msg);
				eval(doc+formName+"."+fieldName2+".focus()");
				return false;
		}
	}
	else
	{
		return true;
	}
}
*/

function validateDecimal(formName,fieldName,msg)
{
	var	doc = "document."
	
	a=eval(doc+formName+"."+fieldName)
	fieldValue=eval(doc+formName+"."+fieldName + ".value")
	
	
	if (fieldValue.length<1)
	{
		alert(msg)
		eval(doc+formName+"."+fieldName + ".select()")
		return false
	}
	
	chk1="123456789.0";

	for(i=0;i!=fieldValue.length;i++)
	{
		ch1=fieldValue.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
		{
			alert(msg);;
			eval(doc+formName+"."+fieldName + ".focus()")
			return false;
			break;
		}
	}
	return true
}    

//	Function to validate email address.
function validateEmail(formName,fieldName,msg) 
{
	var doc = "document.";
	var email = eval(doc+formName+"."+fieldName+".value");

	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(email))
	{
		return (true);
	}
	else
	{
		alert (msg);
		eval(doc+formName+"."+fieldName + ".focus()");
		return false;
	}
}

//Added by Rajendra Jadeja on 26 Jun, 2007 to validate number is integer and greater than zero.
function isPositiveInt(formName,fieldName,msg)
{
	var doc = "document.";
	var strNum = eval(doc+formName+"."+fieldName+".value");

	var strValidChars = "0123456789"; 
	var strChar; 
	var blnResult = true; 

	if (strNum.length == 0) 
	{
		alert(msg)	 ;
		eval(doc+formName+"."+fieldName + ".focus()");
		return false; 
	}

	for (i = 0; i < strNum.length && blnResult == true; i++) 
    { 
        strChar = strNum.charAt(i); 
        if (strValidChars.indexOf(strChar) == -1) 
        { 
            blnResult = false; 
        } 
	} 	
	
	if ( blnResult == false)	
	{
		alert(msg)	 ;
		//eval(doc+formName+"."+fieldName+".value = ''");
		eval(doc+formName+"."+fieldName + ".focus()");
		return false;
	}
	if ( strNum <= 0 && blnResult == true)
	{
		alert(msg)	 ;
		eval(doc+formName+"."+fieldName + ".focus()");
		return false;
	}
	return true;
}


//Added by Rajendra Jadeja on 4 July, 2007 to validate characters. 
function isValidChar(formName, fieldName, sRule, fieldText)
{
	var doc = "document.";
	var strVal = eval(doc+formName+"."+fieldName+".value");
	//var sRule = ".0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"; 
	var blnResult = true; 

	//If the object is not specified return false
	if (strVal == null || strVal == '' || typeof(strVal) == 'undefined')
	{
		alert('Error: Input object not specified.');
		return false;
	}
	else if (typeof(sRule) == 'undefined' || sRule == '' )
	{
		alert('Error: No rule for input object specified.');
		return false;
	}

	var temp;
	for (var i = 0;i < strVal.length && blnResult; i++)
	{
		temp = strVal.charAt(i);
		if( sRule.indexOf(temp) < 0)
		{
			//alert("Invalid Character in "+fieldText);
			alert(fieldText);
			//strVal	=	strVal.substring(0,i);
			eval(doc+formName+"."+fieldName).value	=	strVal ;
			blnResult = false; 
			break;
		}	
	}	
	return blnResult;
}










//function for validating Number
function validateNumber(formName,fieldName,msg){

var	doc = "document."

a=eval(doc+formName+"."+fieldName)
fieldValue=eval(doc+formName+"."+fieldName + ".value")

if (fieldValue.length<1)
{
	alert(msg)
	eval(doc+formName+"."+fieldName + ".select()")
	return false
}

chk1="1234567890-";

	for(i=0;i!=fieldValue.length;i++)
	{
		ch1=fieldValue.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
		{
			alert(msg);
			eval(doc+formName+"."+fieldName + ".focus()")
			return false;
			break;
		}
	}

return true	
}

//added by Amit Shah on 2005-1-19 to validate phone/fax numbers
function validateCallNumber(formName,fieldName,msg)
{
	var	doc = "document."
	
	a=eval(doc+formName+"."+fieldName)
	fieldValue=eval(doc+formName+"."+fieldName + ".value")
	
	if (fieldValue.length<1)
	{
		alert(msg)
		eval(doc+formName+"."+fieldName + ".select()")
		return false
	}
	
	chk1="1234567890-";
	
		for(i=0;i!=fieldValue.length;i++)
		{
			ch1=fieldValue.charAt(i);
			rtn1=chk1.indexOf(ch1);
			if(rtn1==-1)
			{
				alert(msg);
				eval(doc+formName+"."+fieldName + ".focus()")
				return false;
				break;
			}
		}
	
	return true	
}



// This functions are used on the forms listing the data like productlist, couponlist, categorylist etc.

// Returns the count of the checkbox selected

function numChecked(frm)
{
	j=0;
	for(i=0;i< frm.length;i++)
	{
		e=frm.elements[i];
		if (e.type=='checkbox' && e.name != 'allbox' && e.checked)
			j++;	
	}
	//alert(j);
	return j;
}

function slct1st()
{
	j=0;
	for(i=0;i< frm.length;i++)
	{
		e=frm.elements[i];
		if (e.type=='checkbox' && e.name != 'allbox' && e.checked)
			if(j==1) 
				e.checked=false;
			else 
				j=1;
	}
	return j;
}

function validateBlank(formName,fieldName,msg)
{
 var doc = "document." 
 var input = eval("document."+formName+"."+fieldName+".value");
 var lenth = input.length;
 var ctr=0 ; 
 if(input=="")
 {  
  alert(msg);
  eval(doc+formName+"."+fieldName+".focus()")
  return false;  
 } 
 return true
}




function check_valid_ext(f,type){

	f=f.toLowerCase();
	if(type == 'image')
	{
		extarr=new Array("jpg","jpeg","JPG","JPEG","gif","GIF");
	}
	else if(type == 'video')
	{
		extarr=new Array("avi","AVI","mpeg","MPEG","swf","SWF","wmv","WMV","mov","MOV","ASF","asf","MPG","mpg","flv","FLV","WAV","wav");	
	}
	totext=extarr.length;
	flag=0;
	for(i=0;i<totext;i++)
	{
		if(extarr[i].indexOf(f) != -1)
			flag=1;
	}
	
	if(flag==1)	
		return true;
	else	
		return false;
}


// This function is used to open the new window
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function trim(s) 
{
	//changed by Bhavin Bhalara on 30th july
	s = s.replace(/^\s*|\s*$/g,"");
	/*while (s.substring(0,1) == ' ') 
	{
		s = s.substring(1,s.length);
	}
	while (s.substring(s.length-1,s.length) == ' ') 
	{
		s = s.substring(0,s.length-1);
	}*/
	return s;
}


function Subm(frm,act,first,dosub,opt, msg)
{
	//frm = document.tableform;
//	alert(opt);
	var frm = eval(frm);
	num = ((first) ? slct1st(frm) : numChecked(frm));
	
	if (num>0)
	{
		if(opt==1)
			checkDelete(frm,msg);
		else if(opt==2)
			checkActive(frm,msg);
		else if(opt==3)
			checkInActive(frm,msg);
		if (dosub)
			return true;
	}
	else
		alert("Please select Checkbox.");
	return false;
}

function checkDelete(frm,msg)
{
	rtn =  confirm(msg);
	if(rtn==false)
	{
		return false;
	}
	else
	{
		frm.action.value="Delete";
		frm.submit();
	}
}

// Function called when active action is performed

function checkActive(frm,msg)
{
	rtn=confirm(msg);
	if(rtn==false)
	{	
		return false;	
	}
	else
	{	
		frm.action.value="Active";
		frm.submit();		
	}
}
// Function called when InActive action is performed

function checkInActive(frm,msg)
{
	rtn=confirm(msg);
	if(rtn==false)
	{	
		return false;	
	}
	else
	{	
		frm.action.value="Inactive";
		frm.submit();		
	}
}

