
function fGoToPageByHeader(keyword, searchType) {
		var searchPage = "/search/search.do";
		var sortType = "latest";
		var researchElement = document.getElementById("researchCheck");
		var researchYN = "N";
		var preqElement = document.getElementById("preq");
		var preq = "";
		var preqResearchElement = document.getElementById("preResearch");
		var preqResearchYN = "N";
		var qElement = document.getElementById("q");
		var q = "";
		
		if( preqResearchElement != undefined) {
				
			preqResearchYN = preqResearchElement.value;
		}
		
		if( qElement != undefined) {
			q = qElement.value;
		}
		
		if( researchElement != undefined) {
				
			if(researchElement.checked == true) {
				researchYN = "Y";
				if( preqElement != undefined) {
				
					if(preqElement.value != null && preqElement.value != "" && preqElement.value != "null") {
						
						if(preqResearchYN == "Y") {
							preq = preqElement.value + "|" + q;
						} else {
							preq = q;
						}
					} else {
						preq = q;
					}
				}		
			}
		}
			
						
		if(searchType == 'ucc') {
			searchPage = '/search/searchUcc.do';
			sortType = "accuracy";
		} else if(searchType == 'tag') {
			searchPage = '/search/searchTag.do';
			sortType = "accuracy";
		} else if(searchType == 'location') {
			searchPage = '/search/searchLocation.do';
			sortType = "accuracy";
		} else if(searchType == 'image') {
			searchPage = '/search/searchImage.do';
			sortType = "accuracy";
		} else if(searchType == 'video') {
			searchPage = '/search/searchVideo.do';
			sortType = "accuracy";
		} else if(searchType == 'people') {
			searchPage = '/search/searchPeople.do';
			sortType = "latest";
		} else {
			searchPage = '/search/search.do';
		}
		
		var url = searchPage+"?q=" + encodeURI(keyword) + "&searchType=" + searchType + "&sortType=" + sortType + "&pg=1&research=" + researchYN + "&preq=" + encodeURI(preq);
		
		//alert(url);
		
		location.href=url;	
}



function fGoToPageBySort(keyword, searchType, sortType) {
		var searchPage = "/search/search.do";
		
		var researchElement = document.getElementById("researchCheck");
		var researchYN = "N";
		var preqElement = document.getElementById("preq");
		var preq = "";
		var preqResearchElement = document.getElementById("preResearch");
		var preqResearchYN = "N";
		var qElement = document.getElementById("q");
		var q = "";
		
		if( preqResearchElement != undefined) {
				
			preqResearchYN = preqResearchElement.value;
		}
		
		if( qElement != undefined) {
			q = qElement.value;
		}
		
		//if( researchElement != undefined) {
				
			//if(researchElement.checked == true) {
			//	researchYN = "Y";
				if( preqElement != undefined) {
				
					if(preqElement.value != null && preqElement.value != "" && preqElement.value != "null") {
						
						if(preqResearchYN == "Y") {
							preq = preqElement.value; // + "|" + q;
						} else {
							//preq = q;
							preqResearchYN = "N";
						}
					} else {
						//preq = q;
						preqResearchYN = "N";
					}
				}		
			//}
		//}
			
						
		if(searchType == 'ucc') {
			searchPage = '/search/searchUcc.do';
			//sortType = "accuracy";
		} else if(searchType == 'tag') {
			searchPage = '/search/searchTag.do';
			//sortType = "accuracy";
		} else if(searchType == 'location') {
			searchPage = '/search/searchLocation.do';
			//sortType = "accuracy";
		} else if(searchType == 'image') {
			searchPage = '/search/searchImage.do';
			//sortType = "accuracy";
		} else if(searchType == 'video') {
			searchPage = '/search/searchVideo.do';
			//sortType = "accuracy";
		} else if(searchType == 'people') {
			searchPage = '/search/searchPeople.do';
			//sortType = "latest";
		} else {
			searchPage = '/search/search.do';
		}
		
		var url = searchPage+"?q=" + encodeURI(keyword) + "&searchType=" + searchType + "&sortType=" + sortType + "&pg=1&research=" + preqResearchYN + "&preq=" + encodeURI(preq);
		
		//alert(url);
		
		location.href=url;	
}

