// JavaScript Document

var field_main;
var one_item;
function do_blink(field)
{
	var errorcolor="#FFD802";
	field.focus();
	field.select();
	field.style.background=errorcolor;
    field_main=field;
}

function restore(field){
	var okcolour = "#FFFFFF";
	field.style.background=okcolour;
}

function temp(field)
{
	var okcolor="#ffffff";
	field_main.style.background=okcolor;
}

function validate(field)
{
	try
	{
		valiclass=field.getAttribute("valiclass");
		valimessage=field.getAttribute("valimessage");
		if(valiclass=="required"){
			req=field.getAttribute("req");
			pattern="\\w{"+req+",}";
			if(!field.value.match(pattern)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="crequired"){
			if (document.getElementById("paywith").value == 'card'){
				req=field.getAttribute("req");
				pattern="\\w{"+req+",}";
				if(!field.value.match(pattern)){
					alert(valimessage);do_blink(field);return false;
				}
			}
			else if (document.getElementById("paywith").value == 'cash'){
				return true;	
			}
			else{
				return false;	
			}
		}
		else if(valiclass=="email"){
			pattern="^\\w{1,}@\\w{1,}(\\.\\w{1,}){1,}$";
			if(!field.value.match(pattern)){
				alert(valimessage);do_blink(field);return false;
			}		
		}
		else if(valiclass=="number"){
			//alert ('item taken');
			if(isNaN(field.value)){
				alert(valimessage);do_blink(field);return false;
			}
			else {
			//	alert ('item passed');
				if(field.value.length>0){
					one_item = 1;
				}
			}	
		}
		else if(valiclass=="required_number"){
			if((field.value.length<1)||isNaN(field.value)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="phone"){
			if((field.value.length != 10)||isNaN(field.value)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="creditcard"){
			pattern="[0-9]{16}$";
			if(!field.value.match(pattern)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="zip"){
			pattern="[0-9]{5}$";
			if(!field.value.match(pattern)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="code"){
			pattern="[0-9]{3}$";
			if(!field.value.match(pattern)){
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="select"){	
			if(field.options[field.selectedIndex].text.toLowerCase()=="select"){
				alert(valimessage);
				field.focus();
				return false;
			}
		}
		else if(valiclass=="date"){
			pattern="[0-9]{4}\\-[1-9]{1,2}\\-[1-9]{1,2}$";
			if(!field.value.match(pattern))
			{
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="integer"){
			if(isNaN(field.value)||(field.value.indexOf(".")!=-1))
			{
				alert(valimessage);do_blink(field);return false;
			}
		}
		else if(valiclass=="picture"){
			if(field.value.length<1)
			{
				restore(field);
				return true;
			}
			values=field.value.toLowerCase();
			if(!ends_with(values,".jpg"))
			{
				alert(values+" is not a valid jpg file");do_blink(field);return false;
			}
		}
		else if(valiclass=="special-check-seller"){
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("special-seller").value == 'incorrect'){
				alert(valimessage);
				return false;
			}
			else if (document.getElementById("special-seller").value == 'correct'){
				return true;
			}
		}
		else if(valiclass=="special-state"){
			//alert (document.getElementById("ship_state_nonus").value);
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("personal_state").value == 'Select your state'){
				alert("Select your state!");
				return false;
			}
			else if (document.getElementById("ship_state").value == 'Select your state'){
				alert("Select your state!");
				return false;
			}
			else{
				return true;
			}
		}
		else if(valiclass=="special-personal-state"){
			//alert (document.getElementById("ship_state_nonus").value);
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("state").value == 'Select your state'){
				alert("Select your state!");
				return false;
			}
			else{
				return true;
			}
		}
		
		else if(valiclass=="special-scat"){
			//alert (document.getElementById("ship_state_nonus").value);
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("supercategory").value == ''){
				alert("Select the Heading for the category!");
				return false;
			}
			else{
				return true;
			}
		}
		
		else if(valiclass=="password"){
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("password").value == field.value){
				
			}
			else{
				alert(valimessage);
				return false;
			}
		}
		else if(valiclass=="special-creditcard"){
			//alert (document.getElementById.check_result.innerHTML);
			if (document.getElementById("paywith").value == 'card'){
				if ((document.getElementById("ccard").value == "Visa") || (document.getElementById("ccard").value == "Master Card")){
					if (document.getElementById("ccard_no").value.length == 16){
						restore(field);
						return true;
					}
					else{
						alert(valimessage);
						do_blink(field);
						return false;
					}
				}
				else if (document.getElementById("ccard").value == "American Express"){
					if (document.getElementById("ccard_no").value.length == 15){
						restore(field);
						return true;
					}
					else{
						alert(valimessage);
						do_blink(field);
						return false;
					}
				}
				else{
					alert(valimessage);
					return false;
				}
			}
			else if (document.getElementById("paywith").value == 'cash'){
				return true;	
			}
			else{
				return false;	
			}
		}
		else if(valiclass=="special-verify"){
			//alert (document.getElementById.check_result.innerHTML);
			if ((document.getElementById("ccard").value == "Visa") || (document.getElementById("ccard").value == "Master Card")){
				if (document.getElementById("ccard_verify").value.length == 3){
					restore(field);
					return true;
				}
				else{
					alert(valimessage);
					do_blink(field);
					return false;
				}
			}
			else if (document.getElementById("ccard").value == "American Express"){
				if (document.getElementById("ccard_verify").value.length == 4){
					restore(field);
					return true;
				}
				else{
					alert(valimessage);
					do_blink(field);
					return false;
				}
			}
			else{
				alert(valimessage);
				return false;
			}
		}
		
		else if (valiclass=="special_telephone"){
			var pattern1 = "[a-z]";
			var pattern2 = "[A-Z]";
			if (field.value.match(pattern2)){
				alert (valimessage);
				do_blink(field);
				return false;
			}
			if (!field.value.match(pattern1)){
				if ((!isNaN(field.value)) && (field.value.length==10)){
					//5559996662
					//correct
				}
				else if (field.value.length == 12){
					//Format: 123-456-7890
					apos=field.value.indexOf("-",0);
					bpos = field.value.indexOf("-",4);
					if (apos == 3 && bpos == 7) 
  					{
    					//correct
					}
					else {
						alert (valimessage);
						do_blink(field);
						return false;
					}
				}
				
				else if (field.value.length == 13){
						//Format: (123)456-7890
				
					apos=field.value.indexOf("(");
					bpos = field.value.indexOf(")");
					dpos = field.value.indexOf("-");
					if (apos == 0 && bpos == 4 && dpos ==8) 
  					{
    					// 
					}
					else {
						alert (valimessage);
						do_blink(field);
						return false;
					}
				}
			
				else if (field.value.length == 14){
					//Format: (123) 456-7890
					
					apos=field.value.indexOf("(");
					bpos = field.value.indexOf(")");
					cpos = field.value.indexOf(" ");
					dpos = field.value.indexOf("-");
					if (apos == 0 && bpos == 4 && cpos ==5 && dpos ==9) 
  					{
    					// correct
					}
					else {
						alert (valimessage);
						do_blink(field);
						return false;
						}
				}
			}
			else {
				alert(valimessage);
				do_blink(field);
				return false;
			}
		}	
		
		restore(field);
		return true;
	}
	catch(ex){
		alert(ex.message);
		return true;
	}
}

function call_validate(form,from,to)
{
//	alert (form.name);
	for(counter=from;counter<to;counter++)
	{
		bool=validate(form[counter]);
		if(!bool)
		{
			return false;
			break;
		}
	}
	if (form.name == "order_form"){
		if (one_item == 1){
			form.submit();
		}
		else{
			alert ("You have not selected any thing to order!");
		}
	}
	else{
		form.submit();
	}
}

function call_validate_ajax(form,from,to)
{
	for(counter=from;counter<to;counter++){
		bool=validate(form[counter]);
		if(!bool)
		{
			return false;
			break;
		}
	}
	return true;
}


/////////////////////
function getIndex(what,form) {
    for (var i=0;i<form.length;i++)
        if (what == form[i])
            return i;
    return -1;
}
////////////////////////////////////

function ends_with(hay,neddle)
{
	hay=hay.replace(/^\s*|\s*$/g,"");
	neddle_length=neddle.length;
	hay_length=hay.length;
	hay_part=hay.substring((hay_length-neddle_length),hay_length);
	return (hay_part==neddle)
}


function  enable_form(form,bools)
{
	for(counter=0;counter<form.length;counter++){
		form[counter].disabled=!bools;	
	}
}


function loading(bool)
{
	try
	{
		comp=document.getElementById("loading");
		if(bool){
			comp.style.visibility="visible";
		}
		else{
			comp.style.visibility="hidden";
		}
	}
	catch(d){
		alert(d.message);	
	}
}

function validate_range()
{
	//alert(validate_range.arguments.length);	
	for(counter=0;counter<validate_range.arguments.length;counter++){
		bool=validate(validate_range.arguments[counter]);
		if(!bool){
			return false;
		break;
		}
	}
	validate_range.arguments[0].form.submit();
	return true;
}

function delete_category(id,query)
{
	if(confirm("Are you sure you want to delete")){
		location.replace("delete_category.php?id="+id+"&"+query);	
	}
	return false;
}

function delete_mid_category(id,query)
{
	if(confirm("Are you sure you want to delete")){
		location.replace("delete_mid_category.php?id="+id+"&"+query);	
	}
	return false;
}


function delete_product(id,query)
{
	if(confirm("Are you sure you want to delete")){
		location.replace("delete_product.php?id="+id+"&"+query);	
	}
	return false;	
}


function delete_image(id,query)
{
	if(confirm("Are you sure you want to delete")){
		location.replace("delete_image.php?id="+id+"&"+query);	
	}
	return false;	
}


function delete_attribute(id,query)
{
	if(confirm("Are you sure you want to delete")){
		location.replace("delete_attribute.php?pops="+id+"&"+query);	
	}
	return false;	
}

function manage_payment(div)
{
	divdebit_card.style.visibility="hidden";
	divcheque.style.visibility="hidden";
	divmoney_order.style.visibility="hidden";
	div.style.visibility="visible";
}


function delete_confirm_sales(delte_where,delete_what,id,return_where,date1,date2)
{
	alert("Sales once deleted are not recoverable");
	bool=confirm("Are you sure you want to delete " + delete_what+" ?");
	if(bool)
	{
		location.replace("delete_sales.php?delete_where="+delte_where+"&id="+id+"&return_where="+return_where+"&datefrom="+date1+"&dateto="+date2);
		//alert("delete.php?delete_where="+delte_where+"&id="+id+"&return_where="+return_where+"&"+extra);
	}else
	{
		return false;	
	}
}
