function changesafecode() 
{
	url = '/include/safecode.php'+'?'+Math.random();
	G("authimg").src = url;
}


function checkInput(id) {
	G(id).style.backgroundColor='#ffffff';	
	switch (id) {
		case 'username':
			checkUsername();
			break;
		case 'email':
			checkEmail();
			break;
		case 'password_once':
			checkPwdOnce();
			break;
		case 'password_twice':
			checkPwdTwice();
			break;
		case 'safecode':
			checkSafecode();
			break;
	}
}

//及时检查输入内容，给出输入框的提示状态
function KeyupCheck(id) {
	switch (id) {
		case 'username':
			KeyupUsername();
			break;
		case 'password_twice':
			KeyupPwdTwice();
			break;
		case 'email':
			KeyupEmail();
			break;
		case 'safecode':
			KeyupSafecode();
			break;
	}
}


function checkUsername(){
	var username = $F('username');
	if(username == ""){
		setError('username_info','用户名不能为空，请重新输入。');
		return false;
	} else if(username.len() < 3 || username.len() > 20) {
		setError('username_info','用户名长度错误，应该在3-20个字符之间');
		return false;
	} else if(!username.match(/^\w+$/)){
		setError('username_info','用户名只能使用英文字母、数字和下划线，不能包含空格及其他特殊字符。');
		return false;
	} else {
		var url = "/index.php?mod=ajax&action=checkusername&username="+encodeURIComponent(username);
		getajax(url,'parseUserName',true);
	}
}

function parseUserName(requestStr){
	if(requestStr == '用户名可以注册') {
		changeStyle('username','Ok');
		changeStyle('username_info', 'OkMsg')
		setWord('username_info',requestStr);
		return true;
	} else {
		changeStyle('username','Error')
		changeStyle('username_info', 'ErrorMsg');
		setWord('username_info',requestStr);
		return false;
	}
}


//异步检查验证码
function checkSafecode() {
	var safecode = $F("safecode");
	var class_name = '';
	var url = "/index.php?mod=ajax&action=checksafecode&safecode="+encodeURIComponent(safecode);
	getajax(url,'parseSafeCode',true);
}

function parseSafeCode(requestStr){
	if(requestStr == '验证码输入正确') {
		changeStyle('safecode','Ok');
		changeStyle('safecode_info','OkMsg');
		setWord('safecode_info',requestStr);
		return true;
	} else {
		changeStyle('safecode','Error')
		changeStyle('safecode_info','ErrorMsg');
		setWord('safecode_info',requestStr);
		return false;
	}
}

//及时检查验证码输入，给出输入框的提示状态
function KeyupSafecode(){
	var safecode = $F('safecode');
	if(safecode == '') {
		changeStyle('safecode','Error');
		return false;
	} else if(safecode.length !=4) {
		changeStyle('safecode','Error')
		return false;
	}
	else {
		changeStyle('safecode','Ok')
		return true;
	}
}

//及时检查用户名长度，给出输入框的提示状态
function KeyupUsername(){
	var username = $F('username');
	if(username == '') {
		changeStyle('username','Error');
		return false;
	} else if(username.len() < 3 || username.len() > 20) {
		changeStyle('username','Error')
		return false;
	} else if(!username.match(/^\w+$/)){
		changeStyle('username','Error')
		return false;
	} else {
		changeStyle('username','Ok')
		return true;
	}
}

function checkSafe(pwd){
	if(pwd == '') {
		changeStyle('password_once','Error');
		return false;
	} else if(pwd.length<6){//密码位数小于6位，不安全
		changeStyle('mimasafe','mimasafe1');
		changeStyle('password_once','Error');
	} else if(pwd == G('membername').value){//密码和用户名相同，不安全
			changeStyle('password_once','Error');
			changeStyle('mimasafe','mimasafe1');
			return false;
	} else {
				var safe_1= (pwd.search(/[a-zA-Z]/)!=-1) ? 1 : 0;
				var safe_2= (pwd.search(/[0-9]/)!=-1) ? 1 : 0;
				var safe_3= (pwd.search(/[^A-Za-z0-9]/)!=-1) ? 1 : 0;
				var safe_all=safe_1+safe_2+safe_3;
				if(safe_all==1){//不安全
					changeStyle('mimasafe','mimasafe1');
				}else if(safe_all==2){//普通
					changeStyle('mimasafe','mimasafe2');
				}else if(safe_all==3){//安全
					changeStyle('mimasafe','mimasafe3');
				}
				changeStyle('password_once','Ok');
				return true;
		}
}