function fGoToPageByHeaderTab(keyword, searchType) {
		var searchPage = "/search/search.do";
		var sortType = "latest";
		var researchElement = document.getElementById("researchCheck");
		var researchYN = "N";
		var preqElement = document.getElementById("preq");
		var preq = "";
		var preqResearchElement = document.getElementById("preResearch");
		var preqResearchYN = "N";
		var qElement = document.getElementById("q");
		var q = "";
		
		if( preqResearchElement != undefined) {
				
			preqResearchYN = preqResearchElement.value;
		}
		
		if( qElement != undefined) {
			q = qElement.value;
		}
		
		//if( researchElement != undefined) {
				
			//if(researchElement.checked == true) {
			//	researchYN = "Y";
				if( preqElement != undefined) {
				
					if(preqElement.value != null && preqElement.value != "" && preqElement.value != "null") {
						
						if(preqResearchYN == "Y") {
							preq = preqElement.value; // + "|" + q;
						} else {
							//preq = q;
							preqResearchYN = "N";
						}
					} else {
						//preq = q;
						preqResearchYN = "N";
					}
				}		
			//}
		//}
			
						
		if(searchType == 'ucc') {
			searchPage = '/search/searchUcc.do';
			sortType = "accuracy";
		} else if(searchType == 'tag') {
			searchPage = '/search/searchTag.do';
			sortType = "accuracy";
		} else if(searchType == 'location') {
			searchPage = '/search/searchLocation.do';
			sortType = "accuracy";
		} else if(searchType == 'image') {
			searchPage = '/search/searchImage.do';
			sortType = "accuracy";
		} else if(searchType == 'video') {
			searchPage = '/search/searchVideo.do';
			sortType = "accuracy";
		} else if(searchType == 'people') {
			searchPage = '/search/searchPeople.do';
			sortType = "latest";
		} else {
			searchPage = '/search/search.do';
		}
		
		var url = searchPage+"?q=" + encodeURI(keyword) + "&searchType=" + searchType + "&sortType=" + sortType + "&pg=1&research=" + preqResearchYN + "&preq=" + encodeURI(preq);
		
		//alert(url);
		
		location.href=url;	
}

function setSearchTypeCombo(keyword, pcategory)
{
	document.getElementById("searchInput").value = keyword;
	var category = document.getElementById("searchCategory");
	for(var i = 0; i < category.options.length; i++)
	{
		if(category.options[i].value == pcategory)
		{
			category.selectedIndex = i;
			return;
		}
	}
	
}

// Check Cookie //
function getCookie(name)
{
	var cname=name+'=';
	if(document.cookie.length>0)
	{
		begin=document.cookie.indexOf(cname);
		if(begin!=-1)
		{
			begin+=cname.length;
			var end=document.cookie.indexOf(';',begin);
			if(end==-1)
			{
				end=document.cookie.length;
			}
			return unescape(document.cookie.substring(begin,end));
		}
	}
	return;
}

//-- start auto complete --
var completeDiv;
var inputField;
var nameTable;
var nameTableBody;
var autoCompleteShow = 0;
var noClearAction = 0;
var SearchService;
var firstSearchLayer=0;
// Cookies Check



function initVars() {
	firstSearchLayer=1;

	if (getCookie("search_on"))
	{
		SearchService = getCookie("search_on");
	}else{
		SearchService = "N";
	}
          inputField = document.getElementById("searchInput");
          nameTable = document.getElementById("name_table");
	nameTableBody = document.getElementById("name_table_body");

	//alert("SearchService === " + SearchService);
       if (SearchService == "Y") {
		completeDiv = document.getElementById("TopSch");
       } else{
		completeDiv = document.getElementById("TopSch1");
		
	}

          completeDiv.style.left = -253 + "px";
	completeDiv.style.top = -10 + "px";
			
}

