function byid(sId){return document.getElementById(sId);}
var Class = {create:function(){return function(){this.init.apply(this,arguments)}}}
function bindFun(o,fun){var ar=Array.prototype.slice.call(arguments).slice(2);return function(){return fun.apply(o,ar);};};
function addEvent(o,s,fun){o.attachEvent?o.attachEvent("on"+s,fun):o.addEventListener(s,fun,false);}
// 绑定QQ登录、注册浮层处理
function connectLoginWin(el,w,h){
	if(!document.getElementById(el)) return false;
	var o = document.getElementById(el),
	    mask = o.getElementsByTagName('div'),
		close = o.getElementsByTagName('i')[0],
	    ww = document.documentElement.offsetWidth || document.body.offsetWidth,
		wh = document.documentElement.clientHeight,
		ie6 = navigator.appName=='Microsoft Internet Explorer' && navigator.appVersion.split(';')[1].indexOf('MSIE 6.0')>0 ? true :false;
	mask = mask[mask.length-1];
	o.style.width = mask.style.width = ww+'px';
	o.style.height = mask.style.height = wh+'px';
	if(ie6){
		var t= document.body.scrollTop || document.documentElement.scrollTop;;
		o.style.width =mask.style.width = ww-24+'px';
		o.style.top = t +'px';
		try
		{
		addEvent(window,'scroll',function(){
			t = document.body.scrollTop || document.documentElement.scrollTop;
		    o.style.top = t +'px';
		})
			
		}
		catch (exx)
		{
			alert('window: ' + exx.message);
		}
	}
	addEvent(close,'click',function(){toggleWin(el);})
	
	var li = document.getElementById('loginType').getElementsByTagName('li'),
	    div = document.getElementById('loginCon').getElementsByTagName('div');
		for(var i=0;i<2;i++){
			show(i)
		}
	
	function show(n){
		addEvent(li[n],'mouseover',function(){
			for(var i=0;i<2;i++){
				li[i].className='';
				div[i].style.display='none';
			}
			li[n].className = 'on';
			div[n].style.display = 'block';
		})
	}
	return true;
}
// QQ连接绑定浮层的显示与隐藏处理
function toggleWin(el,third_source){
        if (!document.getElementById(el)) 
            return;
        var o = document.getElementById(el);
        o.style.display = o.style.display == 'none' ? 'block' : 'none';

		if (third_source != 'undefined' && o.style.display == 'block')
		{
			var third_source_arr = new Array("QQ","人人","新浪微博","开心001","支付宝");
			document.getElementById("loginWin_tips_div").innerHTML = "您好！已通过"+third_source_arr[third_source-1]+"成功登录，现在可以连接YOKA了！";
		}
}


