
function el(a){return document.getElementById(a);}
function setOpacity(ele,opacity){if(ele.filters)
ele.style.filter='alpha(opacity= '+opacity+')';else
ele.style.opacity=opacity/100;}
function getStyle(ele){if(window.getComputedStyle){return window.getComputedStyle(ele,null);}else{return ele.currentStyle;}}
var addListener=(function(){if(window.attachEvent){return function(ele,eType,listener){ele.attachEvent("on"+eType,listener);}}else if(window.addEventListener){return function(ele,eType,listener){ele.addEventListener(eType,listener,false);}}else{return function(ele,eType,listener){if(!ele.listeners){ele.listeners=[];ele["on"+eType]=function(e){for(var i=0,len=ele.listeners.length;i<len;i++){ele.listeners[i]&&ele.listeners[i](e);}}}
ele.listeners.push(listener);}}})();function addStyle(css_str){var css=document.createElement('style');css.setAttribute('type','text/css');if(css.styleSheet){css.styleSheet.cssText=css_str;}else{var css_text=document.createTextNode(css_str);css.appendChild(css_text);}
document.getElementsByTagName("head")[0].appendChild(css);}
var removeListener=(function(){if(window.detachEvent){return function(ele,eType,listener){ele.detachEvent("on"+eType,listener);}}else if(window.removeEventListener){return function(ele,eType,listener){ele.removeEventListener(eType,listener,false);}}else{if(ele.listeners){for(var i=0,len=ele.listeners.length;i<len;i++){if(ele.listeners[i]==listener){delete ele.listeners[i];return true;}}}}})();function fireEvent(ele,etype){if(ele.fireEvent){ele.fireEvent("on"+etype.replace(/^on/,""));}else{var evt=document.createEvent('HTMLEvents');evt.initEvent(etype.replace(/^on/,""),true,true);ele.dispatchEvent(evt);}}
function getCookieVal(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1){endstr=document.cookie.length;}
return unescape(document.cookie.substring(offset,endstr));}
function getCookie(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;var j=0;while(i<clen){j=i+alen;if(document.cookie.substring(i,j)==arg)
return getCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0)
break;}
return null;}
function deleteCookie(name){var exp=new Date();var cval=getCookie(name);exp.setTime(exp.getTime()-1);document.cookie=name+"="+cval+"; expires="+exp.toGMTString();}
var gCookieExpDays=80;function setCookie(name,value){var argv=setCookie.arguments;var argc=setCookie.arguments.length;var exp=(argc>2)?argv[2]:gCookieExpDays;var path=(argc>3)?argv[3]:null;var domain=(argc>4)?argv[4]:null;var secure=(argc>5)?argv[5]:false;var expires=new Date();deleteCookie(name);expires.setTime(expires.getTime()+(exp*365*24*60*60*1000));document.cookie=name+"="+escape(value)+"; expires="+expires.toGMTString()+((domain==null)?"":("; domain="+domain))
+((path==null)?"":("; path="+path))+((secure==true)?"; secure":"");}
function setClass(ele,value){if(typeof ele.className!=undefined){ele.className=value;}else{ele.setAttribute("class",value);}}
function loadJS(src){document.write('<script type="text/javascript" src="'+src+'"></script>');}
function getClass(ele){if(typeof(ele.className)!=undefined){return ele.className;}else{return ele.getAttribute("class");}}
function trim(str){return str.replace(/^\s*|\s*$/g,"");}
function inputOnFocus(ele){if(!ele.getAttribute("change")&&ele.value==ele.getAttribute("defaultValue")){ele.style.color="#000000";ele.value="";ele.setAttribute("change",true);}}
function inputOnBlur(ele){if(trim(ele.value)==""){ele.style.color="#cccccc";ele.value=ele.getAttribute("defaultValue");ele.removeAttribute("change");}else{ele.setAttribute("change",true);}}
function hasUserInput(ele){return ele.value&&ele.getAttribute("change");}
function buslineSearch(lq){var buslineurl="http://map.sogou.com/#city="+info.cityCN+"&c="+info.center+"&s=m==businfo!!appid==1361!!keyword=="+lq;log("bussearch","maps",buslineurl.substring(21),lq);window.open(buslineurl);}
function busSearch(){var eleClass=getClass(el('busSearch_content'));if(eleClass=="buslineSearch"){var buslinesInput=el("buslinesInput");var busline=trim(buslinesInput.value);if(!hasUserInput(buslinesInput)){alert(buslinesInput.getAttribute("defaultValue"));buslinesInput.focus();return;}
buslineSearch(busline);}else{var fromEle=el("from_bus");var toEle=el("to_bus");if(!hasUserInput(fromEle)){alert(fromEle.getAttribute("defaultValue"));fromEle.focus();return;}
if(!hasUserInput(toEle)){alert(toEle.getAttribute("defaultValue"));toEle.focus();return;}
var busurl="http://map.sogou.com/#city="+info.cityCN+"&c="+info.center+"&s=m==bus!!appid==1361!!start=="+fromEle.value+"!!end=="+toEle.value
+"!!fromtype==name!!totype==name!!tactic==8!!mode==LUCKY";log("bussearch","maps",busurl.substring(21),fromEle.value+"-"+toEle.value);window.open(busurl);}}
function driveSearch(){var fromEle=el("from_drive");var toEle=el("to_drive");if(!hasUserInput(fromEle)){alert(fromEle.getAttribute("defaultValue"));fromEle.focus();return;}
if(!hasUserInput(toEle)){alert(toEle.getAttribute("defaultValue"));toEle.focus();return}
var driveurl="http://map.sogou.com/#c="+info.center+"&s=m==nav!!start=="+fromEle.value+"!!end=="+toEle.value+"!!fromtype==name!!totype==name";log("drivesearch","maps",driveurl.substring(21),fromEle.value+"-"+toEle.value);window.open(driveurl);}
function mapSearch(lq){if(lq){var url="http://map.sogou.com/index.html#city="+info.cityCN+"&c="+info.center+"&lq="+lq;log("mapssearch","maps",url.substring(21),lq);window.open(url);}else{var input=el("searchInput");lq=trim(input.value);if(!hasUserInput(input)){alert(input.getAttribute("defaultValue"));input.focus();}else{arguments.callee(lq);}}}
function switchTab(ele,callback){var nodes=ele.parentNode.parentNode.getElementsByTagName("div");var tabContent;for(var i=0,len=nodes.length;i<len;i++){if(nodes[i].nodeType==1){setClass(nodes[i],getClass(nodes[i]).replace("tabSel","tab"))
tabContent=el(nodes[i].id+"_content")
tabContent&&(tabContent.style.display="none");}}
setClass(ele,getClass(ele).replace("tab","tabSel"))
tabContent=el(ele.id+"_content");tabContent&&(tabContent.style.display="block");callback&&callback(ele);}
function isTabSelected(ele){return getClass(ele).indexOf("tabSel")!=-1}
function lushuSearchWordEscape(b){return escape(b).replace(new RegExp("%u","gm"),"%25u")}
function lushuSearch(lq,isSearch){if(lq){var url="http://map.sogou.com/lushu/search#q="+lushuSearchWordEscape(lq)+"&keytype=key&searchKeyType=userWriteKey";isSearch&&log("hotLushu.search","lushu",url.substring(27),lq);window.open(url);}else{var input=el("lushuSearchInput");lq=trim(input.value);if(!lq||!input.getAttribute("change")){alert(input.getAttribute("defaultValue"))
input.focus();}else{arguments.callee(lq,true);}}}
var fenbuIds={
    "beijing":["109498","109499","109500"],
    "shanghai":["109511","109512","109513"],
    "guangzhou":["109516","109517","109518"],
    "shenzhen":["109521","109522","109523"],
    "chengdu":["109526","109527","109528"],
    "xian":["109531","109532","109533"],
    "chongqing":["109536","109537","109538"],
    "tianjin":["109541","109542","109543"],
    "jinan":["109546","109547","109548"],
    "qingdao":["110059","110060","110061"],
    "haikou":["110572","110573","110574"]};
