// JavaScript Document

function toggleTab(id,submited) {
	var tabs = new Array('c_tab_1','c_tab_2','c_tab_3');
	var links = new Array('lnk_tab_1','lnk_tab_2','lnk_tab_3');
	if (submited) {
		document.getElementById('sf_wrap1').style.display = '';
		document.getElementById('sf_wrap2').style.display = 'none';
	} else {
		document.getElementById('sf_wrap1').style.display = 'none';
		document.getElementById('sf_wrap2').style.display = '';
	}
	for (var i in tabs) {
		if (tabs[i] == 'c_tab_'+id) {
			document.getElementById(tabs[i]).style.display = '';
			if (document.getElementById(links[i]))  {
				document.getElementById(links[i]).className = 'current';
			}
		} else {
			document.getElementById(tabs[i]).style.display = 'none';
			if (document.getElementById(links[i])) {
				document.getElementById(links[i]).className = '';
			}
		}
	}
}
function checkContactForm(o) {
	var obj = eval('document.'+o);
	var err = 'An error has occurred.\n\n';
	var eno = 0;
	
	if (obj.first_name) {
		if (trim(obj.first_name.value) == '') {
			eno ++;
			err += eno + '. Please enter your first name.\n';
		}
	}
	if (obj.last_name) {
		if (trim(obj.last_name.value) == '') {
			eno ++;
			err += eno + '. Please enter your last name.\n';
		}
	}
	if (obj.state) {
		if (trim(obj.state.value) == '') {
			eno ++;
			err += eno + '. Please enter your state/province.\n';
		}
	}
	if (obj.email) {
		if (trim(obj.email.value) == '') {
			eno ++;
			err += eno + '. Please enter your email address.\n';
		} else {
			if (!is_email(obj.email.value)) {
				eno += 1;
				err += eno + '. Please valid your email address.\n';
			}
		}
	}
	if (document.getElementById('fc_00N70000001oNpW')) {
		if (trim(document.getElementById('fc_00N70000001oNpW').value) == '') {
			eno ++;
			err += eno + '. Please select product group you are interested in.\n';
		}
	}
	if (eno > 0) {
		alert(err);
		return false;
	} else {
		return true;
	}
}
function AJAXRequest() {
	var xmlObj = false;
	var CBfunc,ObjSelf;
	ObjSelf=this;
	try { xmlObj=new XMLHttpRequest; }
	catch(e) {
		try { xmlObj=new ActiveXObject("MSXML2.XMLHTTP"); }
		catch(e2) {
			try { xmlObj=new ActiveXObject("Microsoft.XMLHTTP"); }
			catch(e3) { xmlObj=false; }
		}
	}
	if (!xmlObj) return false;
	this.method="POST";
	this.url;
	this.async=true;
	this.content="";
	this.callback=function(cbobj) {return;}
	this.send=function() {
		if(!this.method||!this.url||!this.async) return false;
		xmlObj.open (this.method, this.url, this.async);
		if(this.method=="POST") xmlObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		xmlObj.onreadystatechange=function() {
			if(xmlObj.readyState==4) {
				if(xmlObj.status==200) {
					ObjSelf.callback(xmlObj);
				}
			}
		}
		if(this.method=="POST") xmlObj.send(this.content);
		else xmlObj.send(null);
	}
}

function changeCountry(country,stateid) {
	var param;
	var statewrap;
	if (country == 'CANADA') {
		param = 'canada';
	} else if (country == 'UNITED STATES') {
		param = 'usa';
	} else {
		param = '';
	}
	var ajax = new AJAXRequest();
	ajax.url = 'fileadmin/scripts/getstates.php?country='+param+'&state='+stateid+'&'+Math.floor(Math.random()*1000000000);
	ajax.method = 'GET';
	ajax.callback=function(ajaxobj) {
		statewrap = stateid+"Wrap";
		document.getElementById(statewrap).innerHTML = ajaxobj.responseText;
	}
	ajax.send();
}
function initStates() {
	var country_s = new Array('country','b_country','s_country');
	var state_s = new Array ('state','b_state','s_state');
	for (var i=0; i<3; i++) {
		var country = document.getElementById(country_s[i]);
		var state = document.getElementById(state_s[i]);
		if (country && state) {
			changeCountry(country.value.toUpperCase(),state_s[i]);
		}
	}
}
/**************************/
var orderform = new Array('user','address','city','state','postcode','country','phone','email');
var ordererrorm = new Array('Please enter your name.', 'Please enter your address.','Plase enter your city.',
							'Please enter your state.','Plase enter your postcode.','Plase choose your country',
							'Plase enter your phone.','Plase enter your email'
							);
