// JavaScript Document

//Creating Ajax object
function createRequestObject()	{ 
		if (window.XMLHttpRequest)
			objXMLHttp=new XMLHttpRequest();
		else if (window.ActiveXObject)
			objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
		return objXMLHttp;
}

function keyword_search(){
	var type				= f.searchtype.value;
	var value = trim_All(document.getElementById("txtSearch").value).replace("&","`");
	if(trim_All(value).length > 0)	{
		if(isSplChar(value)!=true){
			if(parseInt(type)== 4 || parseInt(type)==5){
				var url="ProductsDetails.php?type="+type+"&search_value="+ltrim(value)+"&"+new Date().getTime();
				f.action = url;
				f.submit();
			}
			else {
				var url="ProductsIndexsearch.php?type="+type+"&search_value="+ltrim(value)+"&"+new Date().getTime();
				f.action = url;
				f.submit();
			}
		}
		else {
			alert('Please remove the special characters and search');
		}
	}
	else {
		alert("Please enter search text");
		return;
	}
	
}
function Switch(item1,OldChar,NewChar){
  var _ret="";
  var _flag=0;
  var _item=item1.split("");
	for(var i=0;i<_item.length;i++){
	if(!_flag&&_item[i]==OldChar){
	  _item[i]=NewChar;
	  _flag=_ONE;
	}
	_ret+=_item[i];
	}
	return(_ret);
}

function ltrim ( s ){
	return s.replace( /^\s*/, "" );
}
function trim_All( strValue ) {
 var objRegExp = /^(\s*)$/;
    if(objRegExp.test(strValue)) {
       strValue = strValue.replace(objRegExp, '');
       if( strValue.length == 0)
          return strValue;
    }
   objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
   if(objRegExp.test(strValue)) {
       strValue = strValue.replace(objRegExp, '$2');
    }
  return strValue;
}
/*Check for a special character'***/
function isSplChar(str){	
		var spchar, getChar, SpecialChar;		
		spchar="'()(\\~!@^*+\"|%:=<>";	
		getChar='Empty';	
		SpecialChar='No';	
		var spchars =" '( )  \\ ~ ! @ ^ & * + \" | : = < > "; 	
		var iChars = "!@#$%^*()+=[]\\\';,./{}|\":<>?";
		for (var i = 0; i < str.length; i++) {
			if (iChars.indexOf(str.charAt(i)) != -1) {
			SpecialChar='Yes';	
			break;		
			}
		}
		if (SpecialChar == 'Yes')	{
			return true;	
		}	
		else if (SpecialChar == 'No')	{		
			return false;	
		}
}
function search_enter(e) {
  if( !e ) {
    if( window.event ) {
      e = window.event;
    } else {
      return;
    }
  }
  if( typeof( e.keyCode ) == 'number'  ) {
      e = e.keyCode;
  } else if( typeof( e.which ) == 'number' ) {
      e = e.which;
  } else if( typeof( e.charCode ) == 'number'  ) {
      e = e.charCode;
  } else {
    return;
  }
  if(e==13) {
    keyword_search();
     return;
  }
}	
//QTY validations
var validateitem 	=	0;
var validateqty 	=	0;
var validateitem1 	=	0;
var validateqty1 	=	0;
var validatedata 	=	0;
var validatedata1 	=	0;
var qtyyflag 		= 	0;
var qtyyflag1 		= 	0;


function Qtycheck(qty1) {
	http = createRequestObject();
	http.onreadystatechange	=	queryres1; 
	var url="checkqty.php?qty="+trim_All(qty1)+"&"+new Date().getTime();
	http.open("GET",url);
	http.send(null);
}

function queryres1()	{
   if(http.readyState == 4) {
		var r	=	http.responseText;
		if(r==1){
			validateqty = 1;
		}
		 else{ 
			validateqty =0;
		}
   }
}
// Item Validations
function checkitem(val) {
	http = createRequestObject();
	http.onreadystatechange	=	queryres; 
	var url="checkproduct.php?item1="+trim_All(val)+"&"+new Date().getTime();
	http.open("GET",url);
	http.send(null);
}

function queryres()	{
   if(http.readyState == 4) {
		var r	=	http.responseText; 
		if(r == 0){
		 validateitem =1;
		 }
		else{ 
		validateitem =0;
		}
	}
}
	
