/*
 * IdeaValley Innovation
 * FlipSite
 * Maio 2006
 * Luiz Paulo dos Prazeres Júnior 
 * 
 * FlipPrint Class
 */
 
var printPath  = toolsPath+"flipPrint/";
var FlipPrintClass = Class.create();

FlipPrintClass.prototype = {


    initialize: function () {

		FlipAction.register(this.closePrintAll, "gotoPage", "after");
		FlipAction.register(this.closePrintAll, "gotoPage", "before");
		try{ $('btnPrint').onclick = function (){ FlipPrint.getPrint(); return false; }; }catch(e){}
        this.createFrame();

    }, //Method initialize


    createFrame: function(){

        this.printFrame = document.createElement("IFRAME");
        this.printFrame.id = "framePrint";
        this.printFrame.style.width = 0+"px";
        this.printFrame.style.height = 0+"px";
        this.printFrame.style.border = "none";

        $('contentAll').appendChild(this.printFrame);

    },


    setPropriets: function (param, primeiraPagina, ultimaPagina) {

        if((!isUndefined(this.divPrint)) && (param == "print")){

            obj = this.divPrint;

            width     = parseInt(getUtilWindowSize(":").split(':')[0]);
            height    = parseInt(getUtilWindowSize(":").split(':')[1]);

            decrement = 10;

            obj.style.width  = (width-decrement)+"px";
            obj.style.height = (height-$('header').offsetHeight-decrement)+"px";

            obj.style.left   = (decrement/2)+"px";
            obj.style.top    = $('header').offsetHeight+(decrement/2)+"px";
            obj.style.display = "none";
        }else if(((!isUndefined(this.divConsole)) && (param == "console")) && (!primeiraPagina)&& (!ultimaPagina) && (!StateMachine.isZoom)){

            obj = this.divConsole;

            centerY = (formatoCaderno.split('x')[1]-obj.offsetHeight)/2;
            centerX = ((formatoCaderno.split('x')[0]*2)-obj.offsetWidth)/2;


            obj.style.left   = (findPosX($('displayPlayer'))+centerX)+"px";
            obj.style.top    = (findPosY($('displayPlayer'))+centerY)+"px";
            obj.style.display = "none";
        }else if((!isUndefined(this.divConsoleOne)) && (param == "console") && (!ultimaPagina) && (!StateMachine.isZoom)){
            obj2 = this.divConsoleOne;

            centerY = (formatoCaderno.split('x')[1]-obj2.offsetHeight)/2;
            centerX = (formatoCaderno.split('x')[0]-obj2.offsetWidth)/2;

            obj2.style.left   = (findPosX($('displayPlayer'))+centerX+parseInt(formatoCaderno.split('x')[0]))+"px";
            obj2.style.top    = (findPosY($('displayPlayer'))+centerY)+"px";
            //obj2.style.widht = "150px";
            obj2.style.display = "none";
        }else if((!isUndefined(this.divConsoleMax)) && (param == "console") && (!StateMachine.isZoom)){

            obj3 = this.divConsoleMax;

            centerY = (formatoCaderno.split('x')[1]-obj3.offsetHeight)/2;
            centerX = (formatoCaderno.split('x')[0]-obj3.offsetWidth)/2;

            obj3.style.left   = (findPosX($('displayPlayer'))+centerX)+"px";
            obj3.style.top    = (findPosY($('displayPlayer'))+centerY)+"px";
            obj3.style.display = "none";
        }else if((!isUndefined(this.divConsoleZoom)) && (param == "console") && (StateMachine.isZoom)){
  
	     obj4 = this.divConsoleZoom;
/*
            centerY = ($('displayZoom').offsetHeight-obj4.offsetHeight)/2;
            centerX = ($('displayZoom').offsetWidth-obj4.offsetWidth)/2;

            obj4.style.top     = centerY+"px";
            obj4.style.left    = centerX+"px";
            obj4.style.display = "none"
*/
            centerY = (formatoCaderno.split('x')[1]-obj4.offsetHeight)/2;
            centerX = ((formatoCaderno.split('x')[0]*2)-obj4.offsetWidth)/2;


            obj4.style.left   = (findPosX($('displayPlayer'))+centerX)+"px";
            obj4.style.top    = (findPosY($('displayPlayer'))+centerY)+"px";
            obj4.style.display = "none";
        }
        

    }, //Method setPropriets

/*mexe aqui*/
    getPrint: function () {
	

	
		
        if(isUndefined(this.divPrint)){ FlipPrint.initBoxPrint(); return true; };
        if((typePlayer == "single")&&(!StateMachine.isZoom)){	
		
		if(!isUndefined(DynamicAreas))
			this.openPrint();
		return false;
        }
        if(StateMachine.isZoom){

            if(Zoom.numPage%2=='0'){
                tipo='4';
                if(isUndefined(this.divConsoleZoom)){ 
                    //this.initConsoleMax();
                    this.initConsoleZoom();
                    return true;
                }
            }else{
                tipo='4';
                if(isUndefined(this.divConsoleZoom)){
                    //this.initConsolePages();
                    this.initConsoleZoom();
                    return true;
                }
            }
            this.openPrint("console",tipo);
        }else{

            if(StateMachine.getPageRight() == 1){  

                tipo='1';
                if(isUndefined(this.divConsoleOne)){
                    this.initConsolePages();
                    return true;
                }
            }else if(StateMachine.getPageLeft() == maxPages){
                tipo='3';
                if(isUndefined(this.divConsoleMax)){ 
                    this.initConsoleMax();
                    return true;
                }
            }
            else if((StateMachine.getPageRight() > 1) && (StateMachine.getPageRight() != maxPages)){ 
                var tipo='2';
                if(isUndefined(this.divConsole)){  
                    this.initConsole(); 
                    return true; 
                }
            }
	
            this.openPrint("console",tipo );
        }

    }, //Method getPrint

    initConsolePages: function (){
	
	
            div  = '<div id="displayPrintConsoleOne">';
                div += '<div id="printConsoleTitleOne">';
                    div += '<div id="consoleTopoOne"> Impress&atilde;o </div>';
                div += '</div><!-- printConsoleTitleOne -->';
                
                div += '<div id="displayPrintRightOne">'; 
                    div += '<div id="displayPrintRightSimples">';
                        div += '<div id="displayPrintSimplesRightOne">';
                            div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoOne\').innerHTML = \'Impress&atilde;o Simples\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01_pb.png" width="89" height="116" border="0" />';
                            div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoOne\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01.png" width="89" height="116" border="0" style="display:none;" />';
                        div += '</div><!-- displayPrintSimplesRight -->';
                        
                        div += '<div id="displayPrintDuplaRightOne">';
                            div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoOne\').innerHTML = \'Impress&atilde;o Dupla\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02_pb.png" width="148" height="116" border="0" />';
                            div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoOne\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02.png" width="148" height="116" border="0" style="display:none;" />';
                        div += '</div><!-- displayPrintDuplaRight -->';            
                    div += '</div><!-- displayPrintRightOne -->';
                div += '</div><!-- displayPrintConsole -->';
                div += '<img id="cancelPrint" src="'+themePath+'imgs/iconsButtons/cancelar.gif" border="0">';
            div += '</div><!-- displayPrintConsole -->';
        
        newComponent(div, 'before', $('flipConpoments'));
        this.divConsoleOne = $('displayPrintConsoleOne');
        this.primeiraPagina= true;
        this.ultimaPagina= false;
        //this.divConsoleOne.style.marginLeft='70px';
        //this.divConsoleOne.style.wight='226px';
        this.setPropriets("console", this.primeiraPagina, this.ultimaPagina);
        this.getPrint();

        this.divConsoleOne.onclick       = createMethodReference(this, "getPrint");
        $('displayPrintSimplesRightOne').onclick  = createMethodReference(this, "printRightSimples");
        $('displayPrintDuplaRightOne').onclick = createMethodReference(this, "printRightDupla");
       
       
    },
    
    initConsoleMax: function (){
       
            div  = '<div id="displayPrintConsoleMax">';
                div += '<div id="printConsoleTitleMax">';
                    div += '<div id="consoleTopoMax"> Impress&atilde;o </div>';
                div += '</div><!-- printConsoleTitleMax -->';
                
                div += '<div id="displayPrintLeftMax">'; 
                    div += '<div id="displayPrintSimplesLeftMax">';
                        div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoMax\').innerHTML = \'Impress&atilde;o Simples\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01mini" width="89" height="116" border="0" />';
                        div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoMax\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01mini.png" width="89" height="116" border="0" style="display:none;" />';
                    div += '</div><!-- displayPrintSimplesLeft -->';
                    
                    div += '<div id="displayPrintDuplaLeftMax">';
                        div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoMax\').innerHTML = \'Impress&atilde;o Dupla\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02_pb.png" width="148" height="116" border="0" />';
                        div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoMax\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02.png" width="148" height="116" border="0" style="display:none;" />';
                    div += '</div><!-- displayPrintDuplaLeft -->';
                div += '</div><!-- displayPrintLeftMax -->';
                div += '<img id="cancelPrint" src="'+themePath+'imgs/iconsButtons/cancelar.gif" border="0">';    
            div += '</div><!-- displayPrintConsole -->';
        
        newComponent(div, 'before', $('flipConpoments'));
        this.divConsoleMax = $('displayPrintConsoleMax');
        this.ultimaPagina= true;
        this.primeiraPagina= false;
        this.setPropriets("console", this.primeiraPagina ,this.ultimaPagina);
        this.getPrint();
	/*ACHEI A IMPRESSAO*/
        this.divConsoleMax.onclick       = createMethodReference(this, "getPrint");
        $('displayPrintSimplesLeftMax').onclick  = createMethodReference(this, "printLeftSimples");
        $('displayPrintDuplaLeftMax').onclick = createMethodReference(this, "printLeftDupla");
        
    },
    


    initConsole: function (){

        div  = '<div id="displayPrintConsole">';
            div += '<div id="printConsoleTitle">';
                div += '<div id="consoleTopo"> Selecione a P&aacute;gina a ser Impressa </div>';
            div += '</div><!-- printConsoleTitle -->';

            div += '<div id="displayPrintLeft">';
                div += '<div id="displayPrintPageLeft"> P&aacute;gina Esquerda </div>';
                div += '<div id="displayPrintSimplesLeft">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopo\').innerHTML = \'Impress&atilde;o Simples\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01_pb.png" width="148" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopo\').innerHTML = \'Selecione a P&aacute;gina a ser Impressa\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01.png" width="148" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintSimplesLeft -->';
                
                div += '<div id="displayPrintDuplaLeft">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopo\').innerHTML = \'Impress&atilde;o Dupla\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02_pb.png" width="148" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopo\').innerHTML = \'Selecione a P&aacute;gina a ser Impressa\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02.png" width="148" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintDuplaLeft -->';
            div += '</div><!-- displayPrintLeft -->';

            div += '<div id="displayPrintRight">';
                div += '<div id="displayPrintPageRight"> P&aacute;gina Direita </div>';
                div += '<div id="displayPrintSimplesRight">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopo\').innerHTML = \'Impress&atilde;o Simples\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01_pb.png" width="148" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopo\').innerHTML = \'Selecione a P&aacute;gina a ser Impressa\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01.png" width="148" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintSimplesRight -->';
                
                div += '<div id="displayPrintDuplaRight">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopo\').innerHTML = \'Impress&atilde;o Dupla\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02_pb.png" width="148" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopo\').innerHTML = \'Selecione a P&aacute;gina a ser Impressa\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02.png" width="148" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintDuplaRight -->';            
            div += '</div><!-- displayPrintRight -->';
            div += '<img id="cancelPrintDupla" src="'+themePath+'imgs/iconsButtons/cancelar.gif" border="0">';
        div += '</div><!-- displayPrintConsole -->';

        newComponent(div, 'before', $('flipConpoments'));
        this.divConsole = $('displayPrintConsole');
        this.primeiraPagina= false;
        this.ultimaPagina= false;
        this.setPropriets("console",this.primeiraPagina, this.ultimaPagina);
        this.getPrint();
        this.variasPagina= true;
        this.divConsole.onclick       = createMethodReference(this, "getPrint");
        $('displayPrintSimplesLeft').onclick  = createMethodReference(this, "printLeftSimples");
        $('displayPrintDuplaLeft').onclick = createMethodReference(this, "printLeftDupla");
        
        $('displayPrintSimplesRight').onclick  = createMethodReference(this, "printRightSimples");
        $('displayPrintDuplaRight').onclick = createMethodReference(this, "printRightDupla");
        
    }, // Method initConsole

    
    initConsoleZoom: function (){
        div  = '<div id="displayPrintConsoleZoom">';
            div += '<div id="printConsoleTitleZoom">';
                div += '<div id="consoleTopoZoom"> Impress&atilde;o </div>';
            div += '</div><!-- printConsoleTitleMax -->';
            div += '<div id="displayPrintZoom">'; 
                div += '<div id="displayPrintSimplesZoom">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoZoom\').innerHTML = \'Impress&atilde;o Simples\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01mini.png" width="89" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoZoom\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/01mini.png" width="89" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintSimplesLeft -->';
                
                div += '<div id="displayPrintDuplaZoom">';
                    div += '<img onmouseover="FlipPrint.swapImagePrintOn(this.parentNode); $(\'consoleTopoZoom\').innerHTML = \'Impress&atilde;o Dupla\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02_pb.png" width="148" height="116" border="0" />';
                    div += '<img onmouseout="FlipPrint.swapImagePrintOut(this.parentNode); $(\'consoleTopoZoom\').innerHTML = \'Impress&atilde;o\';" class="pngTransparent" src="'+themePath+'imgs/iconsButtons/02.png" width="148" height="116" border="0" style="display:none;" />';
                div += '</div><!-- displayPrintDuplaLeft -->';
            div += '</div><!-- displayPrintLeftMax -->';
            div += '<img id="cancelPrint" src="'+themePath+'imgs/iconsButtons/cancelar.gif" border="0">';
        div += '</div><!-- displayPrintConsoleZoom -->';
        
        newComponent(div, 'before', $('flipConpoments'));
        this.divConsoleZoom = $('displayPrintConsoleZoom');
        this.ultimaPagina= false;
        this.primeiraPagina= false;
        this.setPropriets("console", this.primeiraPagina ,this.ultimaPagina);
        this.getPrint();
        this.divConsoleZoom.onclick       = createMethodReference(this, "getPrint");
        $('displayPrintSimplesZoom').onclick  = createMethodReference(this, "printPageZoomSimples");
        $('displayPrintDuplaZoom').onclick = createMethodReference(this, "printPageZoomDupla");
    
    },
    swapImagePrintOn: function (div){  
        div.childNodes[0].style.display = "none";
        div.childNodes[1].style.display = "block";
    },
    
    swapImagePrintOut: function (div){
        div.childNodes[0].style.display = "block";
        div.childNodes[1].style.display = "none";
    },

    initBoxPrint: function (){

        div = '<div id="displayPrint"></div>';

        newComponent(div, 'before', $('flipConpoments'));
        this.divPrint = $('displayPrint');
        this.setPropriets("print");
        this.getPrint();

        this.divPrint.onclick = function (){ Print.openPrint(); };
    }, // Method initBoxPrint



    openPrint: function (param, tipo) {	
	
	//typePlayer	
        if(param == "console"){
            if(tipo=='2')
                obj = this.divConsole.style;
            else if(tipo=='1')
                obj = this.divConsoleOne.style;
            else if(tipo=='3')
                obj = this.divConsoleMax.style;
            else if(tipo=='4')
                obj = this.divConsoleZoom.style;

            obj.display = (obj.display == "block") ? "none" : "block";
	    

        }else{
            this.printMateria();
        }

    }, //Method openPrint


    printMateria: function (){	
        idMateria = DynamicAreas.getIdMateria();
        

        
        /* Potencialiadde de impressao Página */
        id_action_type = 9;
        FlipAction.openPrint(idMateria,id_action_type ,0);
        url       = toolsPath+"flipPrint/printMateria.php?id_materia="+idMateria;
        this.printFrame.src = url;

    }, //Method printMateria


    printLeftSimples: function (){
 
       page = StateMachine.pageLeft;

        /* Potencialiadde de impressao Página */
        id_action_type = 8;
        FlipAction.openPrint("none",id_action_type ,page);

        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page;
        this.printFrame.src = url;

    }, //Method printMateria
    
    
    printLeftDupla: function (){
	
        page = StateMachine.pageLeft;
        
        
         /* Potencialiadde de impressao */
        id_action_type = 8;    
	    FlipAction.openPrint("none",id_action_type ,page);
        
        
        
        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page+"&crop="+'2';
        this.printFrame.src = url;

    }, //Method printMateria


    printRightSimples: function (){	
	  
        /* tracking de Impressao  */
        page = StateMachine.pageRight;

        /* Potencialiadde de impressao */
        id_action_type = 8;    
	    FlipAction.openPrint("none",id_action_type ,page);
	
        page = StateMachine.pageRight;
        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page;
        this.printFrame.src = url;
	

    }, //Method printMateria
    
    printRightDupla: function (){
        
        page = StateMachine.pageRight;
        
         /* Potencialiadde de impressao */
        id_action_type = 8;    
	    FlipAction.openPrint("none",id_action_type ,page);
        
        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page+"&crop="+'2';
        this.printFrame.src = url;

    }, //Method printMateria
    printPageZoomSimples: function (){
        page = Zoom.numPage;
        
         /* Potencialiadde de impressao */
        id_action_type = 8;    
	    FlipAction.openPrint("none",id_action_type ,page);
        
        
        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page;
        this.printFrame.src = url;
    },
    
    printPageZoomDupla: function (){
        page = Zoom.numPage;
        
         /* Potencialiadde de impressao */
        id_action_type = 8;    
	    FlipAction.openPrint("none",id_action_type ,page);
        
        
        url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page+"&crop="+'2';
        this.printFrame.src = url;
    },

    printPage: function (page){
	if(StateMachine.isZoom){
			FlipPrint.getPrint();
        }
        //this.getPrint();
        //if(StateMachine.isZoom){
        else{
            url = toolsPath+"flipPrint/printPage.php?idEdicao="+idEdicaoXml+"&idCaderno="+idCaderno+"&nrPagina="+page;
            FlipPrint.printFrame.src = url;        
        }
    }, //Method printPage

    closePrint: function () {

        this.openPrint();

    }, //Method closePrint

    closePrintAll: function () {

        try{ FlipPrint.divConsole.style.display     = "none"; }catch(e){}
        try{ FlipPrint.divConsoleOne.style.display  = "none"; }catch(e){}
        try{ FlipPrint.divConsoleMax.style.display  = "none"; }catch(e){}
        try{ FlipPrint.divConsoleZoom.style.display = "none"; }catch(e){}

    }, //Method closePrint


    end: function () {

        return false;

    } //Method end

};

FlipPrint = new FlipPrintClass();