﻿//Comportamiento para Imprimir la cartografia que se esta visualizando
function WVPrint()
{
    var oThis           = this;
    var viewer          = null;
    var behaviorType    = WVBehaviorType.PRINT; //tipo de comportamiento
    var enabled        = false;//indica si este comportamiento está operativo para afectar al visor
    var winim           = null;
    var printTemplate   = "";
    var url             = "";
    var printing        = false;
    var wvprintseedcache = 0;
    var msgError = "Debe permitir las ventanas Pop-Up en este sitio para visualizar la ventana de impresion";
    
    this.getEnabled=function()
    {
        return enabled;
    }
    
    this.setEnabled=function(enable)
    {
        enabled = enable;
    }
    
    //retorna si el comportamiento debe estar siempre activo
    this.alwaysKeepEnabled=function()
    {
        return false;
    }
    
    this.init = function (visor)
    {
        viewer  = visor;
        winim   = null;
        printing= true;
        url     = viewer.getActualMap();
	    viewer.releaseBehavior();
        if(printTemplate == "")
        {
	        printDefault();
	    }
	    else
	    {
            try
            {               
	           winim    = window.open( printTemplate );
	           var cnt  = new HttpConnector( );
	           cnt.init( 30000 );
	           cnt.connect( printTemplate, winimonload, printDefault );
            }
	        catch( execp )
	        {
                printDefault();   
	        }
	    }
	    
    }
    this.getBehaviorType=function()
    {
        return behaviorType;
    }
    this.addParameters = function(p)
    {
        if(p.length == 0)return;
        printTemplate = p[0];
    }
    function printDefault()
	{
	    try
	    {
	        var urlFinal = url + "&nocache=" + (wvprintseedcache++);
            winim = window.open(urlFinal);
            winim.print(); 
        }
        catch(exc)
        {
            alert(msgError);
        }
	}
	function winimonload()
	{	    
	    if (winim==null) {alert(msgError);return;}
	    var imgMap = winim.document.getElementById('MAP');
	    if (imgMap!=null)
	    {
	        var urlFinal = url + "&nocache=" + (wvprintseedcache++);
	        imgMap.src = urlFinal;
	        setTimeout(function(){winim.print();},1000);
	    }
	    else
	    {
	        alert(msgError);
	    }
	}
	this.onUpdate = function(){}
    this.finalize = function(){}
}