//validate List name
function checklistname(page) {
	if(page=='B'){
		document.getElementById("listvalues1").value = -1;
	}
    http = createRequestObject();
	http.onreadystatechange	=	select_response; 
	url = "check_list.php?listname="+document.getElementById('list_name').value+"&"+new Date().getTime();
	//document.write(url);
	http.open("GET",url);
	http.send(null);
}
var validateitem =0;
var validateqty =0;
var validatelistname = 0;

function select_response()	{
	if(http.readyState == 4){
	var r=http.responseText;
		if(r!= 0){
		validatelistname = 1;
		}
		else {
		validatelistname =0 ;
		}		
	}
}
/// This function clear the text Box value
function clrDefault(idx) {
	var ctl1 = document.getElementById(idx);

	if (ctl1.value == itemDef) {
		ctl1.value = ""; 
	}
	ctl1.focus();
}
/// This function restores  the value to text Box 
function restoreDefault(idx) {
	var ctlItem = document.getElementById(idx);
	if (ctlItem.value == ""){
		ctlItem.value = itemDef;
	}
}

//This function is to add more text boxes

function addtextboxes(id,pagename)	{
	if(id==1)	{
		http = createRequestObject();
		http.onreadystatechange	=	first_response; 
		var url=pagename+"?id=1&ms="+new Date().getTime();
		http.open("GET",url);
		http.send(null);
	}
	if(id==2)	{
		http = createRequestObject();
		http.onreadystatechange	=	second_response; 
		var url=pagename+"?id=2&ms="+new Date().getTime();
		http.open("GET",url);
		http.send(null);
	}
}
	
function first_response()	{
   if(http.readyState < 4) {
		document.getElementById("firstdiv").innerHTML='<img src="images/loading.gif">';
	}
   else	{
	   var r=http.responseText;
	   document.getElementById("firstdiv").style.display = 'block';
	   document.getElementById("firstlink").style.display = 'none';
	   document.getElementById("secondlink").style.display = 'block';
	   document.getElementById("firstdiv").innerHTML=r;
	}
	  
}
		  
function second_response()  {
	if(http.readyState < 4) {
		document.getElementById("seconddiv").innerHTML='<img src="images/loading.gif">';
	}
	else{
		var r=http.responseText;
		document.getElementById("firstlink").style.display = 'none';
		document.getElementById("seconddiv").style.display = 'block';
		document.getElementById("secondlink").style.display = 'none';
		document.getElementById("thirdlink").style.display = 'block';
		document.getElementById("seconddiv").innerHTML=r;
	}
}	

//This function is used to add the item to shopping cart

