﻿var ajaxPrevious;
var ajaxTimer=0;
var ajaxBypassFail=0;
var menuitems1=[];
var menuitems2=[];

if ($==null)
	document.getElementById('divMAContent').innerHTML='Failed loading prototype library.';

function ajaxOK(transport) {
	clearInterval(ajaxTimer);
	ajaxTimer=0;
	
	$('imgLoading').style.display='none';
}

function ajaxTimeout() {
	if (window.confirm("Request timed out. Retry?")) {
		sendRequest('','');
	} else {
		$('imgLoading').style.display='none';
	}
}

function nav(pid,hd) {
	$('imgLoading').style.display='inline';
	if (pid!='') {
		ajaxPrevious='cmd='+pid+(hd==''?'':'&'+hd);
		jsonPid=pid;
	}
	if (ajaxTimer!=0) clearInterval(ajaxTimer);
	ajaxTimer=setTimeout('ajaxTimeout()',10000);
	jsonResult='';
	new Ajax.Request("members/handler.asp",{method: 'post', postBody: ajaxPrevious, onComplete: ajaxOK});
}

function login() {
	e=document.forms[0].elements;
	nav('li','u='+e['em'].value+'&p='+e['pw'].value);
	return false;
}

function logout() {
	nav('lo','');
}

function updateUser(u) {
	if (u=='')
		$('spnMAStatus1').innerHTML=rc_notlogged;
	else
		$('spnMAStatus1').innerHTML=rc_logged1+u+rc_logged2;
}

function updateMenu(n,m) {
	if (n==1)
		mi=menuitems1;
	else
		mi=menuitems2;
	
	t='';
	for (c=0; c<mi.length; c++) {
		t+='[';
		if (c!=m) t+='<a href="javascript:void(0)" onclick="nav(\'uc\',\'sc='+mi[c][1]+'\')">';
		t+=mi[c][0];
		if (c!=m) t+='</a>';
		t+='] ';
	}
	$('divMenuItems'+n).innerHTML=t;
}

function showUpdate() {
	v=$('selProducts').value;
	
	if (v!='0') {
		nav('uc','sc=pu&pid='+v);
	}
}

function sendfile(n) {
	location.href='members/functions/usercommand_pu.asp?pid='+n+"&dl=1";
}

function updateDetails() {
	e=document.forms[0].elements;
	q='n='+e['n'].value+'&c='+e['c'].value+'&o='+e['o'].value+'&q='+e['q'].value+'&a='+e['a'].value;
	q+='&g='+(e['g'][0].checked?'m':e['g'][1].checked?'f':'');
	q+='&op='+e['op'].value+'&np='+e['np'].value+'&cp='+e['cp'].value;
	nav('uc','sc=md&u=1&'+q);
	return false;
}

function forgot() {
	nav('cp','');
	return false;
}

function forgot2() {
	e=document.forms[0].elements;
	nav('cp','t='+(e['t'][0].checked?'1':'2')+'&e='+e['e'].value+'&k='+e['k'].value);
	return false;
}

function forgot3() {
	e=document.forms[0].elements;
	nav('cp','u='+e['u'].value+'&v='+e['v'].value+'&a='+e['a'].value);
	return false;
}

function sendmail() {location.href="mailto:info@sortchinese.com";}

function updateStatus(t) {
	$('spnMAStatus1').innerHTML=t;
}

function rstep1() {
	e=document.forms[0].elements;
	nav('rg','t='+e['t'].value+'&k='+e['k'].value);
	return false;
}

function checkEMail(email) {
	gTLD=[
		'aero',
		'asia',
		'biz',
		'cat',
		'com',
		'coop',
		'edu',
		'gov',
		'info',
		'int',
		'jobs',
		'mil',
		'mobi',
		'museum',
		'name',
		'net',
		'org',
		'pro',
		'tel',
		'travel'
	];
	
	pass=1;
	
	// Non-valid chars test
	for (c=0; pass==1 && c<email.length; c++) {
		ch=email.charAt(c);
		if (ch<0x2b || ch>0x7e) pass=0;
	}
	
	parts=email.split('@');
	
	// address separator test
	if (parts.length==2 && parts[0].length>0) {
		dot=parts[1].lastIndexOf('.');
		
		// bad server test
		if (dot==-1)
			pass=0;
		else {
			// ccTLD test
			if (parts[1].length-dot!=3) { // .xx
				// gTLD test
				tld=parts[1].substr(dot+1);
				pass=0;
				
				for (c=0; pass==0 && c<gTLD.length; c++) {
					if (tld==gTLD[c]) pass=1;
				}
			}
		}
	} else
		pass=0;

	if (pass==0) {
		alert(rc_err_bademail);
		return false;
	}
	
	return true;
}

function rstep2() {
	e=document.forms[0].elements;
	if (e.length>5) {
		if (checkEMail(e['e'].value)) {
			t='t='+e['t'].value+
				'&k='+e['k'].value+
				'&n='+e['n'].value+
				'&cn='+e['cn'].value+
				'&e='+e['e'].value+
				'&g='+(e['g'][0].checked?'M':e['g'][1].checked?'F':'')+
				'&o='+e['o'].value+
				'&q='+e['q'].value+
				'&a='+e['a'].value;
			
			nav('rg',t);
		}
	} else {
		t='t='+e['t'].value+
			'&k='+e['k'].value+
			'&cn='+e['cn'].value;
		
		nav('rg',t);
	}
	return false;
}

if (isreg==0)
	nav('fp','');
else
	nav('rg','');