// 输出页面中的登录、注册表单
function initConnect()
{
	var connect_login_qq = '<div id="connect_inner_iframe" style="display:none">';
connect_login_qq += '<input type="hidden" id="connect_from" value="" />';
connect_login_qq += '<iframe id="inner_post_iframe" name="inner_post_iframe" src="about:blank" style="width:400px;height:325px; display:none"></iframe>';
connect_login_qq += '</div>';
connect_login_qq += '<div id="divLoginWin" class="yoka_qqWin_loginBox" style="display:none;z-index:99999998; height:300px;">';
connect_login_qq += '		<div class="yoka_qqWin_loginWin" style="z-index:99999999;height:300px;">';
connect_login_qq += '			<div class="yoka_qqWin_loginConBox" style="height:262px; margin-top:15px;padding-top:7px;border-color:#777777">';
connect_login_qq += '			<dl class="yoka_qqWin_loginTit">';
connect_login_qq += '				<dt><i></i>连接YOKA</dt>';
connect_login_qq += '				<dd id="loginWin_tips_div">您好！已通过QQ成功登录，现在可以连接YOKA了！</dd>';
connect_login_qq += '			</dl>';
connect_login_qq += '			<div class="yoka_qqWin_loginType">';
connect_login_qq += '				<ul id="loginType">';
connect_login_qq += '					<li class="on"><b>YOKA用户</b>使用已有用户名连接</li>';
connect_login_qq += '					<li><b>非YOKA用户</b>注册新用户并连接</li>';
connect_login_qq += '				</ul>';
connect_login_qq += '			</div>';
connect_login_qq += '			<div class="yoka_qqWin_loginCon" id="loginCon" style="hight:140px">';
connect_login_qq += '				<div class="yoka_qqWin_logLeft" id="connect_div_login">';
connect_login_qq += '				<form id="connect_form_login" method="post" action="http://passport.yoka.com/login.php?redirect=1&from='+encodeURI('http://'+gRefHost+'/pageproxy.html?method=parent.connect_logined&opera_type=login')+'" onsubmit="return connect_submit();" target="inner_post_iframe">';
connect_login_qq += '					<dl><dt>用户名：</dt><dd><input type="text" name="username" id="connect_login_username" maxlength="32" /></dd></dl>';
connect_login_qq += '					<dl><dt>密&nbsp;&nbsp;码：</dt><dd><input type="password" name="password" id="connect_login_password" /><input type="hidden" name="error_url" value="http://'+gRefHost+'/pageproxy.html?method=parent.connect_logined&action=loginError&opera_type=login"/></dd></dl>';
connect_login_qq += '				</form>';
connect_login_qq += '				</div>';
connect_login_qq += '				<div class="yoka_qqWin_logRight" style="display:none" id="connect_div_regiester">';
connect_login_qq += '				<form id="connect_form_register" method="post" action="http://passport.yoka.com/doreg.php" onsubmit="return connect_submit();" target="inner_post_iframe">';
connect_login_qq += '					<div>';
connect_login_qq += '						<dl><dt>用户名：</dt><dd><input type="text" name="username" id="connect_regiester_username" maxlength="32" />';
connect_login_qq += '						<input type="hidden" id="connect_regiester_truename" name="truename" />';
connect_login_qq += '						<input type="hidden" value="1" name="redirect" id="redirect" />';
connect_login_qq += '						<input type="hidden" value="http://'+gRefHost+'/pageproxy.html?method=parent.connect_logined&opera_type=register" name="refer" />';
connect_login_qq += '						<input type="hidden" value="http://'+gRefHost+'/pageproxy.html?method=parent.connect_logined&action=regiestError&opera_type=register" name="from" />';
connect_login_qq += '						</dd></dl>';
connect_login_qq += '						<dl><dt>密&nbsp;&nbsp;码：</dt><dd><input type="password" name="password" id="connect_regiester_password" maxlength="32" /></dd></dl>';
connect_login_qq += '						<dl><dt>重复密码：</dt><dd><input type="password" name="password2" id="connect_regiester_password2" maxlength="32" /></dd></dl>';
connect_login_qq += '					</div>';
connect_login_qq += '					<div>';
connect_login_qq += '						<dl><dt>验证邮箱：</dt><dd><input type="text" name="email" id="connect_regiester_email" maxlength="32" /></dd></dl>';
connect_login_qq += '						<dl class="yoka_qqWin_yzm"><dt>验证码：</dt><dd><input type="text" name="seccode" id="connect_regiester_seccode" maxlength="4" /><input type="hidden" id="connect_regiester_check_key_1" name="checkkey" value=""/>';
connect_login_qq += '</dd><dd><img src="#" id="connect_regiester_image_code_1" height="21" /></dd><dd><a href="#" onclick="refresh_code();return false;" target="_self">刷新</a></dd></dl>';
connect_login_qq += '					</div>';
connect_login_qq += '					<ul>';
connect_login_qq += '					    <li><input type="checkbox" checked="checked" /></li>';
connect_login_qq += '					    <li>我已阅读并接受YOKA时尚网 <a href="http://passport.yoka.com/service.php" target="_blank">服务条款</a> 和 <a href="http://passport.yoka.com/privacy.php" target="_blank">隐私政策</a></li>';
connect_login_qq += '				    </ul>';
connect_login_qq += '				</form>';
connect_login_qq += '				</div>';
connect_login_qq += '			</div>';
connect_login_qq += '			<div class="yoka_qqWin_loginBtn" style="padding-top:5px"><input type="button" value="" onclick="connect_submit();return false;" /></div>';
connect_login_qq += '			</div>';
connect_login_qq += '			<span style="margin-top: 14px; display:none"></span>';
connect_login_qq += '		</div>';
connect_login_qq += '		<div class="yoka_qqWin_mask"></div>';
connect_login_qq += '		</div>';
//	alert(connect_login_qq);
	document.write(connect_login_qq);
/*
	var connect_div = document.createElement('div');
	connect_div.innerHTML = connect_login_qq;
	document.body.appendChild(connect_div);
*/
	loadConnectInfo();
}