function Quick_Bulk_addtocart(num_items,addlist)	{
	var f 				= document.forms['quickItemEntry'];
	document.getElementById('alertbar').style.display = "none";
	document.getElementById('alertbar1').style.display = "none";
	document.getElementById('alertbar2').style.display = "none";
	document.getElementById('alertbar3').style.display = "none";
	document.getElementById('alertbar4').style.display = "none";
	if(num_items==8){ 
		document.getElementById('alertbarcp').style.display = "none";
	}
	document.getElementById('alertbar7').style.display = "none";
	
	if(addlist=='addlists'){
		var listname 		= document.getElementById('list_name').value;
		var selectbox 		= document.getElementById("listvalues1").selectedIndex;
		var listid 			= document.getElementById("listvalues1").options[selectbox].value;
		var customer_id 	= f.customer_id.value;
		var hidval 			= f.hiddenvar.value ;
		document.getElementById('alertbar5').style.display = "none";
		document.getElementById('alertbar8').style.display = "none";
		document.getElementById('alertbar9').style.display = "none";
		document.getElementById('alertbar10').style.display = "none";
		document.getElementById('alertbar11').style.display = "none";
		document.getElementById('alertbar12').style.display = "none";
		document.getElementById('alertbar6').style.display = "none";
	}
	var url = '';
	if(document.getElementById("firstdiv").style.display == 'none' && 
		document.getElementById("seconddiv").style.display == 'none'){
		var url			= '';
		var string1		= '';
		var checkqty 	=	0;
		var i;
		var j;
		var flagqty 	= 	0;
		var flagqty1 	= 	0;
		var flagitem 	= 	0;
		var flagqty3 	= 	0;
		var checkflag 	=	0;
		var flagqtyi 	= 	0;
		for(var i=0;i<num_items;i++) {
				if((i%2) == 0) {
					 if(document.getElementById(eval('"'+i+'"')).value.length <= 0 &&
						(document.getElementById(eval('"'+(i+1)+'"')).value.length > 0 ||  
						document.getElementById(eval('"'+i+'"')).value ==  item_text)) {
					
						flagqty = 2;
					}
					else if(validateitem==1) { 
						checkflag = 1;
					}
				
					else if(isNaN(document.getElementById(eval('"'+i+'"')).value)|| 
							document.getElementById(eval('"'+i+'"')).value <= 0){
						checkqty 	= 	1;
						flagqty1	=	0;
				
					}
					else { 
						flagqty1 	= 	1;
						string1 	+= '@';
					}
				}
				else {
				
					 if((document.getElementById(eval('"'+i+'"')).value == '' || 
						document.getElementById(eval('"'+i+'"')).value ==  item_text) && 
						document.getElementById(eval('"'+(i-1)+'"')).value.length > 0) { 
							flagitem = 1;
					}
					else if((document.getElementById(eval('"'+i+'"')).value.length > 0 && 
							document.getElementById(eval('"'+i+'"')).value !=  item_text) && 
							document.getElementById(eval('"'+(i-1)+'"')).value =='' ) {
							flagqtyi = 2;
					}
					else {  
							flagqty3 = 1;
							string1 += ',';
						
					}
				}
				string1 += trim_All(document.getElementById(eval('"'+i+'"')).value.replace(item_text,""));
		
		}	
			
		if(checkqty == 1 && flagqty1 == 0 && checkflag == 0 ) {
			document.getElementById('alertbar').style.display = "block";
		}
		else if(flagqty == 2 && flagqty1 == 0 && checkflag == 0 ) { 
			document.getElementById('alertbar1').style.display = "block";
		}	
		else if(flagqtyi == 2) { 
			document.getElementById('alertbar1').style.display = "block";
		}							
		else if(flagitem == 1) {
			document.getElementById('alertbar3').style.display = "block";
		}
		else if(checkflag == 1){
			document.getElementById('alertbar4').style.display = "block";
		}
		else if(addlist=='addlists'){ 
			if(f.hiddenvar.value == '' || f.hiddenvar.value == -1) { 
				if(trim_All(listname).length <= 0){
					document.getElementById('alertbar12').style.display = "block";
				}
				else if(validateSpecialChars(listname)== false){
						alert('Please enter valid list name');
						document.getElementById('list_name').focus();
				}
				else if(trim_All(listname).length >32) {
					document.getElementById('alertbar10').style.display = "block";
				
				}
				else if(validatelistname ==1) {
					document.getElementById('alertbar11').style.display = "block";
				}
				else {  
					url = 'shopinsertpersonallist_bulk.php?string='+string1+'&listname='+listname+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}	
			}
			else {  
				if(f.hiddenvar.value !=-1 &&  trim_All(listname).length == 0 && checkqty == 1) {
					document.getElementById('alertbar2').style.display = "block";
				}
				else { 
					url='shopupdatepersonallist_bulk.php?string='+string1+'&listid='+listid+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}
			}
		}
		else {
			url = 'shopping_cart.php?string='+string1+'&action=check';
			f.action = url;
			f.submit();
		}
		
	}
	else if(document.getElementById("firstdiv").style.display == 'block' && 
		document.getElementById("seconddiv").style.display == 'none') {
		var url			= 	'';
		var string1		= 	'';
		var checkqty 	=	0;
		var i;
		var j;
		var flagqty 	= 	0;
		var flagqty1 	= 	0;
		var flagitem 	= 	0;
		var flagqty3 	= 	0;
		var checkflag 	=	0;
		var flagqtyi 	= 	0;
		var objRegExp  	=  /^(0|[0-9][0-9]*)$/;
		for(i=0;i<num_items;i++) {
			if((i%2) == 0) {
				if(document.getElementById(eval('"'+i+'"')).value.length <= 0 && 
				(document.getElementById(eval('"'+(i+1)+'"')).value.length > 0 ||  
				document.getElementById(eval('"'+i+'"')).value ==  item_text)) {
					flagqty = 2;
				}
				else if(validateitem==1) { 
					checkflag = 1;
				}
				else if(isNaN(document.getElementById(eval('"'+i+'"')).value)|| 
				document.getElementById(eval('"'+i+'"')).value <= 0){
					checkqty 	= 	1;
					flagqty1	=	0;
				
				}
				else { 
					flagqty1 = 1;
					string1 += '@';
				}
			}
			else {
			
				if((document.getElementById(eval('"'+i+'"')).value == '' || 
				document.getElementById(eval('"'+i+'"')).value ==  item_text) && 
				document.getElementById(eval('"'+(i-1)+'"')).value.length > 0) { 
					flagitem = 1;
				}
				else if((document.getElementById(eval('"'+i+'"')).value.length > 0 && 
				document.getElementById(eval('"'+i+'"')).value !=  item_text) && 
				document.getElementById(eval('"'+(i-1)+'"')).value =='' ) {
					flagqtyi = 2;
				}
				else {  
					flagqty3 = 1;
					string1 += ',';
				
				}
			}
			string1 += trim_All(document.getElementById(eval('"'+i+'"')).value.replace(item_text,""));
		}	
		if(checkqty == 1 && flagqty1 == 0 && checkflag == 0 ) {
			document.getElementById('alertbar').style.display = "block";
		}
		else if(flagqty == 2 && flagqty1 == 0 && checkflag == 0) {
			document.getElementById('alertbar1').style.display = "block";
		}
		else if(flagqtyi == 2) {
			document.getElementById('alertbar1').style.display = "block";
		}										
		else if(flagitem == 1) {
			document.getElementById('alertbar3').style.display = "block";
		}
		else if(checkflag == 1){
			document.getElementById('alertbar4').style.display = "block";
		}
		else if(addlist=='addlists'){
			if(f.hiddenvar.value == '' || f.hiddenvar.value == -1) {
				if(trim_All(listname).length <= 0){
					document.getElementById('alertbar12').style.display = "block";
				}
				else if(validateSpecialChars(listname)== false){
						alert('Please enter valid list name');
						document.getElementById('list_name').focus();
				}
				else if(trim_All(listname).length >32) {
					document.getElementById('alertbar10').style.display = "block";
				
				}
				else if(validatelistname ==1) {
					document.getElementById('alertbar11').style.display = "block";
				}
				else {  
					url = 'shopinsertpersonallist_bulk.php?string='+string1+'&listname='+listname+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}	
			}
			else {  
				if(f.hiddenvar.value !=-1 &&  trim_All(listname).length == 0 && checkqty == 1) {
					document.getElementById('alertbar2').style.display = "block";
				}
				else {
					url='shopupdatepersonallist_bulk.php?string='+string1+'&listid='+listid+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}
			}
		}
		else {  
			url = 'shopping_cart.php?string='+string1+'&action=check';
			f.action = url;
			f.submit();
		}
	}
	else if(document.getElementById("seconddiv").style.display == 'block' && 
		document.getElementById("firstdiv").style.display ==    'block') {
		var url			= '';
		var string1		= '';
		var checkqty 	=	0;
		var i;var j;
		var flagqty 	= 	0;
		var flagqty1 	= 	0;
		var flagitem 	= 	0;
		var flagqty3 	= 	0;
		var checkflag 	=	0;
		var flagqtyi 	= 	0;
		var objRegExp  =  /^(0|[0-9][0-9]*)$/;
		for(i=0;i<num_items;i++) {
				if((i%2) == 0) {
					if(document.getElementById(eval('"'+i+'"')).value.length <= 0 && 
					(document.getElementById(eval('"'+(i+1)+'"')).value.length > 0 || 
					document.getElementById(eval('"'+i+'"')).value ==  item_text)) {
						flagqty = 2;
					}
					else if(parseInt(validateitem)==1) { 
						checkflag = 1;
					}
					else if(isNaN(document.getElementById(eval('"'+i+'"')).value) || 
					document.getElementById(eval('"'+i+'"')).value <= 0){
						checkqty = 1;
						flagqty1=0;
					
					}
					else { 
						flagqty1 = 1;
						string1 += '@';
					}
				}
				else {
					if((document.getElementById(eval('"'+i+'"')).value == '' || 
					document.getElementById(eval('"'+i+'"')).value ==  item_text) && 
					document.getElementById(eval('"'+(i-1)+'"')).value.length > 0) { 
						flagitem = 1;
					}
					else if((document.getElementById(eval('"'+i+'"')).value.length > 0 && 
					document.getElementById(eval('"'+i+'"')).value !=  item_text) && 
					document.getElementById(eval('"'+(i-1)+'"')).value =='' ) {
						flagqtyi = 2;
					}
					else {  
						flagqty3 = 1;
						string1 += ',';
					}
				}
				string1 += trim_All(document.getElementById(eval('"'+i+'"')).value.replace(item_text,""));
		}	
		
		if(checkqty == 1 && flagqty1 == 0 && checkflag == 0 ) {
			document.getElementById('alertbar').style.display = "block";
		}
		else if(flagqty == 2 && flagqty1 == 0 && checkflag == 0) {
			document.getElementById('alertbar1').style.display = "block";
		}
		else if(flagqtyi == 2) {
			document.getElementById('alertbar1').style.display = "block";
		}										
		else if(flagitem == 1) {
			document.getElementById('alertbar3').style.display = "block";
		}
		else if(checkflag == 1){
			document.getElementById('alertbar4').style.display = "block";
		}
		else if(addlist=='addlists'){
			if(f.hiddenvar.value == '' || f.hiddenvar.value == -1) {
				if(trim_All(listname).length <= 0){
					document.getElementById('alertbar12').style.display = "block";
				}
				else if(validateSpecialChars(listname)== false){
						alert('Please enter valid list name');
						document.getElementById('list_name').focus();
				}
				else if(trim_All(listname).length >32) {
					document.getElementById('alertbar10').style.display = "block";
				
				}
				else if(validatelistname ==1) {
					document.getElementById('alertbar11').style.display = "block";
				}
				else {  
					url = 'shopinsertpersonallist_bulk.php?string='+string1+'&listname='+listname+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}	
			}
			else {  
				if(f.hiddenvar.value !=-1 &&  trim_All(listname).length == 0 && checkqty == 1) {
					document.getElementById('alertbar2').style.display = "block";
				}
				else {
					url='shopupdatepersonallist_bulk.php?string='+string1+'&listid='+listid+'&customerid='+customer_id+'&action=check';
					f.action = url;
					f.submit();
				}
			}
		}
		else {  
			url = 'shopping_cart.php?string='+string1+'&action=check';
			f.action = url;
			f.submit();
		}
	}	

}

