function _wmx(cli,camp,bsU,cnt,slt,adt){
    var _c=this;_c.v="3.4.11";_c.folder="web_service";_c.cli=cli;_c.camp=camp;_c.bsU=bsU;
    _c.baseHost=location.hostname;_c.prot=location.protocol=="https:"?"https:":"http:";
    _c.prefolder=_c.prot+"//"+_c.bsU+"/"+_c.folder;_c.trackURL=_c.prefolder+"/counter/CSTrack.aspx";
    _c.totalURL=_c.prefolder+"/counter/ad_total_open.aspx";_c.eventURL=_c.prefolder+"/counter/wmax_event.aspx";
    _c.effectURL=_c.prefolder+"/counter/WebMAX_Effect.aspx";_c.addsURL=_c.prefolder+"/list/add_s.aspx";
    _c.dummyURL=_c.prot+"//"+_c.baseHost+"/wmxDummy.htm";
    _c.cnt=cnt;_c.slt=slt;_c.adt=adt;_c.sUID=navigator.cookieEnabled?"W_S_UID":"-1";
    _c.from=document.referrer;
    _c.URL=_c.baseURI=document.URL.replace(location.hash,"").replace(/#+$/,"");
    _c.title=document.title;_c.aFields=[];_c.aImg=[];_c.uli;_c.u1;_c.u2;_c.debug;_c.cAD=0;
    if (_c.adt=="2") _c.adT();}
_wmx.prototype={
    enc:function(str){
        try{str=/%u/.test(str)?unescape(str):decodeURIComponent(str);}catch(err){}
        return /[^\x00-\x7F]/.test(str)?escape(str):encodeURIComponent(str)},
    gC:function(sName){
        var aCookie=document.cookie.split("; ");
        for (var i=0; i<aCookie.length; i++){
            var aCrumb=aCookie[i].split("=");
            if (sName==unescape(aCrumb[0])) return unescape(aCrumb[1]);}
        return null;},
    gU:function(sUrl){return sUrl.replace(/\?.+/,"")},
    gP:function(sUrl){return /\?/.test(sUrl)?sUrl.replace(/[^\?]+\?/,"").split("&").sort().join("&").toLowerCase():""},
    adF:function(iKey,sValue,nLen){
        if (sValue==undefined) return;
        this.clF(iKey);
        this.aFields.push([iKey,sValue,nLen]);},
    clF:function(sID){
        for (var i=0; i<this.aFields.length; i++)
            if (this.aFields[i][0]==sID) this.aFields.splice(i,1);},
    gTS:function(aFields){
        var aItems=aFields||this.aFields;var aF=[];
        for (var i=0; i<aItems.length; i++)
            aF.push(aItems[i][0]+"="+this.enc(String(aItems[i][1]).substring(0,isNaN(aItems[i][2])?32:aItems[i][2])));
        return (aF.join("&"));},
    adT:function(sAd){
        if (sAd) return this.track(this.eventURL+"?"+sAd);
        if (this.from==this.URL) return;var _c=this;
        if (document.all) attachEvent("onload", function(){_c.track(_c.totalURL)});
        else addEventListener("load",function(){_c.track(_c.totalURL)},false);},
    imgSrc:function(sUrl){
        var oImg=new Image(1,1);oImg.src=sUrl;oImg.onabort=function(){oImg.src=sUrl};return oImg;},
    track:function(sUrl){this.debug?alert(unescape(sUrl)):this.aImg.push(this.imgSrc(sUrl))},
    trackPageview:function(sMode,sPath,sTitle,sAttr,bCounter){
        var _c=this;var sURL;var ev;
        _c.aFields=[];
        var sAd=_c.URL.match(/\?wmxad=\w+:\w+:\w+$|&wmxad=\w+:\w+:\w+|wmxad=\w+:\w+:\w+&/);
        if (sAd){ 
            _c.URL=_c.URL.replace(sAd,"");_c.baseURI=_c.baseURI.replace(sAd,"");
            _c.adT(String(sAd).replace(/[\?&]/,"").split("=")[1]);}
        switch(sMode?sMode.toString().toUpperCase():""){
            case "S":
                sURL=_c.prot+"//"+_c.baseHost+sPath;
                break;
            case "E":
                ev=_c.cnt;
                if (bCounter) _c.adF("this_url",_c.URL==_c.dummyURL?_c.baseURI:_c.URL,1024);
                else _c.cnt="0";
                sTitle=_c.title;sURL=_c.dummyURL;_c.URL=_c.from;
                var aE=sPath.split("/");
                for (var i=1;i<aE.length;i++){
                    if (i>5||!aE[i]) break;
                    _c.adF(14+i,aE[i],32);}
                break;
            case "D":
                var aP=sPath.split("/");
                var aL=[];
                for (var i=1;i<aP.length;i++){
                    if (i>5||!aP[i]) break;
                    aL.push("L"+i+"="+aP[i]);}
                sURL=_c.prot+"//"+_c.baseHost+location.pathname+"?"+aL.join("&");
                break;
            default:
                break;
        }
        if (sURL){
            _c.title=sTitle||sPath;
            _c.from=_c.URL;_c.URL=sURL;}
        _c.adF("cli",_c.cli);_c.adF("countertracking",_c.cnt);
        _c.adF("sltracking",_c.slt);_c.adF("uid",_c.sUID);
        _c.adF(1,_c.URL,1024);_c.adF(3,"W_S_SC");
        _c.adF(9,_c.from,1024);_c.adF(11,_c.camp,32);
        _c.adF(22,navigator.userAgent,128);_c.adF(23,screen.width);
        _c.adF(24,screen.height);
        if (_c.cnt=="1"){
            if (!_c.title){
                _c.title=_c.URL.replace(/\?.+/,"");_c.title=/\/$/.test(_c.title)?_c.title:_c.title.replace(/^.+\//,"")}
            _c.adF("pname",_c.title);}
        if (ev) _c.cnt=ev;
        if (_c.slt=="1"){
            _c.adF(2,_c.sUID);_c.adF(5,"W_S");
            _c.adF(6,"W_S_DATE");_c.adF(7,"W_S");
            _c.adF(8,"W_S");_c.adF(10,"W_S_IP");
            _c.adF(20,_c.gU(ev?_c.baseURI:_c.URL),512);
            _c.adF(21,_c.gP(ev?_c.baseURI:_c.URL),1024);}
        var sAcc=_c.gC("WMX_Account");
        if (sAcc) _c.adF(4,sAcc,32);
        if (_c.uli&&(_c.u1||sAcc)){
            _c.adF("uli",_c.uli);
            _c.adF("u1",_c.u1||sAcc);
            var sK2=_c.gC("WMX_Key2");
            if (_c.u2||sK2) _c.adF("u2",_c.u2||sK2);}
        if (sAttr){
            var aP=sAttr.split("/");
            if (aP[1]) _c.adF(12,aP[1],32);if (aP[2]) _c.adF(13,aP[2],128);
            if (aP[3]) _c.adF(15,aP[3],32);if (aP[4]) _c.adF(16,aP[4],32);
            if (aP[5]) _c.adF(17,aP[5],32);if (aP[6]) _c.adF(18,aP[6],32);
            if (aP[7]) _c.adF(19,aP[7],32);}  
        if (_c.cAD==0 && _c.adt=="1"){_c.track(_c.totalURL);_c.cAD++;}
        _c.track(_c.trackURL+"?"+_c.gTS());},
    trackEffect:function(nSno,nAmt,sUser,cli,camp){
        if (!nSno) return;this.aFields = [];
        this.adF("mem_id",cli||this.cli);this.adF("cam_id",camp||this.camp);
        this.adF("sno",nSno);if (nSno==7 && nAmt) this.adF("amount",nAmt);
        if (nSno==4 && sUser) this.adF("uid",sUser,128);
        this.track(this.effectURL+"?"+this.gTS());},
    trackEvent:function(sPath,sAttr,bCounter){
        if (!sPath) return;
        this.trackPageview("E",sPath,"",sAttr,bCounter);},
    trackNewpage:function(sPath,sTitle,sAttr){
        if (!sPath) return;
        this.trackPageview("S",sPath,sTitle,sAttr);},
    trackParams:function(sPath,sTitle,sAttr){
        if(!sPath) return;
        this.trackPageview("D",sPath,sTitle,sAttr);},
    extend:function(fname,fn,objTracker){
        var wT=objTracker||this;
        wT[fname]=fn;},
    wmxTracking:function(){this.trackPageview()}}
_wmx._getTracker=function(cli,camp,bsU,cnt,slt,adt){
    if (bsU) _wmx[cli+"_"+camp]=new _wmx(cli,camp,bsU,cnt||"1",slt||"1",adt||"0");
    for (i in _wmx) if (cli==undefined && /\w+_\w+/.test(i)) return _wmx[i];
    return _wmx[cli+"_"+camp]||new _wmx();}
function getTracker(sJS){
    var aJS=sJS?sJS.split("_"):[];
    if (aJS.length) return _wmx._getTracker(aJS[0],aJS[1],"wm7.ecrm.com.tw");
    else return _wmx._getTracker();}
function wmx_LogTrack(sPath,sTitle,sMode,sJS){
    var aJS=sJS?sJS.split("_"):[];
    var myTracker=_wmx._getTracker(aJS.length?aJS[0]:undefined,aJS[1]);
    myTracker.trackPageview(sMode,sPath,sTitle);}


if (typeof(_wmx)!="undefined"){
var myTracker = _wmx._getTracker("ctmsite", "website", "wm7.ecrm.com.tw");
myTracker.uli=29;
if (!isBLOG()) myTracker.trackPageview();
}

// houseid
(function(){
    if (/HouseDetail\.aspx$/.test(location.pathname))
    {
        var houseID = location.search.match(/houseid=(\d+)/i);
        var searchType = location.search.match(/searchtype=(\d+)/i);
        if (typeof myTracker != "undefined" && searchType && searchType[1] && houseID && houseID[1])
        {
            var aF = [];
            aF.push(['cli',myTracker.cli]);
            aF.push(['li',150]); //HouseSearch 名單ID
            aF.push([1,'W_S_UID']);
            aF.push([2,'W_S_SC']);
            aF.push([25,searchType[1]]);
            aF.push([36,houseID[1]]);
            myTracker.track([myTracker.addsURL,myTracker.gTS(aF)].join("?"));
            return;
        }
        
        var bgnTime = new Date().getTime();
        var tckID = function(){
                        var stamp = Math.round((new Date().getTime()-bgnTime)/1000);
                        if (typeof myTracker != "undefined" && houseID && houseID[1])
                        {
                            var aF = [];
                            aF.push([1,"W_S_UID"]);
                            aF.push([2,"W_S_SC"]);
                            aF.push([3,houseID[1]]);
                            aF.push([4,stamp]);
                            aF.push(["cli",myTracker.cli]);
                            aF.push(["li",149]); //HouseID 名單ID
                            myTracker.track([myTracker.addsURL,myTracker.gTS(aF)].join("?"));
                        }
                    };
        document.all?attachEvent("onunload",tckID):addEventListener("unload",tckID,false);
    }
    else if (/FranchiseDetail\.aspx/.test(location.pathname))
        typeof myTracker !="undefined" && location.search.match(/franchiseid=(\d+)/i) && RegExp.$1 ?
             myTracker.trackEvent(["","mainsite","store",RegExp.$1].join("/"),"/spec_track") : null;
    else if (/SearchFranchiseEmployee\.aspx/.test(location.pathname))
        typeof myTracker != "undefined" && location.search.match(/account_id=(\d+)/i) && RegExp.$1 ?
            myTracker.trackEvent(["","mainsite","agent",RegExp.$1].join("/"),"/spec_track") : null;
})();

function xHouseSearch()
{
    var sC = "/uxxd/sxxc/countyid1/countyid2/floor1/floor2/houseage1/houseage2/housearea1/housearea2/room1/room2/sellprice1/sellprice2/townshipid1/townshipid2/areatype/direction/housetypeattr/housetypeusage/housetypeclass/parkingspace/hxxf/mapsearchtype/searchType/keyword/ma_id/ml_id/ms_id/hsrs_id/schooltypeid/schoolid/parkid/leasefee1/leasefee2/hxxd/countyid/townshipid/streetid1";
    var oS = document.getElementById('myLastSearch');
    if (typeof myTracker != 'undefined' && oS && oS.childNodes.length){
        var sP = decodeURIComponent(myTracker.gP(String(oS.childNodes[0])));
        var aC = sC.split('/');
        var aP = [];

        var bST = false;
        for (i in aC){
            if (isNaN(i) || i<1) continue;
            if (aC[i] == "searchType" && bST) continue;
            if (aC[i] == "keyword") {
                var aR = sP.match(new RegExp(String(aC[i]) + '=(.*?)(&|$)', "i"));
                if (aR && aR.length){
                aP.push([i,aR[1]]);
                if (aC[i]=="mapsearchtype") bST = true;}
            }
            else {
                var aR = sP.match(new RegExp(String(aC[i]) + '=(\\d+\\\.*\\d*|\\w+|[^\x00-\x7f]+)', "i"));
                if (aR && aR.length){
                aP.push([i,aR[1]]);
                if (aC[i]=="mapsearchtype") bST = true;}
            }}

        if (aP.length){
            aP.push(['cli',myTracker.cli]);
            aP.push(['li',150]); //HouseSearch 名單ID
            aP.push([1,'W_S_UID']);
            aP.push([2, 'W_S_SC']);


            if (/housetypeattr=3/.test(sP)) {
                var aR = sP.match(/housetypeusage=(\w)/);
                if (aR) {
                    switch (aR[1]) {
                        case '1':
                            aP.push([23, '建地']);
                            break;
                        case '2':
                            aP.push([23, '農地']);
                            break;
                        case '3':
                            aP.push([23, '工業用地']);
                            break;
                        case '4':
                            aP.push([23, '其它用地']);
                            break;
                    }
                }
            }
            else {
                if (/housetypeusage=1/.test(sP)) {
                    var aR = sP.match(/housetypeclass=(\w)/);
                    if (aR) {
                        switch (aR[1]) {
                            case '1':
                                aP.push([23, '公寓']);
                                break;
                            case '2':
                                aP.push([23, '電梯大樓']);
                                break;
                            case '3':
                                aP.push([23, '套房']);
                                break;
                            case '4':
                                aP.push([23, '別墅']);
                                break;
                            case '5':
                                aP.push([23, '透天厝']);
                                break;
                            case '6':
                                aP.push([23, '樓中樓']);
                                break;
                            case '7':
                                aP.push([23, '工業住宅']);
                                break;
                            case '8':
                                aP.push([23, '其它']);
                                break;
                        }
                    }
                }
                else if (/housetypeusage=2/.test(sP)) {
                    var aR = sP.match(/housetypeclass=(\w)/);
                    if (aR) {
                        switch (aR[1]) {
                            case '1':
                                aP.push([23, '純辦']);
                                break;
                            case '2':
                                aP.push([23, '住辦']);
                                break;
                            case '3':
                                aP.push([23, '廠辦']);
                                break;
                            case '4':
                                aP.push([23, '廠房']);
                                break;
                            case '5':
                                aP.push([23, '店面']);
                                break;
                            case '6':
                                aP.push([23, '住店']);
                                break;
                            case '7':
                                aP.push([23, '商場']);
                                break;
                            case '8':
                                aP.push([23, '其它']);
                                break;
                        }
                    }
                }
                else if (/housetypeusage=3/.test(sP)) {
                    aP.push([23, '車位']);
                }
                else {
                    if (/searchtype=[16]/.test(sP)) {
                        aP.push([23, '不拘']);
                    }
                    
                }
            }
            myTracker.track([myTracker.addsURL, myTracker.gTS(aP)].join("?"));
        } 
    }
}

(function(){
    if (!isBLOG()) return;
    if (typeof myTracker == "undefined") return;
    var aCol = location.pathname.split("/");
    var aData = [];
    switch (aCol[2].toString().toLowerCase())
    {
    case "store":
        aData.push("store");
        aData.push(aCol[3].toString());
        if (aCol.length>4)
        {
            if (aCol[4].toString().toLowerCase()=="successcase" ||
                aCol[4].toString().toLowerCase()=="broker" ||
                aCol[4].toString().toLowerCase()=="comment" ||
                aCol[4].toString().toLowerCase()=="living" ||
                aCol[4].toString().toLowerCase()=="log")
                aData.push(aCol[4].toString());
            if (aCol[4].toString().toLowerCase()=="living")
            {
                location.search.match(/type=(live|subject)/i);
                if (RegExp.$1) aData.push(RegExp.$1);
            }
        }
        break;
    case "unio":
        aData.push("unio");
        aData.push(aCol[3].toString());
        if (aCol.length>4)
        {
            if (aCol[4].toString().toLowerCase()=="successcase" ||
                aCol[4].toString().toLowerCase()=="broker" ||
                aCol[4].toString().toLowerCase()=="comment" ||
                aCol[4].toString().toLowerCase()=="living" ||
                aCol[4].toString().toLowerCase()=="log")
                aData.push(aCol[4].toString());
            if (aCol[4].toString().toLowerCase()=="living")
            {
                location.search.match(/type=(live|subject)/i);
                if (RegExp.$1) aData.push(RegExp.$1);
            }
        }
        break;
    case "agent":
        aData.push("agent");
        aData.push(aCol[3].toString());
        if (aCol.length>4)
        {
            if (aCol[4].toString().toLowerCase()=="successcase" ||
                aCol[4].toString().toLowerCase()=="broker" ||
                aCol[4].toString().toLowerCase()=="comment" ||
                aCol[4].toString().toLowerCase()=="living" ||
                aCol[4].toString().toLowerCase()=="log")
                aData.push(aCol[4].toString());
            if (aCol[4].toString().toLowerCase()=="living")
            {
                location.search.match(/type=(live|subject)/i);
                if (RegExp.$1) aData.push(RegExp.$1);
            }
        }
        break;
    default:    
    }
    var bFrmMain = myTracker.from.match(myTracker.baseHost) && !myTracker.from.match(/\/blog\//i);
    if (aData.length) myTracker.trackEvent("/"+aData.join("/"),"/spec_track"+(bFrmMain?"/FromMain":""));
})();
function isBLOG()
{
    return (location.pathname.split("/").length>1&&location.pathname.split("/")[1]=="blog");
}