/**
 * 实现静态站点的登陆面板信息显示的功能
 * create by bngoogle@sina.com 2009-9-25
 */
var gUcSiteUrl  = "";					//用户中心站点地址

//选择所属环境
var host = window.location.host;
var start = host.length - 3;
var suffix = host.substr(start, 3);
switch(suffix){
    case 'tab':
        gUcSiteUrl  = "http://my.account.91.tab/";					//用户中心站点地址
        break;
    case 'tmc':
        gUcSiteUrl  = "http://my.account.91.tmc/";					//用户中心站点地址
        break;
    case 'com':
    default:
        gUcSiteUrl  = "http://my.account.91.com/";					//用户中心站点地址
        break;
}


var gSvcUrl     = gUcSiteUrl + "port/js_svc.php?1";	
var gLogoutUrl  = gUcSiteUrl + '?controller=public&action=logout';


var gCurPageUrl = window.location.href;

//----------------------------------------------------------------------
//    2. 
//----------------------------------------------------------------------

// detect loged user's info.
//  (in fact we just need to fetch bookmark categores from server)
function show91UserInfo() {
	try{

		url = gSvcUrl + '&action=get_en91userinfo&s=' + (new Date()).getTime();

		requestSvc('bookmarkJs', url, 'callbackShow91UserInfo');
	}catch( err ){
		alert( "bookmark.js:addToBookmark" + " | " + err.description );
	}
}

// callbakc func of showMmoUserInfo
// - if logged in, then show loged user's info div; else show login url
function callbackShow91UserInfo(s) {
	var sJson = s.toString();
	eval("var oJson = " + sJson + ";");
	var res = oJson.result.trim();
	if ('not_logged' == res) {
		//未登陆
		showLogingUserPannel();
	} else if ('success' == res) {
		showLogedUserPannel(oJson.username, oJson.nickname, oJson.newPmNum, oJson.friendNum, oJson.photoScore, oJson.forumScore, oJson.helpScore, oJson.shellNum);
        
	} else {
		alert('error occured');
	}
}


//未登陆的用户: 显示登陆和注册链接
function showLogingUserPannel() {
	try{
		var inner = '';
		var _oDiv = document.getElementById('mmouser__infoDiv');
		var _signInUrl	= gUcSiteUrl + 'port/js_svc.php?1&action=go_en91login';
		var _signUpUrl = "https://account.91.com/common/signup_simple.aspx";
		
		inner += '<div class="signbefore">';
		inner += '<a href="' + _signInUrl + '" class="btn_signin">Sign In</a> | ';		
		inner += '<a href="' + _signUpUrl + '" class="btn_signup">Sign Up</a>';
		inner += '<br class="clear" />';
		inner += '</div>';
		
		if (!_oDiv) {
			_oDiv = document.createElement("div");
			_oDiv.id = "mmouser__infoDiv";
			document.getElementById("signbox").appendChild(_oDiv);
			_oDiv.innerHTML = inner;
		} else {
			_oDiv.style.display = 'block';	
		}

	}catch( err ){
		alert( "bookmark.js:showCatsDiv" + " | " + err.description );
	}
}
        
