﻿function xwzRollingImageTrans(imageName, thumbnailName, titleName, summaryName, eventName, winName) {
    this.Index = 0;
    this.ListItem = new Array(0);
    this.Name = imageName;
    this.Thumbnail = thumbnailName;
    this.tmRotate = null;
    this.nInterval = 4500;
    this.eventName = eventName;
    this.winTarget = winName;
    this.Title = titleName;
    this.Summary = summaryName;

    if (window.xwzRollObject == null) window.xwzRollObject = new Array(0);
    window.xwzRollObject[this.Name] = this;

    this.install = function () {
        window.document.images[this.Name].onclick = this.goLink;
        if (this.ListItem.length == 0) return;
        //this.tmRotate = setTimeout("window.xwzRollObject['" + this.Name + "'].rotateTrans()", this.nInterval);
        var icons = document.getElementsByName(this.Thumbnail);
        for (var i = 0; i < icons.length; i++) {
            if (this.eventName == 'over') icons[i].onmouseover = new Function("window.xwzRollObject['" + this.Name + "'].alterImage(" + i + ")");
            else icons[i].onclick = new Function("window.xwzRollObject['" + this.Name + "'].alterImage(" + i + ")");
        }
    }

    this.addItem = function (Link, ImgSrc, Icon1, Icon2, Title, Summary) {
        var itmX = { Link: "", ImgSrc: "", DefIcon: "", OvrIcon: "", Title: "", Summary: "" };
        itmX.Link = Link;
        itmX.ImgSrc = ImgSrc;
        itmX.DefIcon = Icon1;
        itmX.OvrIcon = Icon2;
        itmX.Title = Title;
        itmX.Summary = Summary;
        this.ListItem[this.ListItem.length] = itmX;
    }

    this.alterImage = function (index) {
        var icons = document.getElementsByName(this.Thumbnail);
        if (this.Index == index) return;
        if (this.ListItem[this.Index].DefIcon != "") icons[this.Index].src = this.ListItem[this.Index].DefIcon;

        this.Index = index;
        this.imgTrans();
        //        clearTimeout(this.tmRotate);
        //        this.tmRotate = null;
        //        this.tmRotate = setTimeout("window.xwzRollObject['" + this.Name + "'].rotateTrans()", this.nInterval);

    }


    this.goLink = function () {
        var name = this.getAttribute('name');
        var xwzRoll = window.xwzRollObject[name];
        clearTimeout(xwzRoll.tmRotate);
        xwzRoll.tmRotate = null;
        //xwzRoll.winTarget = "_blank"; //定义是否弹出新页面
        if (xwzRoll.winTarget == '' || xwzRoll.winTarget == null) {
            window.location.href = xwzRoll.ListItem[xwzRoll.Index].Link;
        } else {
            window.open(xwzRoll.ListItem[xwzRoll.Index].Link, xwzRoll.winTarget);
        }
    }


    this.rotateTrans = function () {
        var icons = document.getElementsByName(this.Thumbnail);
        var itmX = this.ListItem[this.Index];
        if (itmX.DefIcon != "") icons[this.Index].src = itmX.DefIcon;

        this.Index += 1;
        if (this.Index >= this.ListItem.length) this.Index = 0;

        this.imgTrans();

        clearTimeout(this.tmRotate);
        this.tmRotate = null;
        this.tmRotate = setTimeout("window.xwzRollObject['" + this.Name + "'].rotateTrans()", this.nInterval);
    }


    this.imgTrans = function () {
        var icons = document.getElementsByName(this.Thumbnail);
        var itmX = this.ListItem[this.Index];
        if (itmX.OvrIcon != null && itmX.OvrIcon != "") icons[this.Index].src = itmX.OvrIcon;
        try {
            document.images[this.Name].filters[0].apply();
            document.images[this.Name].src = itmX.ImgSrc;
            document.images[this.Name].filters[0].play();
            document.getElementById(this.Title).innerHTML = itmX.Title;
            document.getElementById(this.Title).href = itmX.Link;
            document.getElementById(this.Summary).innerHTML = itmX.Summary;

        } catch (e) {
            document.images[this.Name].src = itmX.ImgSrc;
            document.getElementById(this.Title).innerHTML = itmX.Title;
            document.getElementById(this.Title).href = itmX.Link;
            document.getElementById(this.Summary).innerHTML = itmX.Summary;
        }
    }
}


