var temp = window.location.host;
temp = temp.split('.');
var base_domain = temp[1]+'.'+temp[2];

function show_tab(id)
{
	for(i=1; i<=4; i++)
	{
		$("show_0"+i).src = "/Public/images/tabshow0"+ i +"_blur.gif";
		$("show_text0"+i).className = "show_none";
	}
	$("show_0"+id).src = "/Public/images/tabshow0"+ id +"_focus.gif";
	$("show_text0"+id).className = "show_text";
}

var LMMODE = '2';	//登陆模式 1家长 2学生 3老师
function loginMode(m)
{
	LMMODE = m;
	for (var i=1; i<=3; i++)
	{
		if (i===m)
		{	
			$('classlogin').className = 'titletab'+m;
			$('li_current_'+m).className = "li_current";
		}else{
			$('li_current_'+i).className = '';
		}
	}
}

function init_page()
{
	login_page();
}

function login_page()
{
	var url = '/Public/login/';
	var pars = '';
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: loginResponse, onFailure: reportError});
}

function loginResponse(originalRequest)
{
	var retcode = originalRequest.responseText;
	if (retcode == '-1')
	{
		window.location = 'http://passport.'+base_domain;
	}
	else
	{
		$('login_field').innerHTML = retcode;
	}
}

function reportError(request)
{
	alert('服务器正忙，请稍后！');
}


//检测手机号码
function isMobile(strMobile){
	var myreg = /^(((13[0-9]{1})|189|188|159|158|153)+\d{8})$/;
	if(!myreg.test(strMobile))
		return false;
	return true;
}

var logindHtml = '';
function login()
{
	/*var accountsType = 'u';
	var accounts = $F('accounts');
	if (isMobile(accounts)==true)
	{
		accountsType = 'm';
	}*/

	logindHtml = $('loginLoading').innerHTML;
	loadImg('loginLoading');

	var url = '/Public/dologin/';
	var pars = 'accounts='+$F('accounts')+'&password='+$F('password');
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: dologinResponse, onFailure: reportError});
}

function guestLogin()
{
	var url = '/Public/doLogin/';
	var pars = 'accounts=13912345678&password=xwgfangkemima';
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: dologinResponse, onFailure: reportError});
}

function dologinResponse(originalRequest)
{
	var retcode = originalRequest.responseText.evalJSON(true);

	$('loginLoading').innerHTML = logindHtml;
	
	
	if (retcode['loginType'] == "bj")
	{
		if (retcode['result'] == "1")
		{
			winOpen('http://bj.xwg.cc/Public/login', screen.width, screen.height);
		}
		else
		{
			alert(retcode['message']);
		}
	}
	else
	{
		if (retcode['xxtuid'])
		{
			winOpen(retcode['url'], screen.width, screen.height);
			login_page();
		}
		else
		{
			if (retcode['url'])
			{
				if (confirm(retcode['message']))
				{
					window.location = retcode['url'];
				}
			}
			else
			{
				alert(retcode['message']);
			}
		}
	}
}


function winOpen(url, w, h)
{
	//w宽 h高
	var s = 1;
	var target = "_newbox";

	var left=(screen.width-w)/2;
	var top=(screen.height-h)/2;
	var r = window.open(url,target,'width='+w+',height='+h+',top=0,left=0,toolbar=yes, menubar=yes, scrollbars=yes, resizable=yes,location=yes');
	r.focus();
	return r;
}

function logout()
{
	var url = '/Public/logout/';
	var pars = '';
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: logoutResponse, onFailure: reportError});
}

function logoutResponse(originalRequest)
{
	var retcode = originalRequest.responseText;
	if (retcode==1)
	{
		LMMODE = '2';	//登陆模式 1家长 2学生 3老师
		login_page();
	}
	
}
//new JS
function loadImg(x)
{
	$(x).innerHTML = '<img src="/Public/images/ajax-loader.gif" />处理中请稍候...';
}

var rid = 1;

function getRank(id)
{
	$('rank_'+rid).src = '/Public/images/tab0'+rid+'_blur.gif';
	rid = parseInt(id);
	$('rank_'+rid).src = '/Public/images/tab0'+rid+'_focus.gif';
	if (id != '8')
	{
		var url = '/Public/getRank/';
		id = id - 1;
		var pars = 'id='+id;
		var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: getRankResponse, onFailure: reportError});
	}
	else
	{
		var url = '/Public/getRankintro/';
		var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: getRankResponse, onFailure: reportError});
	}
}

