$("body").ready(function() {
    //讽北兜块睲埃︹璉春
    $('#AdvanceSearch_txtKeyword').bind('keypress', function() {
        $("#AdvanceSearch_txtKeyword").css({ "background-color": "#343434" });
    });
});

//Rainie's part: to control UI display
function onASKeydown(e)
{
    e = (window.event) ? window.event : e;
    if (e.keyCode == 13 || e.which == 13) //ieノkeyCode, ffノwhich
    {
        SetAdvanceConditionByGO();
        AJAXSearch();
    }
}

function DisplayAdjust(bAdvance)
{
	var sUrlPath = location.pathname.toLowerCase();
	var sUrlSrch = location.search.substring(1).toLowerCase();
	var arrUrlSrch = sUrlSrch.split("&");
	
	var menuitemCount = 0;
	var typeCount = 0;
	for(var i=0 ; i<arrUrlSrch.length ; i++)
	{
		arrUrlSrch[i] = arrUrlSrch[i].substring(0, arrUrlSrch[i].indexOf("="));
		
		if( arrUrlSrch[i] == "menuitem" )
		{
			menuitemCount = menuitemCount + 1;
		}
		else if( arrUrlSrch[i] == "type" )
		{
			typeCount = typeCount + 1;
		}
	}

	if( sUrlPath.indexOf("contentstore/content.aspx") != -1 && menuitemCount == 1 && typeCount == 1 ) // from Left Menu
	{
		$('#imgResultMsg').hide(); //
		$('#divLocationBar').show();
		$('#divBanner').show();
		$('#divSeeMore').show();
		$('#divSearchResult').show();
		//$("#DivWhatsHotSeeMore").show();
	}
	else
	{
		$('#divLocationBar').hide();
		$('#divBanner').show();
		$('#divSeeMore').hide();
		$('#divSearchResult').show();
		//$("#DivWhatsHotSeeMore").hide();
		
	}
	
	if( bAdvance ) //by Advance Search(璶留旅hot and banner)
	{
		$('#divSeeMore').hide();
		$('#imgResultMsg').show(); //from Quick/Advance search
		$('#imgMoreMsg').hide(); //from Quick/Advance search
		$('#divSearchResult').show();
		//$("#DivWhatsHotSeeMore").hide();
	}
}

//陪ボтぃヴ癘魁癟
function showEmptyMsg()
{
	var sMsgSetting = "No search results found. "; //RainiePS:叫硂砞﹚陪ボ癟
	var sMsgShow = "<div id='divSrchMsg' class='SrchMsg'>" + sMsgSetting + "<div>";
	document.getElementById("divContentList").innerHTML = sMsgShow;
}

//F5陪ボSearch ResultオàKeyword > xxx
function showKeyWord() {
	var str = $("#tbCondition").val();
	var sArgu = "QKeyword=";
	if( str.indexOf(sArgu) >= 0 )
	{
		var sKeyword = getParamValue(str, sArgu)		
		var sMsgShow = "<a href='default.aspx' class='Plink'>Keyword</a> &raquo; <b>" + decodeURIComponent(sKeyword.replace(/\+/g," ")) + "</b>";
		document.getElementById("divKeywordBar").innerHTML = sMsgShow;		
		if( sKeyword != "" )
		{
			return;
		}
	}
	
	var sArgu = "QAuthorName=";
	if( str.indexOf(sArgu) >= 0 )
	{
		var sKeyword = getParamValue(str, sArgu)
		var sMsgShow = "<a href='default.aspx' class='Plink'>Author</a> &raquo; <b>" + decodeURIComponent(sKeyword.replace(/\+/g," ")) + "</b>";
		document.getElementById("divKeywordBar").innerHTML = sMsgShow;		
	}
}

function getParamValue(str, ParamName)
{
	if( str.indexOf(ParamName) >= 0 )
	{
		var nStartIndex = str.indexOf(ParamName)+ParamName.length;
		var nEndIndex = str.indexOf("&",nStartIndex);
		var sKeyword = "";
		if( nEndIndex < 0 )
		{
			sKeyword = str.substring(nStartIndex);
		}
		else
		{
			sKeyword = str.substring(nStartIndex,nEndIndex);
		}
		return sKeyword;
	}
	return "";
}

