// JavaScript Document
function showimage(imagearray, id, imageplace)
{
	for(i=0; i<imagearray.length; i++)
	{
		if (imagearray[i]["imageid"] == id)
		{
			largeimageurl = imagearray[i]["mainimage"];
			imageurl = imagearray[i]["image"];
			width = imagearray[i]["width"];
			height = imagearray[i]["height"];
			
			if (imageurl)
			{
				document.getElementById("maininageofproduct").href = largeimageurl;
				document.getElementById(imageplace).src = imageurl;
				document.getElementById(imageplace).width = width;
				document.getElementById(imageplace).height = height;
			}
			return true;
		}
	}
}

function setnewcartproductimage(imagearray, id, frm)
{
	for(i=0; i<imagearray.length; i++)
	{
		if (imagearray[i]["imageid"] == id)
		{
			imageurl = imagearray[i]["cartimage"];

			if (imageurl)
			{
				for(i = 0; i < document.forms[frm].length; i++)
				{
					if(document.forms[frm].elements[i].name.substr(0, 6) == 'image_')
					{
						document.forms[frm].elements[i].value = imageurl;
					}
				}
			}
			return true;
		}
	}
}

function menutoggle(div1, div2)
{
	document.getElementById(div1).style.display = '';
	document.getElementById(div2).style.display = 'none';
}

function menu(childbox, flipimg, img1, img2)
{
	if (document.getElementById(childbox).style.display == 'none') 
	{
		document.getElementById(childbox).style.display = '';
		document.getElementById(flipimg).src = img1;
	}
	else 
	{	
		document.getElementById(childbox).style.display = 'none';
		document.getElementById(flipimg).src = img2;
	}
}

function chkvalidity(frm, validity)
{
	chk = true;
	for(j=0; j<validity.length; j++)
	{
		chk = fieldcheck(frm, validity[j]["field"], validity[j]["datatype"], validity[j]["fieldtype"], validity[j]["msg"], validity[j]["needle"], validity[j]["depend_cmd"], validity[j]["depend_check"] ,validity[j]["responseid"])
		if (chk == false) return false;
	}
	return true;
}

function fieldcheck(frm, field, datatype, fieldtype, msg, needle, depend_field, depend_check,responseid)
{
	document.getElementById(responseid).style.display='none';
	state = true;
	if ((fieldtype == "radio" || fieldtype == "checkbox") && datatype != "depend")
	{
		return chkradiocheckbox(frm, field, msg,responseid);
	}
	else
	{
		for(i = 0; i < document.forms[frm].length; i++)
		{
			if(document.forms[frm].elements[i].name == field)
			{
				//alert(datatype + document.forms[frm].elements[i].value);
				if (datatype == "char")
				{
					if(trim(document.forms[frm].elements[i].value) == "") state = false;
				}
				else if (datatype == "curr")
				{
					if (parseFloat(document.forms[frm].elements[i].value) < 0) state = false;
					if (checkcurr(document.forms[frm].elements[i].value) == false) state = false;
				}
				else if (datatype == "number")
				{
					if (parseFloat(document.forms[frm].elements[i].value) < 0) state = false;
					if (checknumber(document.forms[frm].elements[i].value) == false) state = false;
				}				
				else if (datatype == "email")
				{
					if (emailCheck(document.forms[frm].elements[i].value) == false) state = false;
				}
				else if (datatype == "nospecial")
				{
					if (nonspecialchar(document.forms[frm].elements[i].value) == false) state = false;
				}
				else if (datatype == "compare")
				{
					if (strcompare(document.forms[frm].elements[i].value, needle) == false) state = false;
				}
				else if (datatype == "either")
				{
					if (streither(document.forms[frm].elements[i].value, needle) == false) state = false;
				}
				else if (datatype == "length")
				{
					if (chkstringlength(document.forms[frm].elements[i].value, needle) == false) state = false;
				}
				else if (datatype == "depend")
				{
					if (radiocheckvalue(frm, document.forms[frm].elements[i].name) != needle) return true;
					if (chkdependency(frm, document.forms[frm].elements[i], needle, depend_field, depend_check) == false) state = false;
				}
				else if(datatype == "image")
				{ 
				   //alert(document.forms[frm].elements[i].value);
					 
					if(checkimage(document.forms[frm].elements[i].value) == false) state = false;
				}
				else if(datatype == "video")
				{
					//alert(datatype) ;
					if(validatevideo(document.forms[frm].elements[i].value) == false) state = false;
				}
			    else if(datatype == "pdf")
				{
					//alert(datatype) ;
					if(validatepdf(document.forms[frm].elements[i].value) == false) state = false;
				}	
				else if(datatype == "flash")
				{
					//alert(datatype) ;
					if(validateflash(document.forms[frm].elements[i].value) == false) state = false;
				}		
				
				else if(datatype == "audio")
				{
					//alert(datatype) ;
					if(validateaudio(document.forms[frm].elements[i].value) == false) state = false;
				}		
				
			   else if(datatype == "url")
				{
					if(check_url(document.forms[frm].elements[i].value) == false) state = false;
				}
				
			   else if(datatype == "selected_files")
				{
					if(check_selected_files(document.forms[frm].elements[i].value) == false) state = false;
				}
			  else if(datatype == "selected_files_new")
				{
					if(check_selected_files_new(document.forms[frm].elements[i].value) == false) state = false;
				}
			 
			 else if(datatype == "resumeextensions")
				{
					if(check_resumeextension(document.forms[frm].elements[i].value) == false) state = false;
				}	
	
			  else
			   {
					alert("Wrong Data type");   
					return false;
			   }
				
			}
			if (!state)
			{
				//alert(msg);
				//alert(responseid);
				
				document.getElementById(responseid).style.display='';				
				document.getElementById(responseid).innerHTML="<div class='floatleft'><img src='images/err.gif' align='middle'></div><div  class='jsmsg'>&nbsp;"+msg+"</div>";
				
				
				if (datatype != "depend") 
				{
					if (document.forms[frm].elements[i].disabled == false) document.forms[frm].elements[i].focus();
				}
				return state;
			}
		}
	}
}
function chkstringlength(string, strlength)
{	
	//alert(strlength);
	if (string.length < strlength) return false;
}