//检查密码输入,并及时给出输入框的提示状态
function checkPwdOnce()
{
	var pwd = '';
	pwd = $F('password_once');
	if(pwd == '') {
		setError('password_once_info','密码不能为空');
		changeStyle('password_once','Error');
		return false;
	} else if(pwd.length < 6 || pwd.length > 16) {
		setError('password_once_info','6-16位，建议使用英文字母加数字或符号组合提高密码安全度，不能和用户名一致');
		changeStyle('password_once','Error');
		return false;
	} else if(pwd == $F('membername')) {
		setError('password_once_info','密码不能和用户名一致');
		changeStyle('password_once','Error');
		return false;
	} else {
		changeStyle('password_once_info','OkMsg');
		changeStyle('password_once','Ok');
		setWord('password_once_info','密码输入正确');
		return true;
	}
}

//及时检查重复密码的输入，给出输入框的提示状态
function KeyupPwdTwice(){
	var pwd = '';
	pwd = $F('password_twice');
	if(pwd == '') {
		changeStyle('password_twice','Error');
		return false;
	} else if(pwd == $F('membername')) {
		changeStyle('password_twice','Error');
		return false;
	} else if($F('password_once') != pwd) {
		changeStyle('password_twice','Error');
		return false;
	}
	else {
		changeStyle('password_twice','Ok');
		return true;
	}
}
//检查核实密码
function checkPwdTwice()
{
	var pwd = '';
	pwd = $F('password_twice');
	if(pwd == '') {
		setError('password_twice_info','确认密码不能为空');
		changeStyle('password_twice','Error');
		return false;
	}
	if(pwd == $F('membername')) {
		setError('password_twice_info','密码不能和用户名一致');
		changeStyle('password_twice','Error');
		return false;
	}
	if($F('password_once') != pwd) {
		setError('password_twice_info','请再输入一遍您上面输入的密码，并确保两次输入一致');
		changeStyle('password_twice','Error');
		return false;
	} else {
		changeStyle('password_once_info','OkMsg');
		setWord('password_once_info','密码输入正确');
		changeStyle('password_twice_info','OkMsg');
		setWord('password_twice_info','密码两次输入一致');
		changeStyle('password_twice','Ok');
		return true;
	}
}

//及时检查电子邮件输入，给出输入框的提示状态
function KeyupEmail(){
	var email = $F('email');
	if(email == '') {
		changeStyle('email','Error');
		return false;
	}
	rs = email.match('^[0-9a-zA-Z-_.]+@[0-9a-zA-Z-_]+[.]{1}[0-9a-zA-Z-_]{2,4}');
	if(rs!= null) {
		changeStyle('email','Ok');
		return true;
	}
	else {
		changeStyle('email','Error');
		return false;
	}
}

//异步检查电子邮箱
function checkEmail(){
	var email = $F('email');
	if(email == '') {
		setError('email_info','邮箱地址不能为空');
		changeStyle('email','Error');
		return false;
	} else if($F('password_once') == $F('email')){
		changeStyle('mimasafe','mimasafe1');//如果设置的密码和邮箱一样，则提示密码不安全
		setError('email_info','为了您的帐户安全，请勿将密码设置和邮箱一样');
		return false;
	} else {
		checkSafe($F('password_once'));
	}
	var url = "/index.php?mod=ajax&action=checkemail&email="+encodeURIComponent(email);
	getajax(url,'parseEmail',true);
}