function loadConnectInfo()
{
	try
	{
		if (connectLoginWin("divLoginWin",546,317) == false)
		{
			setTimeout(loadConnectInfo, 100);
			return;
		}
		if (document.getElementById('header_connect_qq'))
		{
			document.getElementById('header_connect_qq').style.display = '';
		}
	}
	catch (exx)
	{
//		alert(exx.message);
		setTimeout(loadConnectInfo, 100);
	}

}

// 初始化QQ连接代码
function loadConnectJs()
{
	document.write('<link rel="stylesheet" type="text/css" href="http://images.yoka.com/pic/div/2010/dlzc/loginWin.css"\/>');
//	document.write('<script src="http://ss1.yokacdn.com/www/login/j/login-connect.js" charset="utf-8"><\/script>');
	initConnect();
//	if(window.attachEvent) window.attachEvent('onload', initConnect); else window.addEventListener('load', initConnect, false);
}

var curentUser = _YOKA.Passport.getLoginUserInfo();

var myuid = curentUser['uid'];
var mynick = curentUser['username'];
var myuid_track = curentUser['track_uid'];
var mynick_track = curentUser['track_name'];
if (myuid == null || myuid == "" || myuid == "0" || myuid == 0)
{	// 加载QQ连接代码
	loadConnectJs();

}
else
{
	var alertStr = "";
	for (i in curentUser)
	{
		alertStr += i+":"+curentUser[i]+"\n";
	}
	//alert(alertStr);
}

































// login-connect.js 
var code_key = '';
function onFetchConnectCheckCode(check_code)
{
	code_key = check_code;
	document.getElementById('connect_regiester_check_key_1').value = check_code;
	document.getElementById('connect_regiester_image_code_1').src = "http://sec.yoka.com/checkcode/fetch_image.php?checkkey="+check_code+'&'+(new Date()).getTime();
}

function refresh_code()
{
	var script = document.createElement('script');
	script.type = 'text/javascript';
	script.src = 'http://sec.yoka.com/checkcode/fetch_code.php?oncomplete=onFetchConnectCheckCode';
	document.getElementsByTagName("head")[0].appendChild(script);
}

function check_code(){
	var obj = $$('#seccode');	
	var val = $$['trim']($("connect_regiester_seccode").value);
	if(val == ''){
		warning(obj, '请填写验证码');
		obj.focus();
		return false;
	}
}


//if (third_source == 1)
//{
//	var qzone_token = '';
//	var qzone_openid = '';
//	var qzone_signature = '';
//}
//else if (third_source == 2)
//{
//}
//else if (third_source == 3)
//{
//	var tsina_token = '';
//	var tsina_token_secret = '';
//}

