// ==================================
// ucc tag 검색 정보 ajax, json 처리하기
// ==================================
var oJSON_UCCHUB;
var req_ucchub;
var divname_ucchub = "";
var read_tag = "";

function loadXMLDocUccHub(url) {
	if (window.XMLHttpRequest) {
		req_ucchub = new XMLHttpRequest();
		req_ucchub.onreadystatechange = processReqChangeUccHub;
		req_ucchub.open("GET", url, true);
		req_ucchub.send(null);
	} else if (window.ActiveXObject) {
		req_ucchub = new ActiveXObject("Microsoft.XMLHTTP");
		if (req_ucchub) {
			req_ucchub.onreadystatechange = processReqChangeUccHub;
			req_ucchub.open("GET", url, true);
			req_ucchub.send();
		}
	}
}

function processReqChangeUccHub() {
	if (req_ucchub.readyState == 4) {
		result = 0;
		if (req_ucchub.status == 200) {
			result = get_ucctag_search();

			switch (result) {
				case -1 :
					alert("자료를 읽는데 실패하였습니다.\n잠시후 다시 시도해 보세요.");
                    read_tag = "";
					break;
				case 998 :
					alert("검색된 결과가 없습니다.");
                    read_tag = "";
					break;
				case 999 :
					parse_ucctag_search();
					break;
			}
		}
	}
}

function get_ucctag_search()
{
	oJSON_UCCHUB = JSON.parse(req_ucchub.responseText);

	if (typeof(oJSON_UCCHUB['error']) == "undefined") {
		return -1;
	}

	if (oJSON_UCCHUB['error'] == 1) {
		if (oJSON_UCCHUB['error_msg']) {
			alert(oJSON_UCCHUB['error_msg']);
            read_tag = "";
			return 0;
		} else {
			return -1;
		}
	}

	if (	typeof(oJSON_UCCHUB['count']) == "undefined"
		||	typeof(oJSON_UCCHUB['total']) == "undefined"
		||	typeof(oJSON_UCCHUB['result']) == "undefined") {
		return -1;
	}

	if (oJSON_UCCHUB['total'] <= 0 || oJSON_UCCHUB['count'] <= 0) return 998;

	return 999;
}

function parse_ucctag_search()
{
	var count 	= oJSON_UCCHUB['count'];
	var total   = oJSON_UCCHUB['total'];
	var result 	= oJSON_UCCHUB['result'];
	var obj 	= getObj(divname_ucchub);
	var shtml 	= "";

	shtml  = "";
	shtml += "<table border=0 cellpadding=1 cellspacing=0><tr><td bgcolor=3030d0>";
	shtml += "<table border=0 cellpadding=1 cellspacing=5 bgcolor=white width=100%>";
	shtml += "<tr><td nowrap>";
	shtml += "Tag : <b>" + result[0]['TAGS'] + "</b> 에 대한 검색 결과<br>";
	shtml += "<table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100% height=1 bgcolor=c0c0c0><img src='http://img.yahoo.co.kr/blog/blank.gif'></td></tr></table>";
	shtml += "</td></tr>";
	for(i=0;i<count;i++) {
		//alert(result[i]['TITLE']);
		shtml += "<tr><td nowrap>";
		shtml += "<img src='http://img.yahoo.co.kr/blog/2005/05/images/dot_717171.gif' align=absmiddle width=2 height=2> <a href=\"" + result[i]['URL'] + "\" target=_top alt=\"" + result[i]['ABSTRACT'] + "\"";
		shtml += " style='text-decoration:none;' onmouseover=\"this.style.textDecoration='underline'\" onmouseout=\"this.style.textDecoration='none'\"";
		shtml += " title=\"" + result[i]['ABSTRACT'] + "\">";
		shtml += result[i]['TITLE'];
		shtml += "</a>";
		shtml += "</td></tr>";
	}
	if (total > count) {
		shtml += "<tr><td valign=bottom align=right height=25>";
		shtml += "<a href='http://kr.hub.yahoo.com/" + result[0]['YAHOOID'] + "/MYCONTENTS/list_myhub_contents.html?tag=" + encodeURIComponent(result[0]['TAGS']) + "' target=_blank";
		shtml += " style='text-decoration:none;' onmouseover=\"this.style.textDecoration='underline'\" onmouseout=\"this.style.textDecoration='none'\"";
		shtml += " >>> 야후! 허브 Tag 검색 결과 더보기</a>";
		shtml += "</td></tr>";
	}
	shtml += "</table>";
	shtml += "</td></tr></table>";
	obj.innerHTML = shtml;

	return true;
}

function GetUccHubSearch(bid, p)
{
    if (read_tag == p) {
        return;
    } else {
        read_tag = p;
        var obj = getObj(divname_ucchub);
        obj.innerHTML = '';
    }
    
	var sURL;
	sURL = "http://kr.blog.yahoo.com/" + bid + "/MYBLOG/ucchub_search_xml.html?keyword=" + p;

	loadXMLDocUccHub(sURL);
}

function DivHubResultClose() {
	var obj = getObj(divname_ucchub);
	obj.style.visibility="hidden";
}

function DivHubResultView() {
	var obj = getObj(divname_ucchub);
	obj.style.visibility="visible";
}

function DivHubResultOpen(objname, bid, keyword, e) {
	divname_ucchub = objname
	var obj = getObj(divname_ucchub);

	if (obj.style.visibility == "visible") {
        if (read_tag != keyword) {
            DivHubResultClose();
        }
	}

	if ( (document.all && !document.getElementById) || (document.all && document.getElementById) ) {
		if ( e == null ) e =event;
		pY = e.clientY + document.body.scrollTop;
		pX = e.clientX + document.body.scrollLeft;
	}
	else {
		pY = e.clientY + document.body.scrollTop;
		pX = e.clientX + document.body.scrollLeft;
	}

	if ( obj.style.visibility == "hidden" ) {
		obj.style.top = pY - 0;
		obj.style.left = pX - 0;
		obj.style.visibility="visible";

		GetUccHubSearch(bid, keyword);
	} else {
		obj.style.visibility="hidden";
	}
}
