/**
 * Top City Application Framework JavaScript
 *
 * @package Application
 * @category JavaScript
 * @subpackage Album
 * @author Louis
 * @version $0.3$
 * @copyright 2007-9-18 15:00:30
 */
var popular={_setting:{"ItemType":"a","MenuClass":"VoteMenu","MiniHolder":"MiniMenu","MiniMenuLinks":"MiniMenuLinks"},_popularitems:[getJs(338)+"| ",getJs(333)+"|24",getJs(334)+"|week",getJs(335)+"|month",getJs(336)+"|year",getJs(337)+"|all"],Run:function(of,om,ol){
    this._setting.voteup=makex("img");
    this._setting.voteup.src="/images/icon/voted_up.gif";
    this._setting.votedown=makex("img");
    this._setting.votedown.src="/images/icon/voted_down.gif";
    if(getx(of)){
      if(of=="NetworkBlogs"||of=="BlogList"){
        //this.linkPrefix="?"+trigger+"=Network/VoteBlog";
        this.linkPrefix="/Network/VoteBlog";
      }else {
        if(of=="PhotoBar"||of=="PhotoList"){
          //this.linkPrefix="?"+trigger+"=Network.VotePhoto";
          this.linkPrefix="/network/votephoto";
        }else {
          this.linkPrefix=false;
          return ;
        }
      }
      this.hands=getx(of).getElementsByTagName("img");
      for(var i=0;i<this.hands.length;i++){
        var _i=this.hands[i];
        if(_i.alt.indexOf("Vote")>=0&&!isNaN(_i.alt.substring(5))){
          _i.style.cursor="pointer";
          _i.onclick=function(){
            popular.submit(this);
          };
        }
      }
    }
    if(om&&getx(om)){
      getx(om).className=this._setting.MenuClass;
      getx(om).onmouseover=function(){
        popular.draw(this,ol||false);
      };
    }
    return ;
  },Login:function(of){
    this.hands=getx(of).getElementsByTagName("img");
    for(var i=0;i<this.hands.length;i++){
      var _i=this.hands[i];
      if(_i.alt.indexOf("Vote")>=0&&!isNaN(_i.alt.substring(5))){
        _i.style.cursor="pointer";
        _i.onclick=function(){
          $.get("/CheckIn/GotoLogin/href:"+window.location.href,gotoUrl);
        };
      }
    }
  },getPage:function(){
    _href=window.location.href;
    if(_href.indexOf("Page")<0){
      return "";
    }
    _href=_href.split("/");
    for(var i=0;i<_href.length;i++){
      if(_href[i].indexOf("Page"+":")==0){
        return "/"+_href[i];
      }
    }
  },getTag:function(){
    _href=window.location.href;
    if(_href.indexOf("tagid")<0){
      return "";
    }
    _href=_href.split("/");
    for(var i=0;i<_href.length;i++){
      if(_href[i].indexOf("tagid"+":")==0){
        return "/"+_href[i];
      }
    }
  },draw:function(o,_link){
    var op=o.parentNode;
    op.style.position="relative";
    _baselink=o.href+"/Votes:";
    _page=this.getPage();
    _tag=this.getTag();
    _holder=addx(op.parentNode,makex("div"));
    _holder.className=this._setting.MiniHolder;
    var _pop=this.PopWindow(_holder);
    _pop._core.style.textAlign="right";
    if(_link){
      var _a=addx(_pop._core,makex("a"));
      _a.innerHTML=_link.text;
      _a.href="#"+_link.href;
      _a.className="border";
      _a.onclick=function(){
        var _href=o.href+_page;
        //document.cookie="Votes="+this.href.substring(this.href.indexOf("#")+1)+";domain="+domain+";path=/";
        gotoUrl(_href);
        return false;
      };
    }
    for(i=0;i<this._popularitems.length;i++){
      var _a=addx(_pop._core,makex("a")),votetext=this._popularitems[i];
      var arr = votetext.split("|");
      _a.innerHTML=arr[0];
      _a.href=o.href+"/"+arr[1];
      _a.onclick=function(){
        var _href=this.href;
        gotoUrl(_href);
        return false;
      };
    }
    if(_pop._core.offsetWidth<o.offsetWidth-12){
      _pop._core.style.width=o.offsetWidth-12+"px";
    }
    _holder.style.top=o.offsetHeight+op.offsetTop+"px";
    _holder.style.paddingLeft=o.offsetLeft+o.offsetWidth-_holder.offsetWidth+"px";
    op.style.position="static";
    o._holder=_holder;
    o.onmouseover=function(){
      cleartimer(this._holder._timer);
      this._holder.style.display="block";
    };
    o.onmouseout=function(){
      cleartimer(this._holder._timer);
      var _holder=this._holder;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
    _pop.onmouseover=function(){
      cleartimer(this.parentNode._timer);
    };
    _pop.onmouseout=function(){
      cleartimer(this.parentNode._timer);
      var _holder=this.parentNode;
      _holder._timer=setTimeout(function(){
        _holder.style.display="none";
      },500);
    };
  },PopWindow:function(x){
    var _table=makex("table",{"id":"PopWindow"});
    var _tbody=addx(_table,makex("tbody"));
    var _tr=addx(_tbody,makex("tr"));
    var PopArea=addx(_tr,makex("td"));
    var _th=addx(_tr,makex("th",{"id":"PopTR"}));
    var _img=addx(_th,makex("img"));
    _img.src="/images/tabbar/shadow-tr.gif";
    var _tr=addx(_tbody,makex("tr"));
    var _th=addx(_tr,makex("th",{"id":"PopBL"}));
    addx(_th,makex("div",{"id":"PopB"}));
    addx(_tr,makex("th",{"id":"PopBR"}));
    addx(x,_table);
    var _div=addx(PopArea,makex("div"));
    _div.className=this._setting.MiniMenuLinks;
    _table._core=_div;
    if(navigator.userAgent.indexOf("MSIE")>=0){
      css.add("table#PopWindow th","filter:alpha(opacity=60);");
    }
    return _table;
  },submit:function(o){
    var voteid=parseInt(o.alt.substring(5))||false;
    if(o.alt=="Vote Done"||o.done||!voteid||!popular.linkPrefix){
      $.matrix.Float.Tip(getJs(1881),1500);
    }else {
      this._setting[voteid]=o;
      var url=false;
      if(o.title=="Vote Up"){
        url="Up/Vote:"+voteid;
      }else {
        if(o.title=="Vote Down"){
          url="Down/Vote:"+voteid;
        }
      }
      if(url){
        $.get(popular.linkPrefix+url,popular.result);
      }
    }
  },result:function(data){
    var _tiptext=getJs(1880);
    if(data.indexOf("'Result'")==1){
      var result=eval("("+data+")");
      var vp=popular._setting[result.VoteID].parentNode;
      var pp=vp.getElementsByTagName("img");
      vp.replaceChild(popular._setting.voteup.cloneNode(true),pp[0]);
      vp.replaceChild(popular._setting.votedown.cloneNode(true),pp[1]);
      th=vp.parentNode.getElementsByTagName("th")[0];
      td=vp.parentNode.parentNode.getElementsByTagName("td")[1];
      if(result.Result=="VotedDown"){
        _tiptext=getJs(1882);
        th.innerHTML=result.Vnum;
        td.innerHTML=result.Vtext;
      }else {
        if(result.Result=="VotedUp"){
          _tiptext=getJs(1883);
          th.innerHTML=result.Vnum;
          td.innerHTML=result.Vtext;
        }else {
          if(result.Result=="Voted"){
            _tiptext=getJs(1881);
          }
        }
      }
    }
    $.matrix.Float.Tip(_tiptext,1500);
  }};