// 连接中YOKA登录完成的回调
function connect_logined(params)
{	// 判断是否登录成功
	_YOKA.CookieManage.refresh();
	var userinfo = _YOKA.Passport.getLoginUserInfo();
	//alert(userinfo['uid']);
	//alert(gThirdSource);

	// 是登录还是绑定
	opera_type = params['opera_type'] ? params['opera_type'] : '';
	//alert("connect_logined:"+params['opera_type']);
	//alert("gThirdSource:"+gThirdSource);

	if (userinfo && userinfo['uid'])
	{	// 用户已经登录，进入绑定处理
		url = 'http://passport.yoka.com/login_third.php?action=login&opera_type='+opera_type+'&third_source='+gThirdSource;
		if (gThirdSource == 1)
		{
			url += '&oauth_token=' + qzone_token + '&oauth_token_secret=' + qzone_token_secret + '&timestamp=' + qzone_timestamp + '&oauth_vericode=' + qzone_vericode + '&openid=' + qzone_openid + '&oauth_signature=' + qzone_signature;
		}
		else if (gThirdSource == 2)
		{
			url += '&openid=' + renren_uid;
		}
		else if (gThirdSource == 3)
		{
			url += '&oauth_token=' + tsina_token + '&oauth_token_secret=' + tsina_token_secret;
		}
		else if (gThirdSource == 4)
		{
			url += '&openid=' + kx001_uid;
		}
		else if (gThirdSource == 5)
		{ // add by lxy 2011-05-03 alipay
			url += '&user_id=' + alipay_uid;
		}
		url += '&uid=' + userinfo['uid'] + '&refhost='+gRefHost;
		byid('inner_post_iframe').src = url;
	}
	else
	{	// 登录失败
		if (params['action'] == 'loginError')
		{
			if (params['error_code'] == 2)
			{
				alert('请输入正确的用户名');
				byid('connect_login_password').select();
			}
			else if (params['error_code'] == 4)
			{
				alert('用户名或密码错误，请重新输入');
				byid('connect_login_password').select();
			}
			else
			{
				alert('登录失败，请重新输入');
				byid('connect_login_password').select();
			}
		}
		else
		{
			if (params['error_code'] == 1)
			{
				alert('验证码错误');
			}
			else if (params['error_code'] == 2)
			{
				alert('系统错误');
			}
			else if (params['error_code'] == 3)
			{
				alert('密码不一致');
				byid('connect_regiester_password2').select();
			}
			else if (params['error_code'] == 4)
			{
				alert('密码为空或者太长');
				byid('connect_regiester_password').select();
			}
			else if (params['error_code'] == 5)
			{
				alert('邮件格式不正确');
				byid('connect_regiester_email').select();
			}
			else if (params['error_code'] == 6)
			{
				alert('邮箱已经被使用');
				byid('connect_regiester_email').select();
			}
			else if (params['error_code'] == 7)
			{
				alert('IP重复注册');
			}
			else if (params['error_code'] == 11)
			{
				alert('用户名不合法');
				byid('connect_regiester_username').select();
			}
			else if (params['error_code'] == 12)
			{
				alert('用户名包含不允许注册的词语');
				byid('connect_regiester_username').select();
			}
			else if (params['error_code'] == 13)
			{
				alert('用户名已经存在');
				byid('connect_regiester_username').select();
			}
			else if (params['error_code'] == 14)
			{
				alert('填写的 Email 格式有误');
				byid('connect_regiester_email').select();
			}
			else if (params['error_code'] == 15)
			{
				alert('填写的 Email 不允许注册');
				byid('connect_regiester_email').select();
			}
			else if (params['error_code'] == 16)
			{
				alert('填写的 Email 已经被注册');
				byid('connect_regiester_email').select();
			}
			else if (params['error_code'] == 17)
			{
				alert('注册失败');
			}
			else
			{
				alert('注册失败');
			}
			refresh_code();
		}
	}
}

