/*
 * IdeaValley Innovation
 * FlipSite
 * Maio 2006
 * Luiz Paulo dos Prazeres Júnior
 * 
 * AutoFlip Class
 */
 
var autoFlipPath 	= toolsPath+"flipAutoFlip/";
var AutoFlipClass = Class.create();

AutoFlipClass.prototype = {

    initialize: function () {

		this.interval            = 3500; //INTERVALO PARA A FLIPAGEM AUTOMÁTICA
		this.ID_AutoFlip         = 0; //CONTROLE PARA INTERVALO DO AUTOFLIP
		this.autoRun             = (getQueryString("autoFlip") != "") ? true : false; //CONTROLE PARA INICIALIZAÇÃO
		this.isAutoFlip          = false; //STATUS SOBRE O AUTOFLIP ( STOP / PLAY )
		this.direction           = ""; //DIREÇÃO PARA O AUTOFLIP

        $("btnAutoFlip").onclick = function (){ AutoFlip.Start('start'); return false; };

		FlipAction.register(this.Start, "gotoPage", "after");

	}, //Method initialize


    Start: function (param) {

        if(((AutoFlip.ID_AutoFlip == 0) && (!AutoFlip.isAutoFlip) && (param == "start")) || (AutoFlip.autoRun)){
            AutoFlip.autoRun     = false;
            AutoFlip.isAutoFlip  = true;
            AutoFlip.autoFlipLimit();
            AutoFlip.ID_AutoFlip = setInterval("AutoFlip.autoFlip()", AutoFlip.interval);
            AutoFlip.updateBtn();
            AutoFlip.autoFlip();
        }

        AutoFlip.autoFlipLimit("limit");
    }, //Method Start


    Stop: function () {

        clearInterval(this.ID_AutoFlip);
        this.ID_AutoFlip = 0;
        this.isAutoFlip  = false;
        this.updateBtn();

    }, //Method Stop


    updateBtn: function (){

        src = themePath+"imgs/iconsButtons/";
	    $('textAutoFlip').innerHTML = (this.ID_AutoFlip != 0) ? "Stop-Flip"    : "Auto-Flip";
	    $('imageAutoFlip').src      = (this.ID_AutoFlip != 0) ? src+"stop.gif" : src+"play.gif";
        $("btnAutoFlip").onclick    = (this.ID_AutoFlip != 0) 
            ? function (){AutoFlip.Stop();         return false; }
            : function (){AutoFlip.Start('start'); return false; };

    }, //Method updateBtn


	autoFlip: function () {

        if(this.isAutoFlip)
            this.action();
	}, //Method autoFlip


    autoFlipLimit: function (param) {

        /*
         * Faz um Stop no Auto-Flip caso esteja na primeira ou última página
         */
        if (param == "limit"){
            if((StateMachine.onBack() && this.direction == "next") || (StateMachine.onFront() && this.direction == "prev")){
                this.Stop();
            }
            return false;
        }

        /*
         * Atualiza o action a ser e
         */
        if(StateMachine.onBack()){
            this.action    = FlipAction.prevPage;
            this.direction = "prev";
        }else{
            this.action    = FlipAction.nextPage;
            this.direction = "next";
        }

    }, //Method autoFlipLimit


	end: function () { } //Method end

};

AutoFlip = new AutoFlipClass();