﻿/**************************************************************
*
* CLASSE JAVASCRIPT BANNERS
*
* CRIADO POR: CRISTIANO TAVELLA
* DATA: 16/05/2011
* OBS:
* EDITADO POR: CRISTIANO TAVELLA
* DATA: 17/05/2011
* OBS:
*
*************************************************************/

function imprimir() {

    if (this.ordemBanner == "before")
        $(this.destino).html(this.layout.replace(/\[banner\]/g, "<div id='boxConteudoBanner" + this.destino.replace("#boxConteudo_", "") + "'></div>")+"<div id='boxConteudoLabelBanner" + this.destino.replace("#boxConteudo_", "") + "'></div>");
    else
        $(this.destino).html("<div id='boxConteudoLabelBanner" + this.destino.replace("#boxConteudo_", "") + "'></div>" + this.layout.replace(/\[banner\]/g, "<div id='boxConteudoBanner" + this.destino.replace("#boxConteudo_", "") + "'></div>"));

    if (this.labelBanner != 0) {

        for (var i = 0; i < this.dados.length; i++) {
            var v_label = "<div style='cursor:pointer;' onclick='clearTimeout(" + this.destino.replace("#boxConteudo_", "") + ".timeoutChange); " + this.destino.replace("#boxConteudo_", "") + ".banner_atual = " + i + "; " + this.destino.replace("#boxConteudo_", "") + ".changeBanner();'>" + (this.labelBanner == 1 ? this.dados[i].titulo : (i+1) ) + "</div>";
            $("#boxConteudoLabelBanner" + this.destino.replace("#boxConteudo_", "")).append(this.layoutLabel.replace(/\[label\]/g, v_label));
        }

    }
    if (this.dados.length > 1)
        this.autoChangeBanner();
    else
        this.changeBanner();
}

function changeBanner() {
    var script = "";

    if (this.dados[this.banner_atual].arquivo.substring(this.dados[this.banner_atual].arquivo.length - 3, this.dados[this.banner_atual].arquivo.length) == "swf") {

        script += " <object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0\" >";
        script += "		<param name=\"movie\" value=\"" + this.dados[this.banner_atual].arquivo + "\">";
        script += "		<param name=\"quality\" value=\"high\">";
        script += "		<PARAM NAME=wmode VALUE=transparent> ";
        script += "		<embed src=\"" + this.dados[this.banner_atual].arquivo + "\" wmode=\"transparent\"  quality=\"high\" pluginspage=\"http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" ></embed>";
        script += "	</object>";
        //script += "	<div onclick=\"setClique();\" style=\"position:relative;cursor:pointer; width:" + width + "; height:" + height + "; margin-top:-" + height + ";background:#000;  \"></div>";
    }
    else {

        script += "	  <img id='ImgBanner" + this.banner_atual + "'  src=\"" + this.dados[this.banner_atual].arquivo + "\" " + (this.dados[this.banner_atual].link == "" ? "" : "style='cursor:pointer;' onclick='window.open(\"" + this.dados[this.banner_atual].link + "\",\"_self\");' ") + " >";
        //script += "	<div onclick=\"setClique();\" style=\"position:relative;cursor:pointer; width:" + width + "; height:" + height + "; margin-top:-" + height + "; background:#000;\"></div>";

    }

    $("#boxConteudoBanner" + this.destino.replace("#boxConteudo_", "")).html(script);

    this.banner_atual++;

    if (this.banner_atual == this.dados.length)
        this.banner_atual = 0;

    if (this.autoChange && this.dados.length > 1)
        this.timeoutChange = setTimeout(this.destino.replace("#boxConteudo_", "") + ".autoChangeBanner();", this.timeChange);
}

function autoChangeBanner() {
    var script = "";

    if (this.dados[this.banner_atual].arquivo.substring(this.dados[this.banner_atual].arquivo.length - 3, this.dados[this.banner_atual].arquivo.length) == "swf") {

        script += " <object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0\" >";
        script += "		<param name=\"movie\" value=\"" + this.dados[this.banner_atual].arquivo + "\">";
        script += "		<param name=\"quality\" value=\"high\">";
        script += "		<PARAM NAME=wmode VALUE=transparent> ";
        script += "		<embed src=\"" + this.dados[this.banner_atual].arquivo + "\" wmode=\"transparent\"  quality=\"high\" pluginspage=\"http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" ></embed>";
        script += "	</object>";
        //script += "	<div onclick=\"setClique();\" style=\"position:relative;cursor:pointer; width:" + width + "; height:" + height + "; margin-top:-" + height + ";background:#000;  \"></div>";
    }
    else {

        script += "	  <img id='ImgBanner" + this.banner_atual + "' onload=' transicaoBanner(\"#ImgBanner" + this.banner_atual + "\",\"#ImgBanner" + ((this.banner_atual - 1) < 0 ? (this.dados.length - 1) : (this.banner_atual - 1)) + "\");' src=\"" + this.dados[this.banner_atual].arquivo + "\" style='display:none; " + (this.dados[this.banner_atual].link == "" ? "'" : "cursor:pointer;' onclick='window.open(\"" + this.dados[this.banner_atual].link + "\",\"_self\");' ") + ">";
        //script += "	<div onclick=\"setClique();\" style=\"position:relative;cursor:pointer; width:" + width + "; height:" + height + "; margin-top:-" + height + "; background:#000;\"></div>";

    }

    $("#boxConteudoBanner" + this.destino.replace("#boxConteudo_", "")).append(script);
    
    this.banner_atual++;

    if (this.banner_atual == this.dados.length)
        this.banner_atual = 0;

    if (this.autoChange && this.dados.length > 1)
        this.timeoutChange = setTimeout(this.destino.replace("#boxConteudo_", "") + ".autoChangeBanner();", this.timeChange);

    
}

function transicaoBanner(elem1, elem2) {

    if ($(elem2).attr("id") == null) {
        $(elem1).show();
    }
    else {
        $(elem2).fadeOut(function () {
            $(elem2).remove();
            $(elem1).show();
        });
    }
}

function Banners(parametros) {
    // Código fkempresa
    this.fkempresa = parametros.fkempresa;
    //Id de destino 
    this.destino = parametros.destino;
    //Layout
    this.layout = parametros.layout;
    //Layout Label
    this.layoutLabel = parametros.layoutLabel;
    //Ordem Banner
    this.ordemBanner = parametros.ordemBanner;
    //Dados
    this.dados = parametros.dados;
    //Banner atual
    this.banner_atual = 0;

    if (parametros.timeChange == 0) {
        this.autoChange = false;
        //Tempo para troca
        this.timeChange = 0;
    }
    else {
        this.autoChange = true;
        //Tempo para troca
        this.timeChange = parametros.timeChange*1000;
    }
    
    //variavel de intervalo
    this.timeoutChange = null;
    //Define se vai ser titulo ou números ou nada
    this.labelBanner = parametros.labelBanner;

    //Métodos
    this.imprimir = imprimir;
    this.changeBanner = changeBanner;
    this.autoChangeBanner = autoChangeBanner;

    this.imprimir();
    
}