function parseEmail(requestStr){
	if(requestStr == '您的电子邮箱可以正常使用') {
		changeStyle('email','Ok');
		changeStyle('email_info', 'OkMsg')
		setWord('email_info',requestStr);
		return true;
	} else {
		changeStyle('email','Error')
		changeStyle('email_info', 'ErrorMsg');
		setWord('email_info',requestStr);
		return false;
	}
}


//检查表单是否完全符合要求可以提交数据
function doRegister()
{
	var arr;
	var user_error = 0;
	var class_error = 0;
	arr = new Array("username","password_once","password_twice","email","safecode");
	
	for(var j=0; j<arr.length; j++)
	{
		if(G(arr[j]).value == ''){//当用户还有有必填项没有填写的时候，不允许提交表单
			checkInput(arr[j]);
			user_error = user_error + 1;
		}
		if(G(arr[j] + '_info').className == 'ErrorMsg'){//当还有错误或警告提示而用户没有修改的时候，不允许提交表单
			class_error = class_error + 1;
		}
	}
	if(user_error == 0 && class_error == 0){
		G("registersubmit").disabled="disabled";
		G("registersubmit").value="正在注册中，请稍后......";
		var username = encodeURIComponent($F('username'));
		var password_once = encodeURIComponent($F('password_once'));
		var password_twice = encodeURIComponent($F('password_twice'));
		var email = encodeURIComponent($F('email'));
		var safecode = encodeURIComponent($F('safecode'));
		var url ="/index.php?mod=ajax&action=register";
		var requestUri = "username="+username+"&password_once="+password_once+"&password_twice="+password_twice+"&email="+email+"&safecode="+safecode;
		postajax(url,requestUri,"parseRegister",true);
	} else {
		alert("您填写的信息不符合规范，请按照页面中红色文字提示修改，谢谢！");
	}
	return false;
}

function parseRegister(requestStr){
	if(requestStr.indexOf("register_success") != -1){
		var v = requestStr.split('|');
		setcookie("username", v[1], 315360000);
		setcookie("user", v[1], 315360000);
		setcookie("userauth", encodeURIComponent(v[2]), 315360000);
		alert("恭喜，注册成功啦！\n点确定自动转到您的网址导航：\n http://www.3375.net/i/" + getcookie("username") + "\n别忘了将它设为您的浏览器主页哦。");
		window.location.href = "/i/" + getcookie("username");
	} else {
		alert(requestStr);
	}
	G("registersubmit").disabled=false;
	G("registersubmit").value="同意以下服务条款，提交注册信息";
}

var temp = '';
var temp2 = '';

function doLogin(){
	temp = $F('username');
	temp2 = $F('password');
	G("msgarea").innerHTML = "";
	if(temp == ""){
		G("msgarea").innerHTML = "请输入用户名！";
	}else if(temp2 == ""){
		G("msgarea").innerHTML = "请输入登陆密码！";
	} else {
		var url ="/index.php?mod=ajax&action=login";
		var requestUri = "username="+encodeURIComponent(temp)+"&password="+encodeURIComponent(temp2)+"&autologin="+G("autologin").checked;
		postajax(url,requestUri,"parseLogin",true);
	}
	return false;
}

function parseLogin(requestStr){
	if(requestStr == "login_success"){
		setcookie("username", temp, 315360000);
		setcookie("user", temp, 315360000);
		setcookie("userauth", encodeURIComponent(temp2), 315360000);
		G("msgarea").innerHTML = "恭喜，登陆成功啦！<br />正在转到您的个性网址导航:<a href='/i/"+getcookie("username")+"'><U>http://www.3375.net/i/" + getcookie("username") + "</U></a> ... <br />别忘了将它设为您的浏览器主页哦。";
		setTimeout("jumpToUrl('"+getcookie("username")+"')", 3000);
		
	} else if(requestStr == "username_not_exist"){
		G("msgarea").innerHTML = "用户名不存在！";
	} else {
		G("msgarea").innerHTML = "密码错误！";
	}
}

function jumpToUrl(username){
	window.location.href = "/i/" + username;
}