//Jay's part: to display search result
var ajaxDefault;
var ajaxPaging;
var ajaxSearch;
var totalCondition;
function xmlhttp()
{					
	xmlhttpreq = false;
    
    if (window.XMLHttpRequest)  //Mozilla,Safari...
    {
        xmlhttpreq = new XMLHttpRequest();
    }
    else if (window.ActiveXObject)  // IE
    {
        try {
            xmlhttpreq = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
        
			try {
			xmlhttpreq = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
        }
    }

    if(!xmlhttpreq)                    
    {                       
        alert('Cannot create an XMLHTTP instance');
        return false;
    }
    else
    {
        return xmlhttpreq;
    }
}

//Quick Search┪F5穦磅︽ㄧ计 (Content.aspx)
function Default() {
    ajaxDefault = xmlhttp();
    var vPage = 1;
    var vPageSize = 15;
    var vRowItem = 5;

    var params = $('#tbCondition').val();
    //alert(params);
    var requestString = "AJAXContentQuery.aspx?timeStamp=" + new Date().getTime() +"&Page=" + vPage + "&PageSize=" + vPageSize + "&RowItem=" + vRowItem;
    //alert(requestString);
	ajaxDefault.open('POST', requestString, true);
	ajaxDefault.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  	
	ajaxDefault.onreadystatechange = catchDefaultXML;
	ajaxDefault.send(params);
}
function catchDefaultXML()
{
	if (ajaxDefault.readyState != 4)  
	{ 
	    document.getElementById("divLoading").innerHTML="Loading...";  	    
	}
	else if (ajaxDefault.readyState == 4)
	{
	    document.getElementById("divLoading").innerHTML="";	    
	}
	if (ajaxDefault.readyState==4 && ajaxDefault.status == 200)  
	{ 						
		var msg = ajaxDefault.responseText;     		
        document.getElementById("divContentList").innerHTML=msg;
        if( $.trim(msg) == "" )
		{
			showEmptyMsg();
		}
	}
}

//Search Resultだ
function AJAXPaging(vPage, vPageSize, vRowItem) {
    //alert('paging');
	//矪瞶琩高把计
	//var params = document.getElementById("tbCondition").value; //Rainie PS:璝琌from Advance search 传传┮眔condition穦ぶAdvance condition
	var params = AddAdvanceCondition();
	//alert("rainietest #180 params=" + params);
	//alert("rainietest #181 vPage=" + vPage + " vPageSize=" + vPageSize + " vRowItem=" + vRowItem);
	ajaxPaging = xmlhttp();	
	var requestString = "AJAXContentQuery.aspx?timeStamp=" + new Date().getTime() + "&Page=" + vPage + "&PageSize=" + vPageSize + "&RowItem=" + vRowItem;
	ajaxPaging.open('POST', requestString, true);
	ajaxPaging.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  	
	ajaxPaging.onreadystatechange = catchPagingXML;
	ajaxPaging.send(params);
	
	DisplayAdjust(true);
}
//倒See moreノ
function SeeMorePage(vPage, vPageSize, vRowItem, sType, sCate, sLang, nCount)
{        
	//alert('paging');
	//矪瞶琩高把计
	//var params = document.getElementById("tbCondition").value; //Rainie PS:璝琌from Advance search 传传┮眔condition穦ぶAdvance condition
	//var params = AddAdvanceCondition();
	//alert("rainietest #180 params=" + params);
	//alert("rainietest #181 vPage=" + vPage + " vPageSize=" + vPageSize + " vRowItem=" + vRowItem);
	/*ajaxPaging = xmlhttp();	
	var requestString = "AJAXSeeMore.aspx?timeStamp=" + new Date().getTime() + "&Page=" + vPage + "&PageSize=" + vPageSize + "&RowItem=" + vRowItem;
	ajaxPaging.open('POST', requestString, true);
	ajaxPaging.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  	
	ajaxPaging.onreadystatechange = catchPagingXML;
	ajaxPaging.send();

	DisplayAdjust(true);*/
	$.post("AJAXSeeMore.aspx",
		{
			Cmd: "Seemore",
			Type: sType,
			Cate: "ic",
			Count: 15,
			Lang: "1",
			Page: vPage,
			PageSize: vPageSize,
			RowItem: vRowItem
		},
		function (data) {
			$("#divSeeMore").html(data);
		},
		'html');
}

function catchPagingXML()
{
	if (ajaxPaging.readyState != 4)  
	{ 
	    document.getElementById("divLoading").innerHTML="Loading...";  	    
	}
	else if (ajaxPaging.readyState == 4)
	{
	    document.getElementById("divLoading").innerHTML="";	    
	}
	if (ajaxPaging.readyState==4 && ajaxPaging.status == 200)  
	{ 						
		var msg = ajaxPaging.responseText;
        document.getElementById("divContentList").innerHTML=msg;
		if( $.trim(msg) == "" )
		{
			showEmptyMsg();
		}
	}
}
var bCanAdvanceSearch = true;
var sAdvanceSearchTracking = "";

//Advance Search  (ぃ穦㊣ㄧ计)
function AJAXSearch()
{
	if( bCanAdvanceSearch )
	{
		//矪瞶琩高把计
		var params = AddAdvanceCondition();
		sAdvanceSearchTracking = params;
		//alert(params);
		var vPage = 1;
		var vRowItem = 5;
		var vPageSize = document.getElementById("tbPageSize").value;
		//alert("rainietest #219 vPageSize=" + vPageSize);
		ajaxSearch = xmlhttp();	
		var requestString = "AJAXContentQuery.aspx?timeStamp=" + new Date().getTime() + "&Page=" + vPage + "&PageSize=" + vPageSize + "&RowItem=" + vRowItem;
		ajaxSearch.open('POST', requestString, true);
		ajaxSearch.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  	
		ajaxSearch.onreadystatechange = catchSearchXML;
		ajaxSearch.send(params);
		
		DisplayAdjust(true);
	}
}
function catchSearchXML()
{
	if (ajaxSearch.readyState != 4)  
	{ 
	    document.getElementById("divLoading").innerHTML="Loading...";  	    
	}
	else if (ajaxSearch.readyState == 4)
	{
	    document.getElementById("divLoading").innerHTML="";	    
	}
	if (ajaxSearch.readyState==4 && ajaxSearch.status == 200)  
	{ 		
		var msg = ajaxSearch.responseText;     		
        document.getElementById("divContentList").innerHTML=msg;
        if( $.trim(msg) == "" )
		{
			showEmptyMsg();
		}
		
		var arrAdvanceNotNeedPara = new Array("QSubCategoryID","QTypeName","QCase");
		sAdvanceSearchTracking = "QSubCategoryID=AdvanceKeyword&" + forGAtrack(sAdvanceSearchTracking,arrAdvanceNotNeedPara);
		
		//alert("#257 rainietest sAdvanceSearchTracking: "+sAdvanceSearchTracking);  //陪ボ把计
        _gaq.push(['_trackPageview','/contentstore/?' + sHomeSearchTracking]);
	}
}

//穝糤Advance Search兵ン (F5穓碝だА穦ノ)
function AddAdvanceCondition() {
	var params = $("#tbCondition").val();
	//alert("params: "+params);

	//眔AdvanceSearch.ascx穓碝兵ン
	var AKeyword = $("#tbKeyword").val();
	var AThemeID = $("#tbThemeID").val();
	var ASearchField = $("#tbSearchField").val();
	var ASortBy = $("#tbSortBy").val();
	var APpagetype = $("#Ppagetype").val();
	
	//Rainie modify 090619 : Adjust display of Keyword bar	
	var sMsgShow = " &raquo; <b>" + decodeURIComponent(AKeyword.replace(/\+/g," ")) + "</b>";
	if( AKeyword != "" && params.indexOf("&QCase=2") < 0 )
	{
		sMsgShow = "<a href='default.aspx' class='Plink'>Keyword</a>" + sMsgShow;
		document.getElementById("divKeywordBar").innerHTML = sMsgShow;  //陪ボSearch ResultオàKeyword > xxx
	}
	if( params.indexOf("&QCase=2") >= 0 )
	{
		$("span").remove("#spanAKeyword");
		if( AKeyword == "" )
		{
			sMsgShow = "";
		}
		sMsgShow = "<span id='spanAKeyword'>" + sMsgShow + "</span>";
		document.getElementById("divLocationBar").innerHTML += sMsgShow;
	}
	
	//Rainie modify 090618 : advance search not to follow quick search except case2
	if( AKeyword != "" && params.indexOf("&QCase=2") < 0 )
	{
		params = "";
	}
	if(APpagetype != null && APpagetype != "" && APpagetype != "null")
	{
		if (APpagetype == "hot")
		{
			ASortBy = "8";
		}else if (APpagetype == "new")
		{
			ASortBy = "4";
		}
		$("#AdvanceSearch_dllSortBy").val(ASortBy);
	}
	params += "&AKeyword=" + encodeURIComponent(AKeyword) + "&AThemeID=" + AThemeID + "&ASearchField=" + ASearchField + "&ASortBy=" + ASortBy + "&Ppagetype=" + APpagetype;
	//alert(params);
	return params;
}

//GO﹍砞﹚
function SetAdvanceConditionByGO()
{
	bCanAdvanceSearch = true;
	//睲奔hot,new
	if($("#Ppagetype").val()=="hot" || $("#Ppagetype").val()=="new")
	{
		$("#Ppagetype").val("null");
	}
	if( $.trim(document.getElementById("AdvanceSearch_txtKeyword").value) == "" &&
		document.getElementById("AdvanceSearch_ddlTheme").value == "-1" &&
		document.getElementById("AdvanceSearch_dllSortBy").value == "-1" || ($.trim(document.getElementById("AdvanceSearch_txtKeyword").value) == "" && $("#divSearchResult").css("display") == "none") )
	{
		$("#AdvanceSearch_txtKeyword").css({"background-color":"#ff0000"});
		alert("please enter a keyword!");
		bCanAdvanceSearch = false;
		return;
	}
	$("#AdvanceSearch_txtKeyword").css({ "background-color": "#343434" });
	document.getElementById("tbKeyword").value = document.getElementById("AdvanceSearch_txtKeyword").value;
	document.getElementById("tbThemeID").value = document.getElementById("AdvanceSearch_ddlTheme").value;
	document.getElementById("tbSearchField").value = document.getElementById("AdvanceSearch_dllSearchField").value;
	document.getElementById("tbSortBy").value = document.getElementById("AdvanceSearch_dllSortBy").value;
	document.getElementById("tbPageSize").value = document.getElementById("AdvanceSearch_dllPageSize").value;
}

//浪琩琌穓碝
function checkInSearch()
{
	if($("#divSearchResult").css("display")!="none")
	{
		SetAdvanceConditionByPageSize();AJAXSearch();
	}
}

function SetAdvanceConditionByPageSize()
{
	document.getElementById("tbPageSize").value = document.getElementById("AdvanceSearch_dllPageSize").value;
}
function InitialAdvanceCondition() // Firefox can keep setting after refresh page, so use this function to initialize
{
	document.getElementById("tbKeyword").value = "";
	document.getElementById("tbThemeID").value = "";
	document.getElementById("tbSearchField").value = "";
	document.getElementById("tbSortBy").value = "";
	document.getElementById("tbPageSize").value = "";
	
	document.getElementById("AdvanceSearch_txtKeyword").value = "";
	document.getElementById("AdvanceSearch_ddlTheme").value = "-1";
	document.getElementById("AdvanceSearch_dllSearchField").value = "0";
	document.getElementById("AdvanceSearch_dllSortBy").value = "-1";
	document.getElementById("AdvanceSearch_dllPageSize").value = "15";
}
function forGAtrack(str,arrNotNeed)
{
	var nTypeIndexStart = 1;
	var nTypeIndexEnd = 0;
	var sToRemove = "";

	for( var i=0 ; i<arrNotNeed.length ; i++ )
	{
		nTypeIndexStart = str.indexOf(arrNotNeed[i] + "=");	
		nTypeIndexEnd = str.indexOf("&", nTypeIndexStart);
		if( nTypeIndexStart > 0 )
		{
			nTypeIndexStart = nTypeIndexStart-1;
		}
		else if( nTypeIndexStart == -1 )
		{
			continue;
		}
		if( nTypeIndexEnd > 0 )
		{
			sToRemove = str.substring(nTypeIndexStart,nTypeIndexEnd);
		}
		else
		{
			sToRemove = str.substring(nTypeIndexStart);
		}
		str = str.replace(sToRemove, "");
	}
	if( str.indexOf("&") == 0 )
	{
		str = str.substring(1);
	}
	return str;
}