function houseSearch(priceLow, priceHigh) {
    var url = "http://map.sogou.com/store/" + info.city + "+m=";
    var data=fenbuIds[info.city];
    if (isTabSelected(el("newHouse"))) {
        url += escape("新楼盘").replace(/%u/g,"_")+"#q="+data[0];
    } else if (isTabSelected(el("oldHouse"))) {
        url += escape("二手房").replace(/%u/g,"_")+"#q="+data[1];
    } else if (isTabSelected(el("rentHouse"))) {
        url += escape("租房").replace(/%u/g,"_")+"#q="+data[2];
    }else{
        return;
    }
    if (!hasUserInput(el("houseSearchInput"))) {
        alert(el("houseSearchInput").getAttribute("defaultValue"));
        el("houseSearchInput").focus();
    } else {
        var lq = el("houseSearchInput").value;
        url+="&search=c::"+escape(lq);
        log("house", "house", url.substring(27), lq);
        window.open(url);
    }
    return false;
}
function setCity(city){window.open("index.jsp?city="+encodeURI(city),"_self");return false;}
function toggleCitySelector(){var ele=el('citySelector');if(getStyle(ele).display!="none"){ele.style.display="none";}else{ele.style.display="block";}}
function toggleCitySelector2(){var ele=el("buscitySelector");if(getStyle(ele).display!="none"){ele.style.display="none";return false;}
var citydata=SGS.getCitydata();var sb=[];sb.push('<div class="hot province">&nbsp;\u70ED\u95E8:</div><div class="hot cityList">');var citys=citydata.city;for(var i=0,len=citys.length;i<len;i++){if(citys[i].bus){var c=citys[i].x+","+citys[i].y+","+citys[i].level;sb.push('<a target="_blank" href=http://map.sogou.com/#city='+citys[i].name+'&s=m==bus&s=m==bus&c='+c+'>'
+citys[i].name+'</a>&nbsp;');}}
sb.push('</div>');var provinces=citydata.province;for(var i=0,len=provinces.length;i<len;i++){var citys=provinces[i].citys;var sb2=['<div class="province">'+provinces[i].oi.toUpperCase()+provinces[i].name+':</div><div class="cityList">'];for(var j=0,len2=citys.length;j<len2;j++){if(citys[j].bus){var c=citys[j].x+","+citys[j].y+","+citys[j].level;sb2.push('<a target="_blank" href=http://map.sogou.com/#city='+citys[j].name+'&s=m==bus&c='+c+'>'+citys[j].name
+'</a>&nbsp;');}}
sb2.push("</div>");if(sb2.length>2){sb.push(sb2.join(""));}}
var head="<div class=winTitle><div class=close onclick=toggleCitySelector2()></div>"
+"<span style=float:left>\u5DF2\u5F00\u901A\u516C\u4EA4\u67E5\u8BE2\u7684\u57CE\u5E02\u5217\u8868</span></div>"
ele.innerHTML=head+"<div class=win>"+sb.join("")+"</div>";ele.style.display="block";return false;}
addListener(window,"load",function(){if(!SGS.getCitydata(info.cityCN).bus){addStyle("#busSearchPanel,#buslinesPanel,#busTypeSwitch {display:none;};");el("busSearchBG").style.display="none";el("notSupportBus").style.display="block";if(info.cityCN=="\u5168\u56FD"){el("notSupportBusImg").style.display="none";el("notSupportBusImg2").style.marginLeft="-25px";}else{el("notSupportBusImg2").style.display="none";}}});addListener(window,"load",function(){var t=el("newHouse")
if(t){t.className="tabSel";}});

