var se = new Array();
var se_kw = new Array();
se[0] = 'google';   se_kw[0] = 'q';
se[1] = 'baidu';    se_kw[1] = 'wd';
se[2] = 'baidu';    se_kw[2] = 'word';
se[3] = 'soso';		se_kw[3] = 'w';
se[4] = 'sogou';		se_kw[4] = 'query';
se[5] = 'bing';		se_kw[5] = 'q';
se[6] = 'yahoo';		se_kw[6] = 'p';
se[7] = 'qihoo';		se_kw[7] = 'kw';
var doc = document;
var up = new Array();
var upv = new Array();
var statHost = 'http://stat.ddmap.com/';
// var statHost = 'http://server2.ddmap.com/mstmap50007/stat/';
var p;
// var GUID = Math.round((Math.random() + '' + Math.round(Math.random() * 10000)) * 18446744073709551615);

var GUID = Math.round(Math.random() * 99999999) + '' + Math.round(Math.random() * 99999999);
// var GUID =  rnd();
var brower = new Array();

//document.domain = "ddmap.com";
/*
function createXMLHttpRequest() 
{
    if (window.XMLHttpRequest) 
    {
        return new XMLHttpRequest();
    }
    else if (window.ActiveXObject) 
    {
        return new ActiveXObject("Microsoft.XMLHttp");
    }
}

var xmlhttp = createXMLHttpRequest() ;
*/
function praseReferUrlEx()
{
   var ref = doc.referrer;
   var ru, i;
   if((i = ref.indexOf("://")) < 0)
   return "";
   parseUrlPara(ref);
   var ru = ref.substring(i + 3, ref.length);
   if ((i = ru.indexOf("/")) > - 1)
   {
      ru = ru.substring(0, i);
   }
   var url = '';
   var bUrl = false;
   for(var i = 0; i < se.length; i ++ )
   {
      if(bUrl)
      break;
      if(ru.indexOf(se[i]) > - 1)
      {
         for(var j = 0; j < up.length; j ++ )
         {
            if(up[j] == se_kw[i])
            {

               url = statHost + 'stat_ref.jsp?' + p + '&se=' + se[i] + '&kw=' + upv[j] + '&ref=' + ref.replace(/\&/g, "~");

               SendRequestByImg(url);
               bUrl = true;
               break;
            }
         }
      }

   }
}

function praseReferUrl()
{
	return;
}

function parsePosition()
{
   var u = location.href;
   var p = u.indexOf('?g_f=');
   var t = 5;
   if(p < 0)
   {
      p = u.indexOf('&g_f=');
	  if(p<0)
	   {
		 p = u.indexOf('?g_from=');
		  t=8;
	   }
	  if(p<0)
	   {
		 p = u.indexOf('&g_from=');
		 t=8;
	   }

   }
   if(p > 0)
   {
         u = u.substring(p + t);
         p = u.indexOf('&');
         if(p >= 0)
         {//推广代码在中间忽略掉
		   u ="";
         }
		  p = u.indexOf('#');
         if(p >= 0)
         { 
            u = u.substring(0, p);
         }
   }
   else
  {
	   u = "";
  }

   return u;
}

function parseUrlPara(u)
{
   var i;
   if((i = u.indexOf("?")) == - 1)
   return "";
   var pi = 0, s;
   var p = u.substring(i + 1, u.length);
   while(p.length > 0)
   {
      if(p.indexOf("&") == - 1)
      {
         up[pi] = p.substring(0, p.indexOf("="));
         upv[pi] = p.substring(p.indexOf("=") + 1, p.length);
         break;
      }
      s = p.substring(0, p.indexOf("&"));
      up[pi] = s.substring(0, s.indexOf("="));
      upv[pi] = s.substring(s.indexOf("=") + 1, s.length);
      p = p.substring(p.indexOf("&") + 1, p.length);
      pi ++ ;
   }


}

function pv(para)
{
   p = para;
   var ref = doc.referrer;
   var url = statHost + "ddmap.jsp?" + para + "&userid=" + getUserId() + "&sfrom=" + parsePosition() + "&GUID=" + getGUID() + "&mobile=" + getCookiesByName("usermobile") + "&ref=" + ref.replace(/\&/g, "~");
   SendRequest(url);
   praseReferUrlEx();

}


function pve(para)
{
   p = para;
   var ref = doc.referrer;
   var url = statHost + "ddmap.jsp?" + para + "&GUID=" + getGUID() + "&userid=" + getUserId() + "&ref=" + ref.replace(/\&/g, "~");
   SendRequestByImg(url);
}


function SendRequest(url)
{
   // 目前这样是由于统计中有跳转代码
   document.write("<script src='"+url+"'></script>");

}

function SendRequestByImg(url)
{
   var i = new Image(1, 1);
   i.src = url;
   i.onload = function()
   {
      rv();
   }
   ;
}

function rv()
{
   return;
}

function getCookiesByName(name)
{
   var arrStr = doc.cookie.split(";");
   var tmp;
   for(var i = 0; i < arrStr.length; i ++ )
   {
      arrStr[i] = arrStr[i].replace(" ", "")
      tmp = arrStr[i].split("=");
      if(tmp[0] == name)
      {
         return tmp[1];
      }
   }
   return '';
}

function getUserId()
{

   var uid = getCookiesByName('userid');
   if (uid.length > 0)
   {
      try
      {
         return uid - 13698;
      }
      catch(e)
      {
         return '';
      }
   }
   return '';

}