function getRankResponse(originalRequest)
{
	var retcode = originalRequest.responseText;
	$('rank_field').innerHTML = retcode;
}

function setCookie(name,value)//两个参数，一个是cookie的名子，一个是值
{
	var Days = 30; //此 cookie 将被保存 30 天
	var exp  = new Date();
	exp.setTime(exp.getTime() + Days*24*60*60*1000);
	document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+";domain=.xwg.cc;path=/";
}

function getCookie(name)//取cookies函数        
{
	var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
	if(arr != null)
		return unescape(arr[2]);
	return null;
}

function delCookie(name)//删除cookie
{
	var exp = new Date();
	exp.setTime(exp.getTime() - 1);
	var cval=getCookie(name);
	if(cval!=null)
		document.cookie= name + "="+cval+";expires="+exp.toGMTString()+";domain=.xwg.cc;path=/";
}

//浮动层
var mlTM;
function showMoreLink(id, uid)
{
	if(mlTM) window.clearTimeout(mlTM);
	var div = document.getElementById('moreLinkDiv');
	if(!div){
		div = document.createElement('moreLinkDiv');
		div.id = 'moreLinkDiv';
		div.onmouseover = function(){
			if(mlTM){
				window.clearTimeout(mlTM);
			}
		}
		div.onmouseout = hiddenMoreLink;
		document.body.appendChild(div);
		$('moreLinkDiv').className = 'sidebar';
	}

	var content = '<ul>';
	content += '<li><a href="http://space.'+base_domain+'/Space/index/uid/'+uid+'" target="_blank"><img src="/Public/images/icon21.gif" /> 我的空间 </a></li>';
	content += '<li><a href="http://passport.'+base_domain+'/Stumanage/sendMail/touid/'+uid+'" target="_blank"><img src="/Public/images/icon22.gif"  /> 给我留言</a></li>';
	content += '<li><a href="javascript:addFriend('+uid+');"><img src="/Public/images/icon23.gif"  /> 加为好友</a></li>';
	content += '</ul>';
	div.innerHTML = content;
	var mlSpn = document.getElementById(id);
	var left = findPosX(mlSpn)+40;
	var top = findPosY(mlSpn);
	div.style.left = left+"px";
	div.style.top = top+"px";
	div.style.display = '';
}

function hiddenMoreLink()
{
	try{mlTM = window.setTimeout("document.getElementById('moreLinkDiv').style.display = 'none'",1000);}catch(e){}
}

//加为好友
function addFriend(uid)
{
	if (confirm('需要加此用户为好友吗？'))
	{
		var url = '/Public/addFriend/';
		var pars = 'uid='+uid;
		var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: addFriendResponse, onFailure: reportError});
	}
}

function addFriendResponse(originalRequest)
{
	var retcode = originalRequest.responseText;
	switch(retcode)
	{
		case '1':
			alert('添加好友成功！');
			break;
		case '-1':
			alert('不可添加自己为好友！');
			break;
		case '-2':
			alert('请先登录后再进行操作！');
			break;
		case '-3':
			alert('家长帐号不可进行操作，请使用学生帐号操作！');
			break;
		case '-4':
			alert('对方已经是你的好友！');
			break;
		default:
			alert('系统错误，请重试！'+retcode);
			break;
	}
	return true;
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x) curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
		curtop += obj.offsetTop;
		obj = obj.offsetParent;
		}
	}
	else if (obj.y) curtop += obj.y;
	return curtop;
}


function appendoc()
{
	var o = document.createElement('object');
	o.id = 'openOC';
	o.width = 1;
	o.height = 1;
	o.classid = 'clsid:2D360201-FFF5-11d1-8D03-00A0C959BC0A';
	document.body.appendChild(o);
}

function winopen(l,n,w)
{
	var o = $("openOC");
	if(o.DOM)
	{
		return o.DOM.Script.open(l,n,w);
	}
}

function startopen(popupURL, width, height)
{
	var tarnum = 'target'+Math.floor(Math.random()*1000000);
	var casalef = 'toolbar=0,location=0,titlebar=1,menubar=0,scrollbars=0,resizable=0,directories=0,status=1';
	var k = winopen(popupURL,tarnum,casalef+',left=0,top=0,width='+width+',height='+height);
	if (!k)
	{
		alert('点击没有反应？您的IE屏蔽了弹出窗口，请按住【Ctrl】键后再重新进入游戏。');
	}
}

function openGame(url, width, height)
{
	if (getCookie('token'))
	{
		startopen(url, width, height);
	}
	else
	{
		alert('请使用学生账户登录后进行答题！');
	}
}