var slider = {
    from : 0,
    imgs:[],
    btns:[],
    titles:[],
    interval : 3000,
    switchImgslider : function(to, callback) {
        var from = this.from || 0;
        if (from == to)
            return;
        //clear
        if (this.timer) {
            window.clearInterval(this.timer);
            setOpacity(this.fromImg, 100);
            setOpacity(this.toImg, 100);
            this.fromImg.style.display = "none";
            this.toImg.style.display = "block";

            setOpacity(this.fromTitle, 100);
            setOpacity(this.toTitle, 100);
            this.fromTitle.style.display = "none";
            this.toTitle.style.display = "block";
        }

        to = to % this.imgs.length;
        for (var i = 0, len = this.btns.length; i < len; i++) {
            setClass(this.btns[i], "btn");
        }
        setClass(this.btns[to], "btnsel");
        this.index = to;
        this.fromImg = this.imgs[from];
        this.toImg = this.imgs[to];

        this.fromTitle = this.titles[from];
        this.toTitle = this.titles[to];
        var tvl = 25, opacity = 100, flag = false;
        var self = this;
        this.timer = window.setInterval(function() {
                    if (!flag) {//隐藏上一个
                        setOpacity(self.fromImg, opacity -= 5);
                        setOpacity(self.fromTitle, opacity -= 5);
                        if (opacity <= 0) {
                            self.fromImg.style.display = "none";
                            setOpacity(self.fromImg, 100);
                            setOpacity(self.toImg, 0);
                            self.toImg.style.display = "block";

                            self.fromTitle.style.display = "none";
                            setOpacity(self.fromTitle, 100);
                            setOpacity(self.toTitle, 0);
                            self.toTitle.style.display = "block";
                            opacity = 0;
                            flag = true;
                        }
                    } else {//显示下一个
                        setOpacity(self.toImg, opacity += 3);
                        setOpacity(self.toTitle, opacity += 3);
                        if (opacity >= 100) {
                            setOpacity(self.toImg, 100);
                            setOpacity(self.toTitle, 100);
                            window.clearInterval(self.timer);
                            self.timer = 0;
                            self.from = to;
                            callback && callback();
                        }
                    }
                }, tvl);
    },
    play : function() {
        this.intervalTimer = window.setInterval(function() {
                    slider.switchImgslider(slider.from + 1);
                }, this.interval);
       for(var i=0,len=this.imgs.length;i<len;i++){
            this.imgs[i].onmouseover=function(){slider.stop();}
            this.imgs[i].onmouseout=function(){slider.play();}
       }
       for(var i=0,len=this.titles.length;i<len;i++){
            this.titles[i].onmouseover=function(){slider.stop();}
            this.titles[i].onmouseout=function(){slider.play();}
       }
    },
    stop : function() {
        window.clearInterval(this.intervalTimer);
    }
};
function clickSliderBtn(index) {
    slider.stop();
    slider.switchImgslider(index, function() {
                slider.play();
            });
}
addListener(window, "load", function() {
        slider.imgs=el("sliderImgs").getElementsByTagName("img");
        slider.titles=el("sliderTitles").getElementsByTagName("a");
        slider.btns=el("sliderBtns").getElementsByTagName("div");
        slider.interval=5000;
        if(slider.btns.length>0) slider.play();
});