function InitXMLHttp() {
	xmlHttp = false; 
	if (window.XMLHttpRequest) { 
		xmlHttp = new XMLHttpRequest(); 
		//xmlHttp.overrideMimeType('text/xml'); 
	}else if (window.ActiveXObject) { 
		try{ 
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP.3.0"); 
		}catch(e){ 
			try{ 
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
			}catch(E){ 
				xmlHttp = false; 
			} 
		} 
	}

	return xmlHttp;
}
 
function clearNames() {
	
	if(autoCompleteShow == 1) {
	   if(noClearAction==0) {
       		var ind = nameTableBody.childNodes.length;
       		for (var i = ind - 1; i >= 0 ; i--) {
       		     nameTableBody.removeChild(nameTableBody.childNodes[i]);
       		}
       		completeDiv.style.border = "none";
	        completeDiv.style.display = "none";
    		autoCompleteShow = 0;
			
       } else {
       		noClearAction = 0;
       }
	} else { 
		noClearAction = 0;
	}
	//alert("clearName:autoCompleteShow:" + autoCompleteShow + ", noClearAction: "+ noClearAction);
	
} 
        
function findNames() {
       	initVars(); 
   		 
   		//alert("len=="+inputField.value.length);
   		if(inputField.value.length==0) {
   			var ind = nameTableBody.childNodes.length;
       		for (var i = ind - 1; i >= 0 ; i--) {
       		     nameTableBody.removeChild(nameTableBody.childNodes[i]);
       		}
       		completeDiv.style.border = "none";
       
    		autoCompleteShow = 0;
			noClearAction = 0;
   		}

		//alert("autocom == " + autoCompleteShow);		
   		if(autoCompleteShow == 0) {
            
            if (inputField.value.length > 0) {
            	InitXMLHttp();
                //createXMLHttpRequest();
                //var param = "entype=euc-kr&query=" + encodeURI(escape(inputField.value));
                var param = "entype=euc-kr&query=" + encodeURI(inputField.value);
                var url = "/search/searchAutoComplete.do?" + param ;
				//var url = "http://211.115.15.170:8090/general/search/test.xml";
               	
                xmlHttp.open("GET", url, true);
                xmlHttp.onreadystatechange = resultNames;
				//xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");  
				xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");  
				xmlHttp.send(null);
                
            } else {
				//autoCompleteShow = 1;
                clearNames();
            }
		
		} else {
			if (inputField.value.length == 0) {
				autoCompleteShow = 1;
				clearNames();
			} 
		}       
}

function resultNames() {
    if(xmlHttp.readyState == 4) {
        if (xmlHttp.status == 200) {
          	//var xml = xmlHttp.responseTEXT;
          	//var xml = xmlHttp.responseXML;
			if(navigator.userAgent.indexOf("MSIE") != -1)
			{
	          	//ie
					setResults(stringToXMLDoc(xmlHttp.responseText));
				
			}
			else
			{
					setResults(xmlHttp.responseXML);		

			}
			
			
			//setNames(xmlHttp.responseXML.getElementsByTagName("name"));
    		
        } else if (xmlHttp.status == 204){//데이터가 존재하지 않을 경우
				clearNames();
          
        } 
   } 
}
        
