//set variables
function WebTraffic ()
{
	
}

WebTraffic.unloadRequest = function ()
{
	if(typeof(_trafficCatch) == "function") { _trafficCatch();}
}

WebTraffic.Request = function (strValuename, bdecode)    
{
    var rtnval = "";
    if (bdecode)
    {
    	var nowAddress = location.href;
    }
    else
    {
   	 var nowAddress = unescape(location.href);
    }
    var parameters = (nowAddress.slice(nowAddress.indexOf("?")+1,nowAddress.length)).split("&");
    
    for(var i = 0 ; i < parameters.length ; i++)
    {
        var varName = parameters[i].split("=")[0];
        if (varName.toUpperCase() == strValuename.toUpperCase())
        {
            rtnval = parameters[i].split("=")[1];
            break;
        }
    }
    if (rtnval == null)
    {
    	rtnval ="";
    }
    return rtnval;
}



var _trafficDO = document;
var _trafficDL = _trafficDO.location;
var _trafficRH = "http://";


var _trafficRR = "/logs/traffic.do?";		// 아톰 속성 Traffic 경로


var _trafficTitle = "-";

var _trafficOpenTime = new Date();

var _trafficEncode = "";

var _trafficSS = new Array();
var _trafficSK = new Array();
var _trafficIEN = new Array();

_trafficSS[0]="search.daum.net";
_trafficSK[0]="q";
_trafficIEN[0] = 0;
_trafficSS[1]="naver.com";
_trafficSK[1]="query";
_trafficIEN[1] = 0;
_trafficSS[2]="search.yahoo.com";
_trafficSK[2]="p";
_trafficIEN[2] = 0;
_trafficSS[3]="search.empas.com";
_trafficSK[3]="q";
_trafficIEN[3] = 0;
_trafficSS[4]="lycos.co.kr";
_trafficSK[4]="q";
_trafficIEN[4] = 0;
_trafficSS[5]="search.lycos.com";
_trafficSK[5]="query";
_trafficIEN[5] = 0;
_trafficSS[6]="search.paran.com";
_trafficSK[6]="Query";
_trafficIEN[6] = 0;
_trafficSS[7]="searchplus.nate.com";
_trafficSK[7]="q";
_trafficIEN[7] = 0;
_trafficSS[8]="search.msn";
_trafficSK[8]="q";
_trafficIEN[8] = 1;
_trafficSS[9]="google";
_trafficSK[9]="q";
_trafficIEN[9] = 1;
_trafficSS[10]="search.allblog.net";
_trafficSK[10]="k";
_trafficIEN[10] = 1;

function _trafficCatch (_trafficPAGE)
{
	var _trafficRS = GetLogServerIp();		// 아톰 속성 Traffic 주소
	var _trafficVT = GetLogViewTime();						// 아톰속성 Page view 기준 시간 

	if (_trafficNULL(_trafficRS)==1) 
	{
		return;
	}
	if (_trafficNULL(_trafficRR)==1)
	{
		return;
	}
	if (_trafficDL.protocol !="http:" && _trafficDL.protocol != "https:")
	{
		return;
	}
	
	if (_trafficDL.protocol=="https:")
	{
		_trafficRH="https://ssl.";
	}
	_trafficRR = _trafficRH+_trafficRS+_trafficRR;
	var _trafficEC = timec(); //요청보내는 시간..
	var _trafficPQ = "CT="+_trafficEC+"&TY=0";
	if (_trafficNULL(_trafficVT)==1)
	{
		return;
	}
	
	var _trafficViewTime = Math.round((_trafficEC - _trafficOpenTime.getTime())/1000);
	if (_trafficViewTime >= _trafficVT)
	{
		//Referrer 정보 검출 		
		_trafficRF = _trafficDO.referrer;
		if ( top.frames !=null && typeof top.frames.length=='number' && top.frames.length > 0 )
		{
			eval("try{_trafficPRF=top.document.URL;}catch(_e){_trafficPRF='-';};");
			if (_trafficPRF=="-")
			{
				eval("try{_trafficPRF=parent.document.URL;}catch(_e){_trafficPRF='-';};");
			}
			if (_trafficRF == _trafficPRF )
			{
				_trafficFRM = 1;
				eval("try{_trafficRF = top.document.referrer;}catch(_e){_trafficRF='-'};");
			}
		}
	
		if (_trafficNULL(_trafficRF) == 1) 
		{
			_trafficRF="-";
		}
		if (_trafficRF.indexOf("[")==0 && _trafficRF.lastIndexOf("]")==(_trafficRF.length-1)) 
		{
			_trafficRF="-"; 
		}
	
		_trafficPQ += "&RT="+_trafficViewTime;
		_trafficRF = _trafficR();
		_trafficRF = _trafficRF.split("|");
		if (_trafficRF[0]=="e")
		{
			_trafficPQ += "&ST=SE";
			_trafficPQ += "&SE="+_trafficRF[1];
			_trafficPQ += "&SC="+_trafficEncode;
			_trafficPQ += "&SK="+_trafficRF[4];
		}
		else
		{
			
			_trafficMailType = WebTraffic.Request("handletype", true);
			_trafficMailKey = WebTraffic.Request("handlekey")
			_trafficRefDomain = _trafficDomainCut(_trafficDO.referrer);
			if (_trafficNULL(_trafficMailType)!=1 || _trafficNULL(_trafficMailKey)!=1 )
			{
				_trafficPQ += "&ST=EM";
				_trafficPQ += "&SE="+_trafficUEN(_trafficMailType);
				
			}
			else if ( _trafficNULL(_trafficDO.referrer) != 1 &&  _trafficRefDomain != _trafficDO.domain)
			{
				_trafficPQ += "&ST=CM";
				_trafficCM = _trafficUEN(WebTraffic.Request("cmt", true))
				if (_trafficNULL(_trafficCM)!=1)
				{
					_trafficPQ += "&SE="+ _trafficCM;
				}
				else
				{
					_trafficPQ += "&SE="+_trafficRefDomain;
				}
				
				
			}
			else
			{
				_trafficPQ += "&ST=";
				_trafficPQ += "&SE=";
			}
			_trafficPQ += "&SK=";
			_trafficPQ += "&SC=";
		}
		
		_trafficTitle = encodeURIComponent(_trafficDO.title)+" ";
		_trafficPQ += "&VTitle=" + _trafficTitle;
		var im=new Image();
		im.src=_trafficRR+_trafficPQ;
	  	im.onload= function ()
	  	{ 
	  		return;	
	  	}
	}
}