function streither(str1, str2)
{
	if (trim(str1) == "" && trim(str2) == "") return false;
}

function strcompare(str1, str2)
{
	if (str1 != str2) return false;
}

function mannav(frm, objname, msg, mode)
{
	if (chkradiocheckbox(frm, objname, msg))
	{
		document.forms[frm].cmd_mode.value = mode;
		document.forms[frm].submit();
		return true;
	}
	else
	{
		return false;
	}
}

function radiocheckvalue(frm, objname)
{
	for(i = 0; i < document.forms[frm].length; i++)
	{
		if(document.forms[frm].elements[i].name == objname)
		{
			if(document.forms[frm].elements[i].checked == true)
			{
				return document.forms[frm].elements[i].value;
			}
		}
	}
	return false;
}

function togglecheckbox(frm, master)
{
	for(i = 0; i < document.forms[frm].length; i++)
	{
		if(document.forms[frm].elements[i].name == master)
		{
			if (document.forms[frm].elements[i].checked == true) ckeckit = true;
			else if (document.forms[frm].elements[i].checked == false) ckeckit = false;
		}
	}
	for(i = 0; i < document.forms[frm].length; i++)
	{
		if(document.forms[frm].elements[i].type == 'checkbox')
		{
			if (ckeckit == true) document.forms[frm].elements[i].checked = true;
			else if (ckeckit == false) document.forms[frm].elements[i].checked = false;
		}
	}
}

function selectvalue(frm, objname)
{
	for(i = 0; i < document.forms[frm].length; i++)
	{
		if(document.forms[frm].elements[i].name == objname)
		{
			if(document.forms[frm].elements[i].selected == true)
			{
				return document.forms[frm].elements[i].value;
			}
		}
	}
	return false;
}

function chkradiocheckbox(frm, objname, msg ,responseid)
{
	for(i = 0; i < document.forms[frm].length; i++)
	{
		if(document.forms[frm].elements[i].name == objname)
		{
			if(document.forms[frm].elements[i].checked == true) return true;
		}
	}

	document.getElementById(responseid).style.display='';				
	document.getElementById(responseid).innerHTML="<div class='floatleft'><img src='images/err.gif' align=\"middle\"></div><div  class='jsmsg'>&nbsp;"+msg+"</div>";
					
	return false;
}

function submitform(frm, action)
{
	if (action)
	{
		document.forms[frm].action = action;
	}
	document.forms[frm].submit();
	return true;
}
function submitformforseprate(frm, action,cmd)
{
	if (action)
	{
		document.forms[frm].action = action;
		document.forms[frm].task.value=cmd;
	}
	document.forms[frm].submit();
	return true;
}
function redirect(url)
{
	document.location.href = url;
	return true;
}

function nonspecialchar(varStr)
{
	var iChars = "`~!@#$%^&*()-=+\|,./?'\"[] {}";
	for (var i = 0; i < varStr.length; i++) 
	{
		if (iChars.indexOf(varStr.charAt(i)) != -1)
		{
            return false;
        }
	}
}

function emailCheck(emailStr, errormessage)
{
	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) 
	{
		return false;
	}
	
	var user=matchArray[1];
	var domain=matchArray[2];

	for (i=0; i<user.length; i++) 
	{
		if (user.charCodeAt(i)>127) 
		{
			return false;
		}
	}
	for (i=0; i<domain.length; i++) 
	{
		if (domain.charCodeAt(i)>127) 
		{
			return false;
   		}
	}

	if (user.match(userPat)==null) 
	{
		return false;
	}

	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) 
	{
		for (var i=1;i<=4;i++) 
		{
			if (IPArray[i]>255) 
			{
				return false;
   			}
		}
		return true;
	}

	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) 
	{
		if (domArr[i].search(atomPat)==-1) 
		{
			return false;
	   	}
	}

	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) 
	{
		return false;
	}

	if (len<2) 
	{
		return false;
	}

	return true;
}

