
// BANNER OBJECT
function Banner(objName){
	this.obj = objName;
	this.aNodes = [];
	this.currentBanner = 0;
	
};

// ADD NEW BANNER
Banner.prototype.add = function(bannerPath, bannerDuration, height, width, hyperlink) {
	this.aNodes[this.aNodes.length] = new Node(this.obj +"_"+ this.aNodes.length,  bannerPath, bannerDuration, height, width, hyperlink);
};

// Node object
function Node(name, bannerPath, bannerDuration, height, width, hyperlink) {
	this.name = name;
	this.bannerPath = bannerPath;
	this.bannerDuration = bannerDuration;
	this.height = height;
	this.width = width;
	this.hyperlink= hyperlink;
//	alert (name +"|" + bannerType +"|" + bannerPath +"|" + bannerDuration +"|" + height +"|" + width + "|" + hyperlink);
};

// Outputs the banner to the page
Banner.prototype.toString = function() {
    var str = ""
    for (var iCtr = 0; iCtr < this.aNodes.length; iCtr++) {
        str = str + '<div name="' + this.aNodes[iCtr].name + '" '
        str = str + 'id="' + this.aNodes[iCtr].name + '" ';
        str = str + 'class="m_banner_hide" ';
        str = str + 'bgcolor="#FFFCDA" '; // CHANGE BANNER COLOR HERE
        str = str + 'align="center" ';
        str = str + 'valign="top" ';
        if (this.aNodes[iCtr].hyperlink != "") {
            str = str + 'alt="' + this.aNodes[iCtr].hyperlink + '">\n';
        }

        str = str + '<img src="' + this.aNodes[iCtr].bannerPath + '" ';
        str = str + 'border="0" ';
        //str = str + 'height="'+this.aNodes[iCtr].height+'" ';
        //str = str + 'width="'+this.aNodes[iCtr].width+'">';
        str = str + '>';

        str += '</div>';
    }
    return str;
};

// START THE BANNER ROTATION
Banner.prototype.start = function(){
	this.changeBanner();
	var thisBannerObj = this.obj;
	// CURRENT BANNER IS ALREADY INCREMENTED IN cahngeBanner() FUNCTION
	setTimeout(thisBannerObj+".start()", this.aNodes[this.currentBanner].bannerDuration * 1000);
}

Banner.prototype.show = function() {
    this.changeBanner();
}

// CHANGE BANNER
Banner.prototype.changeBanner = function(){
	var thisBanner;
	var prevBanner = -1;
	if (this.currentBanner < this.aNodes.length ){
		thisBanner = this.currentBanner;
		if (this.aNodes.length > 1){
			if ( thisBanner > 0 ){
				prevBanner = thisBanner - 1;
			}else{
				prevBanner = this.aNodes.length-1;
			}
		}
		if (this.currentBanner < this.aNodes.length - 1){
			this.currentBanner = this.currentBanner + 1;
		}else{
			this.currentBanner = 0;
		}
	}
	

	if (prevBanner >= 0){
		document.getElementById(this.aNodes[prevBanner].name).className = "m_banner_hide";
	}
	document.getElementById(this.aNodes[thisBanner].name).className = "m_banner_show";
}