function setResults(xmlResponse) {
		
		var root = xmlResponse.documentElement;
		var result = root.getElementsByTagName("Return")[0];
      	var resultCode = result.firstChild.nodeValue;

      	//var resultCode = 1;
      	
      	if(resultCode != '-1' && resultCode != '0') {
		//success
			//test
			var ind = nameTableBody.childNodes.length;
	       	for (var i = ind - 1; i >= 0 ; i--) {
	       	     nameTableBody.removeChild(nameTableBody.childNodes[i]);
	       	}
					       	
			var nameNode  = xmlResponse.getElementsByTagName("ARK");
			setNames(nameNode);
      	} else {
      		// failure
      		//test
      		var ind = nameTableBody.childNodes.length;
       		for (var i = ind - 1; i >= 0 ; i--) {
       		     nameTableBody.removeChild(nameTableBody.childNodes[i]);
       		}
       		completeDiv.style.border = "none";
       
    		autoCompleteShow = 0;
      	}
}
        
function setNames(the_names) {
	
    clearNames();
    var size = the_names.length;
    setOffsets();
    var row, cell, txtNode;
   /*
    for (var i = 0; i < size; i++) {
        //var nextNode = the_names[i].firstChild.data;
        var nextNode = the_names[i].getAttribute("HKeyword");
        nextNode = nextNode.replace('&lt;', '<');
        nextNode = nextNode.replace('&gt;', '>');
                        
        row = document.createElement("tr");
        cell = document.createElement("td");
        
        cell.onmouseout = function() {this.className='mouseOver';};
        cell.onmouseover = function() {this.className='mouseOut';};
        
        cell.setAttribute("bgcolor", "#FFFFFF");
        cell.setAttribute("border", "0");
        cell.onclick = function() { 
			autoCompleteShow = 1;
			populateName(this);
		};                     
        txtNode = document.createTextNode(nextNode);
        //cell.appendChild(txtNode);
        cell.innerHTML = nextNode;		
        row.appendChild(cell);
        nameTableBody.appendChild(row);
    }
	*/

    for (var i = 0; i < size; i++) {
        //var nextNode = the_names[i].firstChild.data;
        var nextNode = the_names[i].getAttribute("HKeyword");
        nextNode = nextNode.replace('&lt;', '<');
        nextNode = nextNode.replace('&gt;', '>');
                        
        row = document.createElement("span");              
        row.setAttribute('class', 'qitem');

		cell = document.createElement("a");
		cell.setAttribute('href','#'); 
        cell.onclick = function() { 
			autoCompleteShow = 1;
			populateName(this);
		};        
        txtNode = document.createTextNode(nextNode);
        //cell.appendChild(txtNode);
        cell.innerHTML = nextNode+"<br>";		
        row.appendChild(cell);
        nameTableBody.appendChild(row);
    }
    if(size > 0) {
    	//test
    	//autoCompleteShow = 1;
    }
    
    
}
        
function setOffsets() {
    //var end = inputField.offsetWidth;
    //var left = calculateOffsetLeft(inputField);
    //var top = calculateOffsetTop(inputField) + inputField.offsetHeight;
	
	completeDiv.style.display = "block";
	var firstDiv = document.getElementById("TopSch2");
	firstDiv.style.display = "none";
	if(completeDiv.id == 'TopSch1') {
		document.getElementById("TopSch").style.display = "none";
	} else if(completeDiv.id == 'TopSch') {
		document.getElementById("TopSch1").style.display = "none";
	}
	
    //completeDiv.style.left = left  - 750 + "px";
    //completeDiv.style.top = top -60 + "px";
    //nameTable.style.width = end + "px";
}

function calculateOffsetLeft(field) {
  return calculateOffset(field, "offsetLeft");
}

function calculateOffsetTop(field) {
  return calculateOffset(field, "offsetTop");
}

function calculateOffset(field, attr) {
  var offset = 0;
  while(field) {
    offset += field[attr]; 
    field = field.offsetParent;
  }
  return offset;
}
        
function populateName(cell) {
    //inputField.value = cell.firstChild.nodeValue;
    
    var innerStr = removeTags(cell.innerHTML, "");
    inputField.value = innerStr;
    clearNames();
}
        
        
        


function isAlNum(ch){return ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf(ch)==-1)?false:true;}
     