//SNS

//显示隐藏信息
function disableHide(id)
{
	$(id).style.display = 'block';
}

//隐藏隐藏信息
function enableHide(id)
{
	$(id).style.display = 'none';
}

function trim(str){  //删除左右两端的空格
	return str.replace(/(^\s*)|(\s*$)/g, "");
}

function delHtmlTag(str){
	return str.replace(/<[^>]+>/g,"");//去掉所有的html标记
} 


//更换登录方式
function changeLogin(val)
{
	$('type').value = val;

	if (val == 'mobile')
	{
		$('login_text').innerHTML = '手机号码';
	}
	else
	{
		$('login_text').innerHTML = '电子邮件';
	}

	enableHide('login_type');
	checkME();
}

//check手机邮箱输入对应
function checkME()
{
	var login_type = $F('type');
	var login_string = $F('login_string');

	if (login_string != '')
	{
		if (login_type == 'mobile')
		{
			if (isMobile(login_string))
			{
				enableHide('login_li');
				return true;
			}
			else
			{
				$('login_error').innerHTML = '您输入的手机号码格式不正确';
				disableHide('login_li');
				new Effect.Highlight('login_string', { startcolor: '#ffff99', endcolor: '#ffffff' });
			}
		}
		else
		{
			if (isEmail(login_string))
			{
				enableHide('login_li');
				return true;
			}
			else
			{
				$('login_error').innerHTML = '您输入的电子邮件格式不正确';
				disableHide('login_li');
			}
		}	
	}
	else
	{
		$('login_error').innerHTML = '请输入登录信息';
		disableHide('login_li');
	}

	return false;
}

//检测电子邮件
function isEmail(strEmail)
{
	if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
		return true;
	else
		return false;
}

//检测手机号码
function isMobile(strMobile)
{
	var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
	if(!myreg.test(strMobile))
		return false;
	else
		return true;
}

function checkPasswd()
{
	var passwd = $F('passwd');
	
	if (passwd != '')
	{
		enableHide('passwd_li');
		return true;
	}
	else
	{
		$('passwd_error').innerHTML = '请输入密码';
		disableHide('passwd_li');
		new Effect.Highlight('passwd', { startcolor: '#ffff99', endcolor: '#ffffff' });
		return false;
	}
}

function checkLogin()
{
	if (!checkME())
	{
		return false;
	}

	if (!checkPasswd())
	{
		return false;
	}

	//loading init
	disableHide('loading_field');
	enableHide('submit_field');

	//Login values
	var rem = '';
	if ($F('remember'))
	{
		rem = 1;
	}

	var refer = '';
	try
	{
		if ($F('refer')	)
		{
			refer = $F('refer');
		}
	}
	catch (e)
	{
	}
	var login_type = $F('type');
	var login_string = $F('login_string');
	var passwd = $F('passwd');

	var url = '/Public/signin/';
	var pars = 'type='+login_type+'&val='+login_string+'&passwd='+passwd+'&remember='+rem+'&refer='+refer;
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: checkLoginResponse, onFailure: reportError});
}

function guestLogin()
{
	var refer = '';
	try
	{
		if ($F('refer')	)
		{
			refer = $F('refer');
		}
	}
	catch (e)
	{
	}
	var url = '/Public/signin/';
	var pars = 'type=mobile&val=13912345678&passwd=xwgfangkemima&remember=0&refer='+refer;
	var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars, onSuccess: checkLoginResponse, onFailure: reportError});
}

function checkLoginResponse(originalRequest)
{
	enableHide('loading_field');
	disableHide('submit_field');

	var retcode = originalRequest.responseText.evalJSON(true);

	if (retcode['result'] == '1')
	{
		window.location = 'http://i.xwg.cc'+retcode['url'];
	}
	else
	{
		if (retcode['url'])
		{
			if (confirm(retcode['message']))
			{
				window.location = 'http://i.xwg.cc'+retcode['url'];
			}
		}
		else
		{
			alert(retcode['message']);
		}
	}
}

function showFaces()
{
	for (var i=1; i<=60; i++)
	{
		loadImage(i, uids[i-1], titles[i-1]);
	}

	var int_temp = window.setInterval("appearFaces()",500)
}

function loadImage(id, uid, title)
{
	var url = 'http://upload.xwg.cc/uploadfiles/face/48/'+uid+'.gif';
	var img = new Image();
	img.src = url;

	if (img.complete)
	{
		faceHtml(id, uid, title);
		return;
	}

	img.onload = function()
	{
		faceHtml(id, uid, title);
	};
}