function _trafficR ()
{
	var i=0,h,q="-",u="-",it="-",p="-",t="-";
	if ((i=_trafficRF.indexOf("://")) < 0) 
	{
		return "d|-|-|-|-";
	}
	h=_trafficRF.substring(i+3,_trafficRF.length);
 	if ((i = h.indexOf("/")) > -1)
 	{
  		u=h.substring(i,h.length);
  		h=h.substring(0,i);
  		it = "s";
 	}
 	if( (i = u.indexOf("?")) > -1)
 	{
 		p = u;
 		u=u.substring(0,i);
 		p=p.substring(i,p.length);
 	}

 	for (var ii=0;ii<_trafficSS.length;ii++)
 	{
 		if (h.toLowerCase().indexOf(_trafficSS[ii]) > -1)
 		{
   			if ((i=_trafficRF.indexOf("?"+_trafficSK[ii]+"=")) > -1 || (i=_trafficRF.indexOf("&"+_trafficSK[ii]+"=")) > -1)
   			{
    			q=_trafficRF.substring(i+_trafficSK[ii].length+2,_trafficRF.length);
    			_trafficEncode = _trafficIEN[ii];
    			if ((i=q.indexOf("&")) > -1)
    			{
    				q=q.substring(0,i);
    			}
    			if (_trafficIEN[ii] == 1)
    			{
    				q = _trafficUEN(q);
    			}
		 	}
  		}
 	}
 	p = _trafficCut(p);
 	if (q!="-")
 	{
 		it = "e";
 	}
 	else
 	{
 		it="s";
 	}
 	if (it == "e" && _trafficIN(h,"naver.com"))
 	{
 		if(_trafficIN(q,"%u"))
 		{
 			q = unescape(q);
 		}
 	}
 	if (_trafficEncode == "1")
 	{
 		q = unescape(q);
 	}
 	else
 	{
 		q = _trafficEN(q);
 	}
 	
 	return it+"|"+_trafficEN(h)+"|"+_trafficEN(u)+"|"+_trafficEN(p)+"|"+q+"|"+t;
}
function _trafficIN (strValue,strPatern)
{
	if (_trafficNULL(strValue) == 1) 
	{
		return false;
	}
	if (strValue.indexOf(strPatern) >-1)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function _trafficUEN (strValue)
{
	if (typeof(decodeURIComponent) == 'function')
	{
		return decodeURIComponent(strValue);
	}
	else
	{
  		return unescape(strValue);
	}
}

function _trafficEN (strValue)
{
	strValue = strValue.replace(/[|]/g,"").replace(/%7C/g,"");
 	return escape(strValue).replace(/\+/g, '%2B');
}

function _trafficCut (strValue)
{
	if (_trafficNULL(strValue) == 1)
	{
		return "-";
	}
	if(strValue.length > 100)
	{
		return strValue.substring(0,100);
	}
	else
	{
		return strValue;
	}
}
function _trafficDomainCut (strUrl)
{
	strUrl = strUrl.replace(_trafficDL.protocol+"//","");
	strUrl = strUrl.replace(":"+_trafficDL.port,"");
	return strUrl.substring(0,strUrl.indexOf("/"));
}
function _trafficNULL (strValue)
{
	if(!strValue || strValue == "" || strValue == "undefined" || strValue =="unknown")
	{
		return 1;
	}
	else
	{
		return 0;
	}
}

function timec ()
{
	var objt = new Date();
	return objt.getTime();
}