var agent 	= navigator.userAgent.toLowerCase();
var isNN 	= (agent.indexOf("netscape")!=-1);
var isOpera = (agent.indexOf("opera")!=-1);
var isIE 	= (agent.indexOf("msie") != -1);
function autoTab(eCtrl,len, e){
	eCtrl = document.all[eCtrl];
	var keyCode;
	var filter;
	if (isOpera | isIE){
		keyCode = e.keyCode;
		filter = [0,8,9,16,17,18,37,38,39,40,46];
	}
	else if (isNN){
		keyCode = e.which;
		filter = [0,8,9];
	}
	if(eCtrl.value.length >= len && !containsElement(filter,keyCode)){
		eCtrl.value = eCtrl.value.slice(0, len);
		eCtrl.form[(getIndex(eCtrl)+1) % eCtrl.form.length].focus();
	}
	function containsElement(arr, ele){
		var found = false, index = 0;
		while(!found && index < arr.length)
		if(arr[index] == ele)
		found = true;
		else
		index++;
		return found;
	}
	function getIndex(eCtrl)	{
		var index = -1, i = 0, found = false;
		while (i < eCtrl.form.length && index == -1)
		if (eCtrl.form[i] == eCtrl) index = i;
		else i++;
		return index;
	}
	return true;
}	
function validateSpecialChars(myStringID){
	var illegalChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
	var strToSearch = myStringID;
	for (var i = 0; i < strToSearch.length; i++)      {  	
		if (illegalChars.indexOf(strToSearch.charAt(i)) != -1)  {
			return false;  	
		}
    }
}