function faceHtml(id, uid, title)
{
	$('face_'+id).innerHTML = '<a href="http://i.xwg.cc/Space/index/uid/'+uid+'.html" title="'+title+'" target="_blank"><img src="http://upload.xwg.cc/uploadfiles/face/48/'+uid+'.gif" /></a>';
}

function appearFaces()
{
	var rand_num = parseInt(Math.random()*60+1);
	new Effect.Opacity('face_'+rand_num, { from: 0, to: 1 });
}

var toURL = '';

//遮盖层
function getMask()
{
	return "mask";//遮罩的id
}
function envelop(_id, divWidth, divHeight, plusHeight)
{	
	//mask遮罩层

	var newMask = document.createElement("div");
	newMask.id = getMask();
	newMask.style.position = "absolute";
	newMask.style.zIndex = "2";
	_scrollWidth = Math.min(document.body.scrollWidth,document.documentElement.scrollWidth);
	_scrollHeight = Math.max(document.body.scrollHeight,document.documentElement.scrollHeight);
	newMask.style.width = _scrollWidth + "px";
	newMask.style.height = _scrollHeight + "px";
	newMask.style.top = "0px";
	newMask.style.left = "0px";
	newMask.style.background = "#33393C";
	newMask.style.filter = "alpha(opacity=27)";
	newMask.style.opacity = "0.27";
	document.body.appendChild(newMask);
	
	disableHide(_id);//显示层
	envelopPlace(_id, divWidth, divHeight, plusHeight);
}
function envelopPlace(_id, divWidth, divHeight, plusHeight)//弹出层定位
{
	var newDivWidth = divWidth;
	var newDivHeight = divHeight;

	document.getElementById(_id).style.top = (document.documentElement.scrollTop + (window.screen.availHeight - newDivHeight)/2 - plusHeight) + "px";
	document.getElementById(_id).style.left = (document.body.scrollLeft + document.body.clientWidth/2 - newDivWidth/2) + "px";
}
function closeEnvelop()//关闭新图层和mask遮罩层
{
        document.body.removeChild(document.getElementById(getMask()));
}

var login_flag = 0;
function showLogin(obj)
{
	if (!login_flag)
	{
		var url = obj.href;
		url = url.split('http://');
		url = url[1];
		url = url.split('/');
		url = url[0];
		if (url == 'i.xwg.cc')
		{
			var refer = obj.href;
			refer = refer.substring(15, refer.length);
			refer = Base64.encode(refer);
			toURL = 'http://www.xwg.cc/Index/index/refer/'+refer;
			envelop('login_main', 446, 334, 40);
		}
		else
		{
			window.location = obj.href;
		}
	}
	else
	{
		window.location = obj.href;
	}
}

function login_Hide()
{
	enableHide('login_main');
	closeEnvelop();
}

function user_Login()
{
	window.location = toURL;
	return true;
}

function guest_Login()
{
	window.location = toURL+'/guest/1';
	return true;
}

var Base64 = {
 
	// private property
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
 
	// public method for encoding
	encode : function (input) {
		var output = "";
		var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = Base64._utf8_encode(input);
 
		while (i < input.length) {
 
			chr1 = input.charCodeAt(i++);
			chr2 = input.charCodeAt(i++);
			chr3 = input.charCodeAt(i++);
 
			enc1 = chr1 >> 2;
			enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
			enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
			enc4 = chr3 & 63;
 
			if (isNaN(chr2)) {
				enc3 = enc4 = 64;
			} else if (isNaN(chr3)) {
				enc4 = 64;
			}
 
			output = output +
			this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) +
			this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4);
 
		}
 
		return output;
	},
 
	// public method for decoding
	decode : function (input) {
		var output = "";
		var chr1, chr2, chr3;
		var enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
 
		while (i < input.length) {
 
			enc1 = this._keyStr.indexOf(input.charAt(i++));
			enc2 = this._keyStr.indexOf(input.charAt(i++));
			enc3 = this._keyStr.indexOf(input.charAt(i++));
			enc4 = this._keyStr.indexOf(input.charAt(i++));
 
			chr1 = (enc1 << 2) | (enc2 >> 4);
			chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
			chr3 = ((enc3 & 3) << 6) | enc4;
 
			output = output + String.fromCharCode(chr1);
 
			if (enc3 != 64) {
				output = output + String.fromCharCode(chr2);
			}
			if (enc4 != 64) {
				output = output + String.fromCharCode(chr3);
			}
 
		}
 
		output = Base64._utf8_decode(output);
 
		return output;
 
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}