//已登陆的用户: 显示已经登陆的用户的信息
function showLogedUserPannel(username, nickname, newPmNum, friendNum, photoScore, forumScore, helpScore, shellNum) {
	try{
		var inner = '';
		var _oDiv = document.getElementById('mmouser__infoDiv');
        
		inner += '<div class="us91_logined_pub">';
		inner += 'Welcome,';
		inner += '<div onmouseout="setDisplay(\'sign_detail\',0);" onmouseover="setDisplay(\'sign_detail\',1);">';
		inner += '<a href="#" class="news_public_btn us91_drop"><span>'+nickname+'</span></a>';

		inner += '<div class="us91_drop_user" style="display:none;" id="sign_detail">';

		inner += '<p class="us91_details">';
		inner += '<span class="newspublic_i_shell">'+shellNum+'</span><span class="newspublic_i_msg">'+newPmNum+'</span>';
		inner += '</p>';
		inner += '<a class="user_1" href="https://account.91.com/common/index.aspx">Manage Account</a>';
		inner += '<a class="user_2" href="http://my.account.91.com/setting/basic.html">Edit Community Profile</a>';
		inner += '<a class="user_3" href="http://album.91.com/member/pic.php">My Screenshots</a>';
		inner += '<a class="user_4" href="http://album.91.com/member/myphoto.php">My Photos</a>';
		inner += '<a class="user_5" href="http://forum.91.com/recent_posts.php">My Threads</a>';
		inner += '<a class="user_6" href="http://help.91.com/member/user_info.php">My Questions</a>';
		inner += '<a class="user_7" href="http://points.91.com/">My Shells</a>';
		inner += '<a class="user_2" href="http://points.91.com/index.php?controller=MemberScore&action=Exchange">Exchange Points to Shells</a>';
		inner += '<a class="user_8" href="http://pm.account.91.com/Default.aspx">Send a Private Message</a>';		
		inner += '<a class="user_8" href="http://my.account.91.com/?controller=member_friend">Edit Friends List</a>';


		/*
		inner += '<ul>';
		inner += '<li>    <a class="user_1" href="https://account.91.com/common/">Manage Account</a>  </li>';
		inner += '<li>    <a class="user_2" href="' + gUcSiteUrl + 'setting/basic.html">Edit Community Profile</a>   </li>';
		inner += '<li>    <a class="user_3" href="http://album.91.com/member/pic.php">My Screenshots</a> 积分： '+photoScore+' </li>';
		inner += '<li>    <a class="user_4" href="http://album.91.com/member/myphoto.php">My Photos</a> 积分： '+ photoScore +'</li>';
		inner += '<li>    <a class="user_5" href="http://forum.91.com/recent_posts.php">My Threads</a> 积分：'+ forumScore+' </li>';
		inner += '<li>    <a class="user_6" href="http://help.91.com/member/user_info.php">My Questions</a> 积分：'+helpScore+' </li>';
		inner += '<li>    <a class="user_8" href="http://points.91.com/index.php">My Shells</a> 贝壳数：'+ shellNum+ '</li>';
		inner += '<li>    <a class="user_8" href="http://points.91.com/index.php?controller=MemberScore&action=Exchange">Exchange Points to Shells</a></li>';
		inner += '<li>    <a class="user_8" href="http://pm.account.91.com/Default.aspx">Send a Private Message</a> 新短信：'+ newPmNum+'</li>';
		inner += '<li>    <a class="user_8" href="' + gUcSiteUrl + 'friend/index">Edit Friends List</a> 好友数： '+ friendNum + '</li>';
		inner += '</ul>';
		*/
		
		inner += '</div>';

		inner += '</div>';

		inner += '<a class="us91_signout_pub" href="'+ gLogoutUrl + '">Sign Out</a>';
		inner += '<br class="clear"/>';
		inner += '</div>';
        
		if (!_oDiv) {
			_oDiv = document.createElement("div");
			_oDiv.id = "mmouser__infoDiv";
			document.getElementById("signbox").appendChild(_oDiv);
			_oDiv.innerHTML = inner;
		} else {
			_oDiv.style.display = 'block';	
		}
		//小程添加 2009.10.19
		if(document.getElementById("comment_user_info"))
	    {
	        document.getElementById("comment_user_info").innerHTML ="<strong>Login as:</strong>&nbsp;"+nickname+"&nbsp;&nbsp; <input type=\"hidden\" value=\""+nickname+"\" id=\"name\" name=\"name\"/><span id=\"loginout\">"+
			                                                        "<a href=\"http://my.account.91.com/public/logout\">Sign out</a></span>";
	    }

	}catch( err ){
		alert( "bookmark.js:showCatsDiv" + " | " + err.description );
	}
}

function showMmoUserItemList(open) {
	if (typeof(open) == 'undefined' || open==true) {
		document.getElementById('_mmouserItemList').style.display = "block";
	} else {
		document.getElementById('_mmouserItemList').style.display = "none";
	}
}


//显示
function setDisplay(id,open){
    _dis_obj = document.getElementById(id);
    if(_dis_obj){
        if(open == 1){
            _dis_obj.style.display = '';
        }else{
            _dis_obj.style.display = 'none';
        }
    }
}

//----------------------------------------------------------------------
//    3. common functions
//----------------------------------------------------------------------

//defautl callback function
function callbackFunc(s) { ;}

String.prototype.trim = function() {
	return this.replace(/(^\s*)|(\s*$)/g, '');
}

function requestSvc(id, url, funcName) {
	if (typeof(funcName) == 'undefined') { funcName = 'callbackFunc'; } 
	url += '&func_name=' + funcName;


	oScript = document.getElementById(id);
	var head = document.getElementsByTagName("head").item(0);
	if (oScript) {
		head.removeChild(oScript);
	}
	oScript = document.createElement("script");
	oScript.setAttribute("src", url);
	oScript.setAttribute("id",id);
	oScript.setAttribute("type","text/javascript");
	oScript.setAttribute("language","javascript");

	head.appendChild(oScript);
	return oScript;
}