// 连接连接的表单提交
function connect_submit()
{	// 判断当前是登录还是注册
	if (byid('connect_div_login').style.display != 'none')
	{
		if (byid('connect_login_username').value.length < 2)
		{
			alert('请输入正确的用户名');
			byid('connect_login_username').focus();
			return false;
		}
		if (byid('connect_login_password').value.length < 6)
		{
			alert('请输入正确的密码');
			byid('connect_login_password').focus();
			return false;
		}
		byid('connect_form_login').submit();
	}
	else
	{	// 验证表单的输入信息是否合法
		if (byid('connect_regiester_username').value.length < 2)
		{
			alert('请输入正确的用户名');
			byid('connect_regiester_username').focus();
			return false;
		}
		if (byid('connect_regiester_password').value.length < 6)
		{
			alert('密码不能少于6位，请重新输入');
			byid('connect_regiester_password').select();
			return false;
		}
		if (byid('connect_regiester_password').value != byid('connect_regiester_password2').value)
		{
			alert('重复密码与密码不一致，请重新输入');
			byid('connect_regiester_password2').select();
			return false;
		}
		if (byid('connect_regiester_email').value.length < 6 || byid('connect_regiester_email').value.indexOf('@') < 1)
		{
			alert('请输入正确的验证邮箱');
			byid('connect_regiester_email').select();
			return false;
		}
		if (byid('connect_regiester_seccode').value.length != 4)
		{
			alert('请输入正确的验证码');
			byid('connect_regiester_seccode').select();
			return false;
		}
		byid('connect_regiester_truename').value = byid('connect_regiester_username').value;
		byid('connect_form_register').submit();
	}
	return false;
}

// 使用第三方连接登录
function toThirdLogin(third_source,forward_url)
{
	gThirdSource = third_source;
	gForwardUrl = forward_url ? forward_url : (location.href + '?t=' + (new Date()).getTime());

	//根据当前地址跳转	

	gRefHost = window.location.host;
	
	url = 'http://passport.yoka.com/login_third.php?third_source='+gThirdSource+'&refhost='+gRefHost;
	if (gThirdSource == 1)
	{
		width = 450;
		height = 320;
	}
	else if (gThirdSource == 2)
	{
		width = 660;
		height = 440;
	}
	else if (gThirdSource == 3)
	{
		width = 660;
		height = 440;
	}
	else if (gThirdSource == 4)
	{
		width = 660;
		height = 440;
	}
	else if (gThirdSource == 5)
	{
		width = 960;
		height = 640;
	}

	var newlogin_window = window.open(url,'_blank','width='+width+',height='+height+',menubar=0,scrollbars=0,status=1,titlebar=0,toolbar=0,location=1');
}

// 第三方完成后的回调
function third_logined(params)
{
	var third_source = params['third_source'];
	gThirdSource = third_source;
	if (third_source == 1)
	{
		qzone_token = params['oauth_token'];
		qzone_openid = params['openid'];
		qzone_signature = params['oauth_signature'];
		qzone_token_secret = params['oauth_token_secret'];
		qzone_timestamp = params['timestamp'];
		qzone_vericode = params['oauth_vericode'];
	}
	else if (third_source == 2)
	{
		renren_uid = params['openid'];
	}
	else if (third_source == 3)
	{
		tsina_token = params['oauth_token'];
		tsina_token_secret = params['oauth_token_secret'];

		if (typeof tsina_token != 'string')
		{
			alert(tsina_token);
			alert(tsina_token_secret);
		}
	}
	else if (third_source == 4)
	{
		kx001_uid = params['openid'];
	}
	else if (third_source == 5)
	{ // add by lxy 2011-05-03 alipay
		alipay_uid = params['user_id'];
	}


	refresh_code();

	try
	{
		toggleWin('divLoginWin',third_source);
	}
	catch (exx)
	{
		alert('third_logined : ' + exx.message);
	}
}

// 连接成功后的回调函数
function onConnectLogined(params)
{
	var url = decodeURIComponent(gForwardUrl);
	url = decodeURIComponent(url); //转码
	var onsuccess_js = document.getElementById('onsuccess_js').value;
	var redirect = document.getElementById('redirect').value;

	if(typeof(redirect)!='undefined' && redirect){
		if(typeof(onsuccess_js) != 'undefined' && onsuccess_js!=null && onsuccess_js!=""){
			onsuccess_js = onsuccess_js.replace(/(\_\_)/g,"'");
			eval('top.'+onsuccess_js);
		}else{
			top.location.href=url;
		}
	}else{
		
		top.location.href=reload();
	}
	
}

// YOKA账号已经登录
function onYokaLogined(params)
{
	alert("YOKA账号已经登录！");
	top.location.href = gForwardUrl;
}