var no_error = false;
function validateOrder (step) {
	if (step == 1) {
		var choose_product = false;
		
		for (var i=1; i<21; i++) {
			var choose_pack = false;
			var enter_qty  = false;
			var right_qty = false;
			var tr_id = "product_"+i;
			var p_qty_id = "p_qty_"+i;
			var m_name = "product_m_"+i;
			for (var j=1; j<7; j++) {
				var radioid = "radio_"+i+"_"+j;
				if (_get(radioid)){
					if (_get(radioid).checked==true) {
						choose_pack = true;
						break;
					} 
				}
			}
			if (_get(p_qty_id)) {
				if (trim(_get(p_qty_id).value)) {
					enter_qty = true;
					if (is_num(_get(p_qty_id).value)) {
						right_qty = true;
					}
				}
			}
			
			if (choose_pack && enter_qty && right_qty){
				choose_product = true;
				no_error = true;
				removeClassName(tr_id,'tr_warning');
			} else if (!choose_pack && enter_qty && !right_qty) {
				choose_product = true;
				no_error = false;
				addClassName(tr_id,'tr_warning');
				window.location.hash = m_name;
				break;
			} else if (!choose_pack && !enter_qty)  {
				// nothing.
			} else {
				choose_product = true;
				no_error = false;
				addClassName(tr_id,'tr_warning');
				window.location.hash = m_name;
				break;
			}
		}
		if (!choose_product) {
			window.location.hash = 'm_errormessage';
			_get('errormessage').innerHTML ='<div class="error">Please choose the product and enter the QTY.</div>';
		} else {
			_get('errormessage').innerHTML ='';
		}
		if (no_error) {
			if (_get('cpu').checked==false && _get('delivery').checked==false) {
				addClassName('tr_picktype','tr_warning');
				no_error = false;
			} else {
				removeClassName('tr_picktype','tr_warning');
				no_error = true;
			}
		}
		if (no_error) {
			_get('step_1').style.display='none';
			_get('step_2').style.display='';
		}
	}
	//validate step 2
	if (step ==2 ) {
		if (!no_error) {
			validateOrder(1); 
			return;
		}
		var err = 'An error has occurred.\n\n';
		var eno = 0;
		if (_get('po')) {
			if (trim(_get('po').value) == '') {
				eno ++;
				err += eno + '. Please enter PO.#.\n';
			}
		}
		if (_get('contactname')) {
			if (trim(_get('contactname').value) == '') {
				eno ++;
				err += eno + '. Please enter your contact name.\n';
			}
		}
		var buyer_id;
		var shipto_id;
		for (var i=0; i<orderform.length; i++) {
			buyer_id = "b_"+orderform[i];
			if (_get(buyer_id)) {
				if (trim(_get(buyer_id).value) == '') {
					eno ++;
					err += eno +'. Company: '+ ordererrorm[i]+'\n';
				}
			}
		}
		if (_get('b_email')) {
			if (trim(_get('b_email').value)!= '' && !is_email(_get('b_email').value)) {
				eno += 1;
				err += eno + '. Company: Please valid your email address.\n';
			}
		}
		var checked = _get('sameaddress').checked;
		if (checked == false) {
			for (var i=0; i<orderform.length; i++) {
				shipto_id = "s_"+orderform[i];
				if (_get(shipto_id)) {
					
					if (trim(_get(shipto_id).value) == '') {
						eno ++;
						err += eno +'. Ship to: '+ ordererrorm[i]+'\n';
					}
				}
			}
			if (_get('s_email')) {
				if (trim(_get('s_email').value)!= '' && !is_email(_get('s_email').value)) {
					eno += 1;
					err += eno + '. Ship to: Please valid your email address.\n';
				}
			}
		}
		
		if (eno > 0) {
			alert(err);
			return false;
		} else {
			_get('null_blank').innerHTML='<input type="hidden" name="success_form" id="success_form" value="1" />';
			_get('productorderform').submit();
			return true;
		}
	}
}
function sync_buyer() {
	toggle_shipto_input();
	
}
function backToStep() {
	_get('step_1').style.display='';
	_get('step_2').style.display='none';
}
function toggle_shipto_input() {
	var inputid;
	var checked = _get('sameaddress').checked;
	for (var i in orderform) {
		inputid = "s_"+orderform[i];
		if (checked == true) {
			_get(inputid).disabled=true;
		} else {
			_get(inputid).disabled=false;
		}
		
	}
}
function resetform() {
	_get('productorderform').reset();
	for (var i=1; i<21; i++) {
		var tr_id = "product_"+i;
		removeClassName(tr_id,'tr_warning');
	}
}
function _get(id) {
	if (document.getElementById(id)) {
		return document.getElementById(id);
	} else {
		return false;
	}
}
function is_num(str) {
	return /^([1-9]+(\d+)?)$/.test(str);
}
function removeClassName(id,_class) {
	var str = _get(id).className;
	_get(id).className = str.replace(_class,'');
}
function addClassName(id,_class) {
	removeClassName(id,_class);
	_get(id).className = _get(id).className+" "+_class;
}

