﻿//index.js

var LIN_COOKIE = "lskey";
var LIN_COOKIE2 = "skey";
var LIN_COOKIE3 = "qquin";


var g_phi_t;
var bTheme;
var g_twitterMaxLen=200;
var ERR_LEN_INF='您最多可以发表'+g_twitterMaxLen+'个字符';
var bTheme = true ;

function indexonLoad()
{
	//window.setTimeout("ind_getina();", 100);
	ind_getina();	
}

function hv_lin()
{
	var vc = GetCookie(LIN_COOKIE);//$.cookie(LIN_COOKIE);
	var vc2 = GetCookie(LIN_COOKIE2);//$.cookie(LIN_COOKIE);
	var vc3 = GetCookie(LIN_COOKIE3);//$.cookie(LIN_COOKIE);
	if( vc.length > 0 || vc2.length > 0 || vc3.length > 0 )
	{
		return true ;
	}
	else
	{
		return false ;
	}
}

function dk_Gel(str)
{
	if(typeof(str) == "string")
	{
		return document.getElementById(str);
	}
	return null;
}

function GetCookie(sName)
{
	var aCookie = document.cookie.split("; ");
	for(var i=0; i < aCookie.length; i++)
	{
		var aCrumb = aCookie[i].split("=");
		if(sName == aCrumb[0])
		{
			var value = "";
			try
			{
				value = decodeURIComponent(aCrumb[1]);
			}
			catch(e)
			{
				value = unescape(aCrumb[1]);
			}
			return value;
		}
	}
	return "" ;
}

function setCursorPosToEnd(TextAreaName) {
	var TAName = document.getElementById( TextAreaName );

	if (TAName.createTextRange) {
		var range = TAName.createTextRange();
		//range.collapse(true);
		range.moveEnd('character', TAName.value.length);
		range.moveStart('character', TAName.value.length);
		range.select();
	} else if (TAName.selectionEnd) {
		TAName.selectionEnd = TAName.value.length;
	}
}

function indexinit()
{
	if( !hv_lin() )
	{
		dk_Gel("waitwhat").style.display = 'block';
		dk_Gel("index_pubdiv").style.display = 'none';
	}
	else
	{
		dk_Gel("index_pubdiv").style.display = 'block';
		dk_Gel("waitwhat").style.display = 'none';
	}
}

function contentKeyDown()
{
	if((event.ctrlKey&&(event.keyCode==13) )  || (event.altKey&&(event.keyCode==83)))
		index_pubMsg();
}

function onContentKeyUp()
{
	onContentChange();
}

function onContentChange()
{
	var content = $("#id_textContent").val();
	var blen = content.BLength();
	if(blen<=g_twitterMaxLen)
	{
		var leftLen = g_twitterMaxLen - blen;
		$("#word_num").text(leftLen);
		return true;
	}
	content = content.BTrunc(g_twitterMaxLen);
	$("#id_textContent").text(content);
	return false;
}

function index_pubMsg()
{
	var dest = "/vc1/publish/def";
	var content = $("#id_textContent").val();
	if(!content)
	{
		alert("请输入要发表的唠叨内容!");
		dk_Gel('id_textContent').focus();
		return false;
	}
	var signcheck = dk_Gel( "synqqsign" );
	if( signcheck )
	{
		if(signcheck.checked)
		{
			content = 'qm' + content;
		}
	}
	if(content.charAt(0)=='?')
		content = ' '+content;
    $.ajax({
	    type:"post",
	    url:dest,
	    data:{
		"con":content,
		"otype":"json"
		},
	    success:index_pubMsg_rp,
	    dataType:"json"
    });
}

function index_pubMsg_rp(json)
{
	var result = $.vs.checkJson(json, true);
	if(result == "o")
	{
    	var err = json["err"];
    	if( err == ERR_SUC )
    	{
    		pub_suc_hint();
    	}
    	else if( err == FRE_ERR )
    	{
    		alert( FRE_INF );
    	}
    	else if( err == NO_LIN )
    	{
    		willlogin();
    	}
    	else if( err == FAIL )
    	{
    		alert( SYS_ERR_INF );
    	}
    	else if( err == CONT_DIRTY )
    	{
    		alert( DIRTY_INF );
    	}
    	else if( err == ERR_LEN )
    	{
    		alert(ERR_LEN_INF);
    	}
    	else
			{
				alert( SYS_ERR_INF );
			}
	}
	else
	{
		alert( SYS_ERR_INF );
	}
}

//hint info after publish success
function pub_suc_hint()
{
	dk_Gel( "id_textContent" ).value = "" ;
	dk_Gel( "pub_hint_oper" ).style.display = "block" ;
	g_phi_t = window.setTimeout( "no_pub_hint();", 30000 );
}

function no_pub_hint()
{
	dk_Gel( "pub_hint_oper" ).style.display = "none" ;
}

function vs_getValue(node, name)
{
	var value = "";
	var n = node.selectSingleNode(name);	
	if(n)
	{
		value = n.text;
	}	
	return value;
}

//get inner href
function ind_getina()
{	
	var dest = "/cgi-bin/synfun";
	$.ajax({
	    type:"post",
	    url:dest,
	    data:{"otype":"json"},
	    success:ind_getina_rp	    
    });
}

function ind_getina_rp( txml )
{	
	if( txml == null )
	{
		return;
	}
	var node = txml.selectSingleNode( "root/info" ) ;	
	var h = vs_getValue( node, "h" ) ;
	var nm = vs_getValue( node, "nm" ) ;
	var ina = document.getElementById( "inhref" );
	if( ina && h.length>0 && nm.length>0 )
	{
		var s = "<a style=\"color:#FF0000;\" href=\"http://tapd.oa.com/?ref=/tencity/wikis/view/logview\" target=\"_blank\">";
		s += nm+'</a>';		
		ina.innerHTML = s;		
		ina.style.display = 'block';
	}
}

function setCursorPosToEnd(TextAreaName) {
	var TAName = document.getElementById( TextAreaName );

	if (TAName.createTextRange) {
		var range = TAName.createTextRange();
		//range.collapse(true);
		range.moveEnd('character', TAName.value.length);
		range.moveStart('character', TAName.value.length);
		range.select();
	} else if (TAName.selectionEnd) {
		TAName.selectionEnd = TAName.value.length;
	}
}

function canSetTheme()
{
	bTheme = true ;
}

function parseTmp(content, theme)
{
	var len = 4;
	var tmp = content.substr(0, len);
	if('/祈福/'==tmp  || '/思念/'==tmp)
	{
		return '/'+theme+'/' + content.substr(len, content.length-4);
	}
	return '/'+theme+'/' + content;
}

function setTheme( s )
{
	if( !bTheme )
	{
		return ;
	}

	if( !hv_lin() )
	{
		return;
	}

	bTheme = false ;
	var c = dk_Gel( "id_textContent" );
	if(s == "祈福" || s == "思念")
	{
		c.value =parseTmp(c.value, s);
		dk_Gel( "synqqsign" ).checked = true;
	}
	else
	{
		c.value = s + c.value;
			//c.value='热血筑长城，红心迎奥运！';
			//dk_Gel( "synqqsign" ).checked=true;
	}

	onContentChange();
	setCursorPosToEnd("id_textContent");
	if( s=='[]' )
	{
		//TAName.value.length
		if (c.createTextRange)
		{
			var range = c.createTextRange();
			range.move('character', 1);
			range.moveStart('character', 0);
			range.select();
		}
		else if (c.selectionEnd)
		{
			c.selectionEnd = c.value.length;
		}
	}
	window.setTimeout( "canSetTheme();", 600 );
}
