
/*
 * Punto de entrada a la aplicacion
 * componente tabsPrincipal
 */
tabPanel = null;
Ext.onReady(function(){
	tabPanel = new TabMusica();
	tabPanel.iniciarTabs();
	tabPanel.iniciarComponentes();
	createMenu('idiomas');
});

/**
 * Componente Tabs
 */
function TabMusica(){
			
	this.logado = logado;
	
	this.objMsjEstado = new msjEstado();
    this.panel = new componentePanel(this);
    
    //Componentes del Tab
    this.busqueda = null;		// lo iniciamos con las novedades , 4 elementos titulo novedades , mas novedades
    
    // parametro componente cargado
    this.pTipoBusqueda = null;
    this.pIdBusqueda = null;
    this.catalogo = null;
    this.numeroObrasMusica = 0;
    this.noticiaPortada = new noticiaPortada();
    /*
     * Inicia el Componente Tab
     */
    this.iniciarTab = function (){
    	var padre = this;
    	padre.iniciarTabs();
		padre.iniciarComponentes();   	
    }
    /**
     * Inicia los tabs del menu
     */
    this.iniciarTabs = function (){
    	// Si está logado cambiamos el texto del tab Mi cuenta
    	var tabActivo = Ext.get('pestanaAcceso');
    	var linkActivo = Ext.get('linkPestanaAcceso');
    	
    	if (this.logado == true){
    		tabActivo.update("<div></div><span>" + localize('miCuenta') + "</span>");
    		if (linkActivo)
    			linkActivo.dom.href = '../portal/TabMiCuenta.adl';
    	} else {
    		tabActivo.update("<div></div><span>" + localize('accesoClientes') + "</span>");
    		if (linkActivo)
    			linkActivo.dom.href= '../portal/acceso-compra-online-musica-royalty-free.adl';
    	}
    	
    	// Activamos el de música
    	var tabActivo = Ext.get('pestanaMusica');
    	tabActivo.removeClass('tabDesactivado');
    	tabActivo.addClass('tabActivado');
    	
    	//Parametros 
    	if((tabMusicaParam1=="null")||(tabMusicaParam2=="null")){
    		this.pTipoBusqueda = constantsAdl("TIPO_NOVEDAD");
    		this.pIdBusqueda = 0;
    		
    	// Si no vienen los parametros	
    	}else{
    		this.pTipoBusqueda = tabMusicaParam1;
    		this.pIdBusqueda = tabMusicaParam2;
    	}
    }

    /**
     * Inicia los componenetes de la manera adecuada
     */    
    this.iniciarComponentes = function (){

    	// iniciamos los componentes
    	this.catalogo = new objetoCatalogo(this,this.pTipoBusqueda,this.pIdBusqueda,true);
		this.catalogo.componenteCatalogo();	
		this.busqueda = new objetoBusqueda('composicionBusqueda',9,0,this);
		this.busqueda.initComponente();
		componenteMasVendidos(constantsAdl("TIPO_MAS_VENDIDOS"),this);
		this.actualizaCamino(this.pTipoBusqueda);
		cargarComboIdiomas(); 
		this.loadCarrito();
		this.resumenCarrito();
		this.noticiaPortada.init();
		
  	    if(this.logado==true){
			saludarTiempo();
			this.panel.iniciar();
    	}	
    }
    
	/**
	 *
	 */
	this.actualizaCamino = function(tipoBusqueda){
			
		if(tipoBusqueda!="null"){
			nodosEnlaces(localize("musica"),"../portal/musica-royalty-free-libre-de-derechos.adl",localize(musicaTipoBusquedaArray(tipoBusqueda)),"../portal/musica-royalty-free-libre-de-derechos.adl?param1="+tipoBusqueda+"&param2=0");
	    }	
	    else{
	    	nodoEnlace(localize("musica"),"../portal/musica-royalty-free-libre-de-derechos.adl");
	    }	    
	}
	
	this.actualizaPanel = function(numero){
		this.panel = new componentePanel(this);
		this.panel.iniciar(numero);
	}
	
	this.addCarrito = function(idComposicion,licencia,duracion,titulo,capaCarrito){
		this.storeAddCarrito = new Ext.data.JsonStore({
		    url: '../portal/json/CarritoAdd.adl',
		    root: 'idComposicion',
		    fields:[],
		    baseParams: {
		    	idComposicion: idComposicion,
		    	licencia: licencia,
		    	duracion: duracion
       			}
		   	}
		);
		var padre = this;
		this.storeAddCarrito.on("load", function () {
			if(this.reader.jsonData.error == ""){
				Ext.MessageBox.alert(localize("addlibrary"), localize("obraAddCarrito"));
				padre.resumenCarrito();
				padre.actualizaPanel(2);
				capaCarrito.dom.getElementsByTagName("img")[0].src = '../img/carritoS.jpg';
				capaCarrito.dom.firstChild.style.color = "#E4103E";
			}else{
				Ext.MessageBox.alert(localize("addlibrary"), this.reader.jsonData.error);
			}
		});
		
		this.storeAddCarrito.load();
	}


	
	this.addMisSelecciones = function(idComposicion,titulo){
		this.storeAddSel = new Ext.data.JsonStore({
		    url: '../portal/json/MantenimientoProyectos!seleccionar.adl',
		    root: 'error',
		    fields:[],
		    baseParams: {
		    	idComposicion: idComposicion
       			}
		   	}
		);
		var padre = this;
		this.storeAddSel.on("load", function () {
			if(this.reader.jsonData.error == ""){
				Ext.MessageBox.alert(localize("addlibrary"), localize("obraAddSelecciones"));
				padre.actualizaPanel(3);
			}else{
				Ext.MessageBox.alert(localize("addlibrary"), this.reader.jsonData.error);
			}
		});
		
		this.storeAddSel.load();
	}
		
	this.loadCarrito = function(){
		var elCarrito = Ext.get('carritoresumen');
		var padre = this;
		elCarrito.on('click',function(){
			if(padre.logado==true){
				document.location = '../portal/UsuariosMiCarrito.adl';
			}else{
				document.location = '../portal/AnonimoMiCarrito.adl';
			}
		})
	}
	
	this.resumenCarrito = function(){
		this.storeResumen = new Ext.data.JsonStore({
		    url: '../portal/json/ResumenCarrito.adl',
		    root: 'numeroObras',
		    fields:[],
		    baseParams: {}
		   	}
		);
		this.storeResumen.load();
		padre = this;
		this.storeResumen.on("load",function(){
			padre.numeroObrasMusica = this.reader.jsonData.numeroObras;
			Ext.get("numeroObrasCarrito").dom.firstChild.nodeValue = this.reader.jsonData.numeroObras;
		});
	}
}