function uniqueId(){var a=Math.random;var b=parseInt;return Number(new Date()).toString()+b(10*a())+b(10*a())+b(10*a());}
function log(a,b,c,d){if(a&&b){var img=new Image();var uvid=getCookie("SMAPUVID");if(!uvid){uvid=uniqueId();setCookie("SMAPUVID",uvid);}
c=c||"";d=d||"";info.debug&&alert("user="+log.user+"\nuvid="+uvid+"\ncity="+info.city+"\npanel="+a+"\nto="+b+"\nhref="+c+"\nele="+d);img.src="http://61.135.178.50/clientlog/go2map?user="+log.user+"&uvid="+uvid+"&city="+escape(escape(info.city))+"&panel="+escape(escape(a))
+"&to="+escape(escape(b))+"&href="+escape(escape(c))+"&ele="+escape(escape(d))+"&rnd="+uniqueId();}}
log.user=uniqueId();addListener(window,"load",function(){fixPng();addListener(document.body,"click",function(a){a=a||event;var srcEle=a.srcElement||a.target;if(srcEle.nodeType!=1)
return;var to="";var href="";var ele=srcEle;while(ele&&ele!=document&&ele.tagName.toLowerCase()!="a"){ele=ele.parentNode;}
if(ele&&ele!=document&&ele.tagName.toLowerCase()=="a"){href=ele.href;}
if(href.indexOf("http://map.sogou.com/")==0){href=href.substring(21);var res=href.match(/^([^\/]*)\/([\s|\S]*)$/);if(res&&res.length>2){to=res[1];href=res[2];}else{to="maps";href=href;}}else{to=href;href="";}
var panel=getPanel(srcEle);var id=srcEle.getAttribute("name")||srcEle.getAttribute("id")||srcEle.getAttribute("className")||"";if(!id){var innerText=srcEle.innerText||srcEle.textContent||"";innerText=innerText.replace(/^\s*|\s*$/g,"");if(innerText.length>50){innerText=innerText.substr(0,50);}
id=innerText;}
log(panel,to,href,id);});});function getPanel(ele){while(ele&&ele.nodeType==1){var name=ele.getAttribute("logPanel");if(name){return name;}else{ele=ele.parentNode;}}}
function getLogger(ele){if(ele.nodeType==1){var href;if(ele.tagName.toLowerCase()=="a"){href=ele.href;}else if(ele.parentNode&&ele.parentNode.tagName.toLowerCase()=="a"){href=ele.parentNode.href;}
if(href){if(href.indexOf("http://map.sogou.com/")==0){href=href.substring(21);var res=href.match(/^([^\\]*)\//);if(res&&res.length>1){return res[1];}else{return"maps";}}else{return href;}}}
return ele.getAttribute("name")||ele.getAttribute("id")||ele.getAttribute("className")||"";}
window.onerror=function(msg,url,line){log("windowError",msg,"",line);return true;}
function fixPng(){var f=navigator.appVersion.split("MSIE");var h=parseFloat(f[1]);if((h>=5.5&&h<7)&&(document.body.filters)){for(var c=0;c<document.images.length;c++){var a=document.images[c];var b=a.src.toUpperCase();if(a.getAttribute("fix")=="true"&&b.indexOf(".PNG")>0){var d=a.width;var g=a.height;var e=(a.className.toLowerCase().indexOf("scale")>=0)?"scale":"image";a.runtimeStyle.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+a.src.replace("%23","%2523").replace("'","%27")+"', sizingMethod='"+e+"')";a.src=resourcePath+"images/blank.gif";a.width=d;a.height=g}}}}
function switchCategory(ele){var count=info.house?4:3;for(var i=1;i<=count;i++){el("citems"+i).style.display="none";setClass(el("c"+i),"");}
var index=ele.id.replace(/^[^\d]*/,"");el("citems"+index).style.display="block";setClass(el("categoryLink"),"categoryLinkFocus"+index);setClass(ele,"subCateFocus");}
addListener(window,"load",function(){log("referer",document.referrer);});
function isMouseLeaveOrEnter(e, handler) {
    if (e.type != 'mouseout' && e.type != 'mouseover')
        return false;
    var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement;
    while (reltg && reltg != handler)
        reltg = reltg.parentNode;
    return (reltg != handler);
}