function getGUID()
{
   var gid = getCookiesByName("GUID");
   if(gid == "" ||  gid.length < 3)
   {
      gid = GUID;
      setCookies("GUID", GUID);
      firstVistor();
   }
   else
   {
      GUID = gid;

   }
   return gid;
}

function getSiteName()
{
	 var u = location.href;
	 if(u.indexOf("http://") >=0)
	{
		 u = u.substring(7,u.length);
	} 
	return   u.substring(0,u.indexOf("."));
	
}

function firstVistor()
{
   // 第一次访问，记录客户端信息
   BrowserInfo();
   var url = statHost + "firstvistor.jsp?GUID=" + GUID + "&";
   url += "bType=" +  brower[0]  + "&";
   url += "bVersion=" +  brower[1] + "&";
   url += "bJava=" + brower[2] + "&";
   url += "bFlash=" + brower[3] + "&";
   url += "bOS=" + brower[4] + "&";
   url += "bScr=" + brower[5] + "&";
   url += "bColor=" + brower[6] + "&";
   url += "bHl=" + brower[7] + "&";
   //url += "bPlugin=" + brower[8]+ "&";
   //url += "sou=" + getSiteName()+ "&";
   url += "page=" +  location.href+ "&";
   url += "cookieEnable=" + brower[9]+ "&";
   //url += "prepage=" + doc.referrer.replace(/\&/g, "~");
   // alert(url);
   SendRequestByImg(url);


}


function setCookies(strNam, strValue)
{
   // 设置cookies
   var expiration = new Date((new Date()).getTime() + 31536000000).toGMTString();
   // 365d * 24h * 60m * 60s * 1000ms		  
	document.cookie = strNam + "=" + escape(strValue) + ";domain=ddmap.com;expires=" + expiration + ";path=/";
   //

}


function BrowserInfo()
{
   // 客户端信息
   brower[0] = navigator.appName;
   brower[1] = navigator.appVersion;
   brower[2] = navigator.javaEnabled() ? 1 : - 1;
   brower[3] = getFlash();
   brower[4] = navigator.userAgent;
   if (self.screen)
   {
      sr = screen.width + "x" + screen.height;
      sc = screen.colorDepth + "-bit";
   }
   else if (self.java)
   {
      var j = java.awt.Toolkit.getDefaultToolkit();
      var s = j.getScreenSize();
      sr = s.width + "x" + s.height;
   }
   brower[5] = sr;
   brower[6] = sc;
   brower[7] = navigator.language;
   brower[8] = '';//getPlugin();
   brower[9] =  navigator.cookieEnabled ? 1 : - 1;
}


// --------------------------- 得操作系统 ---------------------------
function getOS()
{
   var OSlist = new Array();
   var OSName = new Array();
   OSlist[0] = " Windows4.0";       OSName[0] = "Windows 95";
   OSlist[1] = " Windows 98";       OSName[1] = "Windows 98";
   OSlist[2] = " Windows NT 5.0";   OSName[2] = "Windows 2000";
   OSlist[3] = " Windows NT 5.1";   OSName[3] = "Windows XP";
   OSlist[4] = " Windows NT 5.2";   OSName[4] = "Windows Server 2003";
   OSlist[5] = " Windows NT 6.0";   OSName[5] = "Windows Vista";
   // OSlist[6] = " Windows NT 6.1";   OSName[6] = "Windows 7";
   var ua = navigator.userAgent.split(";");
   for(var i = 0; i < OSlist.length; i ++ )
   {
      if(ua[2] == OSlist[i])
      return OSName[i];
   }
   return ua[2];
}

// 获得插件
function getPlugin()
{
   var plugin = "";
   var ua = navigator.userAgent.split(";");
   if(ua.length < 4)
   return "";
   for(var i = 4; i < ua.length; i ++ )
   {
      plugin += ua[i] + ",";
   }
   return plugin.substring(0, plugin.length - 2);
}

function getFlash()
{
   var f = "-1", n = navigator;
   if (n.plugins && n.plugins.length)
   {
      for (var ii = 0; ii < n.plugins.length; ii ++ )
      {
         if (n.plugins[ii].name.indexOf('Shockwave Flash') != - 1)
         {
            f = n.plugins[ii].description.split('Shockwave Flash ')[1];
            break;
         }
      }
   }
   else if (window.ActiveXObject)
   {
      for (var ii = 10; ii >= 2; ii -- )
      {
         try
         {
            var fl = eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+ii+"');");
            if (fl)
            {
               f = ii + '.0';
               break;

            }
         }
         catch(e)
         {
         }
      }
   }
   if(f == "-1")
   return f;
   else
   return f.substring(0, f.indexOf(".") + 2);
}

/*
function rnd()
{
var seed = new Date().getTime();

seed = (seed * 9301 + 49297) % 233280;


return Math.ceil( seed / (233280.0) * 9999999999999999);

}
 */



 function StatisticsByClick(site,page,pos,url,mapno)
 {

   var ref = doc.referrer;
   var url = statHost + "ddmap.jsp?site=operation&mapno="+mapno+"&rsite="+site+"&stype="+page+"&pos="+pos+"&url="+url.replace(/\&/g, "~")+"&userid=" + getUserId() + "&sfrom=" + parsePosition() + "&GUID=" + getGUID() + "&mobile=" + getCookiesByName("usermobile") + "&ref=" + ref.replace(/\&/g, "~");
	//alert(url);
	SendRequestByImg(url);
   // xmlhttp.open("GET", url, true);

   // xmlhttp.send(null);

 }
