//global function
var gid = function(id){
    return typeof id == 'string' ? document.getElementById(id):id;
}
var gtn = function(oCon,sName){
    return oCon.getElementsByTagName(sName);
}

var tabtimer = null;

//Rotation
var Rotation = {
    timer : null,
    cur : null,
    init : function(sConId){
        this._container = gid(sConId);
        this._pics = gtn(gtn(this._container, "ul")[0], "li");
        this._thumbs = gtn(gtn(this._container, "ul")[1], "li");
        this.cur = this.locate();
        var _self = this;

        for (var i = 0, iLen = this._thumbs.length; i < iLen; i++) {
            this._thumbs[i].onclick = (function(i, _self) {
                return function() {
                    _self._pics[i].style.display = "block";
                    _self._thumbs[_self.cur].style.border = "2px #ccc solid";
                    _self._thumbs[i].style.border = "2px #380c0d solid";
                    _self.change(i, 100);
                }
            })(i, this);
        }

        this._container.onmouseover = function(){
            if(_self.timer){
                clearTimeout(_self.timer);
            }
        }
        this._container.onmouseout = function(){
            _self.timer = setTimeout(function(){_self.play(_self)}, 3000);
        }

        this.timer = setTimeout(function(){_self.play(_self)}, 3000);
    },
    change : function(i, n) {
        var _self = this;
        if(i == this.cur){
            return;
        }
        if(n == 0){
            this._pics[this.cur].className="";
            this._pics[this.cur].style.display="none";
            this._pics[i].className="s";
            this._thumbs[this.cur].className="";
            this._thumbs[this.cur].style.border="2px #ccc solid";
            this._thumbs[i].className="s";
            this.cur = i;
            return;
        }
        n -= 10;
        if(/*@cc_on!@*/!1){
            this._pics[this.cur].style.filter = "Alpha(opacity=" + n + ")";
            this._pics[i].style.filter = "Alpha(opacity=" + (100-n) + ")";
            this._thumbs[this.cur].style.filter = "Alpha(opacity=" + (30+n*0.7) +")";
            this._thumbs[i].style.filter = "Alpha(opacity="+(30+(100-n)*0.7)+")";
        }else{
            this._pics[this.cur].style.opacity =  n/100;
            this._pics[i].style.opacity = (100-n)/100;
            this._thumbs[this.cur].style.opacity =(30+n*0.7)/100;
            this._thumbs[i].style.opacity = (30+(100-n)*0.7)/100;
        }
        setTimeout(function(){_self.change(i,n)}, 50);
    },
    locate : function() {
        for (var i = 0, iLen = this._pics.length; i < iLen; i++) {
            if(this._pics[i].className == "s"){
                return i;
            }
        }
    },
    play : function(_self) {
        clearTimeout(_self.timer);
        var loc = (_self.cur +1)%5;
        _self._pics[loc].style.display = "block";
        _self._thumbs[_self.cur].style.border = "2px #ccc solid";
        _self._thumbs[loc].style.border = "2px #380c0d solid";
        _self.change(loc,100);
        _self.timer = setTimeout(function(){_self.play(_self)}, 3000);
    },
    clearStyle : function(){
        for (var i = 0, iLen = this._thumbs.length; i < iLen; i++) {
            this._pics[i].className = "";
            this._thumbs[i].className = "";
        }
    }
}

//hot_top
function hottop() {
    $("#hottop_tab a").each(function(){
        $(this).mouseover(function(){
            $("#hottop_tab li").removeClass("st");
            $(this).parent().addClass("st");
            $.get($(this).attr("href"),function(data){
                $("#hottop_content").html(data);
                $("#hottop_content li").eq(0).addClass("hit_li");
            });
            return false;
        }).click(function(){
            return false;
        });
    });
    $.get($("#hottop_tab a").eq(0).attr("href"),function(data){
        $("#hottop_content").html(data);
        $("#hottop_content li").eq(0).addClass("hit_li");
    });
}

//tab
function tab(sId,type) {
    $("#"+sId+"_tab li a").each(function(i){
        $(this).mouseover(function(){
            $("#"+sId+"_tab li").removeClass("state");
            $(this).parent().addClass("state");
            $("#"+sId+" div[id*='content']").removeClass("state");
            $("#"+sId+"_content"+i).addClass("state");
            return false;
        })
        .click(function(){
            if(type){
                return false;
            }
        });
    });
    if(type){
        $("#"+sId+" div[id*='content']").each(function(){
            $(this)
                .mouseover(function(){
                    if(tabtimer != null){
                        clearTimeout(tabtimer);
                    }
                })
                .mouseout(function(){
                    tabtimer = setTimeout(function(){changetab(sId)},3000);
                });
        });
        tabtimer = setTimeout(function(){changetab(sId)},3000);
    }
}

function changetab(sId) {
    clearTimeout(tabtimer);
    var cur = 0;
    $("#"+sId+"_tab li").each(function(i){
        if($(this).hasClass("state")){
            cur = i;
        }
    });
    var next = (cur+1)%$("#"+sId+"_tab li a").length;
    $("#"+sId+"_tab li").eq(cur).removeClass("state");
    $("#"+sId+"_content"+cur).removeClass("state");
    $("#"+sId+"_tab li").eq(next).addClass("state");
    $("#"+sId+"_content"+next).addClass("state");
    tabtimer = setTimeout(function(){changetab(sId)},3000);
}


//scroll
var scrollbar = {
    speed : 3,
    timer : null,
    init : function() {
        var _self = this;
        this._content = $("#scroll_content");
        this._max = parseInt(this._content.css("width")) - parseInt(this._content.parent().css("width"));

        $("#scroll_left").mouseover(function(){
            _self.left();
            $(this).css("backgroundPosition", "0 -99px");
        }).mouseout(function(){
            clearTimeout(_self.timer);
            $(this).css("backgroundPosition", "0 0");
        }).mousedown(function(){
            _self.speed = 20;
        }).mouseup(function(){
            _self.speed = 3;
        });

        $("#scroll_right").mouseover(function(){
            _self.right();
            $(this).css("backgroundPosition", "0 -99px");
        }).mouseout(function(){
            clearTimeout(_self.timer);
            $(this).css("backgroundPosition", "0 0");
        }).mousedown(function(){
            _self.speed = 20;
        }).mouseup(function(){
            _self.speed = 3;
        });
    },
    left : function() {
        var _self = this;
        var iMarginLeft = parseInt(this._content.css("marginLeft"));
        if(iMarginLeft + this._max > 0 ){
            this._content.css("marginLeft", iMarginLeft - this.speed + "px");
            this.timer = setTimeout(function(){_self.left();},50);
        }else{
            $("#scroll_left").css("backgroundPosition", "0 0");
        }
    },
    right : function() {
        var _self = this;
        var iMarginLeft = parseInt(this._content.css("marginLeft"));
        if(iMarginLeft < 0 ){
            this._content.css("marginLeft", iMarginLeft + this.speed + "px");
            this.timer = setTimeout(function(){_self.right();},50);
        }else{
            $("#scroll_right").css("backgroundPosition", "0 0");
        }
    }
}