function popUpscroll(URL, width, height) 
{
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,left=150,top=150,location=0,statusbar=0,menubar=0,resizable=0,width=" + width + ",height=" + height + "');");
}

function popUp(URL, width, height) 
{
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,left=150,top=150,location=0,statusbar=0,menubar=0,resizable=0,width=" + width + ",height=" + height + "');");
}

function checknumber(object)
{
	var x=object;
	var anum=/(^\d+$)|(^\d+\d+$)/;
	if (anum.test(x))
	{
		return true;
	}
	else
	{
		return false;
	}
}
function checkcurr(object)
{
	var x=object;
	var anum=/(^\d+$)|(^\d+\.\d+$)/;
	if (anum.test(x))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function trim (s)
{
	return rtrim(ltrim(s));
}

function ltrim (s)
{
	return s.replace( /^\s*/, "" );
}

function rtrim (s)
{
	return s.replace( /\s*$/, "" );
}

/**kiran*/
function check_selAll(element ,msg)
{
	
  var id = document.getElementsByName(element);
  var check = 0;
  for(var i = 0 ; i< id.length ; i++)
  {
    if(id[i].checked)
    {
      check = 1;
	  break;
    }
	else
	 check = 0;
  }

  if(check == 0) {
    alert(msg);
    return false;
  }
  return true;
}

function check_sel(element)
{
  var id = document.getElementsByName(element);
  var check = 0;
  var cnt = 0;
  for(var i = 0 ; i< id.length ; i++)
  {
    if(id[i].checked)
    {
      check = 1;
	  cnt = cnt + 1 ;
    }
  }

  if(check == 0) {
    alert("Please Select Record");
    return false;
  }
  if(cnt > 1) {
    alert("Please Select Only One Record");
    return false;
  }
  return true;
}

function checkAllBox(form,name,val)
{
  for( i=0 ; i<form.length ; i++)
   {
   	  if(form.elements[i].type =='checkbox' && form.elements[i].name == name)
  		  form.elements[i].checked = val;
   }
}


function checkimage(path)
{
	var ph_url = path
	var start_pos = ph_url.lastIndexOf(".")+1;// this function gives the possition of "." in ph_ulr
	var file_ext = ph_url.substring(start_pos);// this function gives the extention of file e.g .jpg , .txt .jpeg 
	if(file_ext.toLowerCase()!="jpg"  && file_ext.toLowerCase()!="gif" && file_ext.toLowerCase()!="jpeg" && file_ext.toLowerCase()!="png")
	{
		  return false;
	} 
}

function validatevideo(value)
{
	validformFile = /(.mpg|.mpeg|.wmv|.dat|.3gp|.rm|.avi|.flv|.mov|.ram|.rmvb|.swf)$/;
	if(!validformFile.test(value.toLowerCase()))
		return false;
}
function validatepdf(value)
{
	validformFile = /(.pdf)$/;
	if(!validformFile.test(value.toLowerCase()))
		return false;
}

function validateflash(value)
{
	validformFile = /(.swf)$/;
	if(!validformFile.test(value.toLowerCase()))
	   return false;
}

function validateaudio(value)
{
	validformFile = /(.mp3|.wmv|.wav|.wpl|.wma)$/;
	if(!validformFile.test(value.toLowerCase()))
	   return false;
}
 

function check_url(str)
{ 
  if(str)
    {
      var exp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
      var urlVal = exp.test(str);
	  return urlVal
   }
   else
     return false;
}

function check_selected_files(value)
{
	validformFile = /(.pdf|.doc|.jpg|.gif|.wav|.mp3|.wmv|.avi|.mpg)$/;
	if(!validformFile.test(value.toLowerCase()))
	   return false;
}

function check_selected_files_new(value)
{
	validformFile = /(.pdf|.doc|.jpg|.jpeg|.png|.gif|.xls)$/;
	if(!validformFile.test(value.toLowerCase()))
	   return false;
}



j=1;
function addnewrow(parm1,parm2,parm3,parm4)
{
 j++;
  if(document.getElementById(parm1))
  {
    var id = document.getElementById(parm1);
    var id1 = document.getElementById(parm2).cloneNode(true);
    id1.setAttribute('id','tblrow1');
    //id1.childNodes.item(0).innerHTML= j + ":";
    var abc = id.appendChild(id1);
    id = document.getElementsByName(parm3+"[]");
    id[eval(id.length-1)].value = "";
    id = document.getElementsByName(parm4+"[]");
    id[eval(id.length-1)].value = "";
  }
}


function check_resumeextension(value)
{
	validformFile = /(.doc|.rtf|.pdf)$/;
	if(!validformFile.test(value.toLowerCase()))
	   return false;
}