removeTags=function(str,myTags){
	var tags=['!--','!doctype','isindex','script','blockquote','style','input','plaintext','body','colgroup','fieldset','frameset','multicol','noframes','noscript','optgroup','textarea','basefont','acronym','address','caption','comment','listing','marquee','noembed','nolayer','bgsound','applet','button','center','iframe','ilayer','legend','nextid','object','option','select','server','spacer','strike','strong','keygen','blink','embed','label','layer','small','table','tbody','tfoot','thead','title','param','frame','abbr','area','cite','code','font','form','head','html','menu','nobr','ruby','samp','span','base','link','meta','bdo','big','del','dfn','dir','div','ins','kbd','map','pre','sub','sup','var','xmp','img','col','wbr','br','dd','dl','dt','em','h1','h2','h3','h4','h5','h6','li','ol','rb','rp','rt','td','th','tr','tt','ul','hr','a','b','i','p','q','s','u'];

	if(myTags){
		for(var i=0;i<myTags.length;i++){
			for(var j=0;j<tags.length;j++){
				if(myTags[i]==tags[j]){
					tags.splice(j,1);
					break;
				}
			}
		}
	}

	for(var i=0;i<tags.length;i++){
		str=removeTags.remove(str,tags[i]);
	}
	return str.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&#8260;/g,"\/");
};

removeTags.remove=function(str,tag){
	var op,tp,cp,lt,gt,copy;op=0,lt="&lt;",gt="&gt;";
	str=str.replace(/</g,"&lt;");
	str=str.replace(/>/g,"&gt;");
	str=str.replace(/\//g,"&#8260;");
	copy=str;
	str=str.toLowerCase();
	while((op=str.indexOf(lt+tag,op))!=-1){
		tp=str.substring(op+lt.length+tag.length,op+lt.length+tag.length+1)
		if(isAlNum(tp)) {op=op+lt.length+tag.length+1;continue;}
		if((cp=str.indexOf(lt+"&#8260;"+tag+gt,op))==-1){
			tp=str.indexOf(gt,op);
			str=str.substring(0,op)+str.substring(tp+4,str.length);
			copy=copy.substring(0,op)+copy.substring(tp+4,copy.length);
		}else{
			if((tag=="script")||(tag=="style")||(tag=="object")){
				tp=str.indexOf(gt,op);
				str=str.substring(0,op)+str.substring(cp+tag.length+9+6,str.length);
				copy=copy.substring(0,op)+copy.substring(cp+tag.length+9+6,copy.length);
			}else{
				tp=str.indexOf(gt,op);
				str=str.substring(0,op)+
					str.substring(tp+4,cp)+
					str.substring(cp+tag.length+9+6,str.length);
				copy=copy.substring(0,op)+
					copy.substring(tp+4,cp)+
					copy.substring(cp+tag.length+9+6,copy.length);				
			}
		}
	}
	return copy;
}

function noClearName() {
	noClearAction = 1;
}

document.onmousedown=function(){ 
	try {
	//Run some code here
		
		if(firstSearchLayer==1) {
			autoCompleteShow=1;
			noClearAction=0;
			goFirstSearchLayer();
		}
		firstSearchLayer = 1;
		clearNames();
		
	}
	catch(err) {
	//Handle errors here
	}
}



// Search Auto Setting 
function setCookieSearch( name, value, expiredays ) 
{ 
	var todayDate = new Date(); 
	todayDate.setDate( todayDate.getDate() + expiredays ); 
	document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"; 
} 

function setSearchOpen()
{
	var target = document.getElementById("S_ON");
	if(target.value == 'on')
	{
		setCookieSearch("search_on","Y",365);
	}
	else
	{
		setCookieSearch("search_on","N",365);
	}
	autoCompleteShow = 1;
	clearNames();
}

function goFirstSearchLayer() {
	try {
		
		var firstDiv = document.getElementById("TopSch2");
		firstDiv.style.display = "block";
		firstSearchLayer=1;
		
	} catch(e) {
	
	}
	
}

