var idPreguntaEnlazar = "";
var idBloqueEnlazar = "";
var idEncuestaEnlazar = "";
var existeTree="";
var tieneSeleccionadas="";

function enlazarPreguntas(seleccionadas){
	var datos = {selectedIds: seleccionadas, idPregunta:idPreguntaEnlazar, idBloque: idBloqueEnlazar, idEncuesta:idEncuestaEnlazar };
	bloquearPantalla();
	$.ajax({
		type: 'POST',
		url: '/y41egGestionWar/preguntaEnlazada/enlazarPreguntas',
		dataType: 'json',
		contentType: 'application/json',
		data : $.toJSON(datos),
		success:function(){
			desbloquearPantalla();
			feedback.rup_feedback("set", $.rup.i18nParse($.rup.i18n.app,"feedback.enlazarPreguntasOK"), "ok");
			sortablePregunta.rup_sortable("filter");
			$("#divEnlazarPregunta").dialog("close"); 
		},
		error: function(data){
			feedback.rup_feedback("set", $.rup.i18nParse($.rup.i18n.app,"feedback.enlazarPreguntasError"), "error");
			desbloquearPantalla();
			$("#divEnlazarPregunta").dialog("close"); 
		}
	});	
}

function cargarPreguntasEnlazadas(){
	existeTree="";
	tieneSeleccionadas="";
	
	jQuery.ajax({
		type : "GET",
		url : "/y41egGestionWar/preguntaEnlazada/treePreguntaEnlazada",
		data:	  'idPreguntaPadre=' + idPreguntaEnlazar
			+ '&idBloqueEnlazar='+ idBloqueEnlazar
			+ '&idEncuestaEnlazar='+idEncuestaEnlazar,
			dataType : "json",	
		contentType : 'application/json',
		cache : false,
		success:function(data){
			$("#treeEnlazadas").empty();
			if (data.listaEnlazadas.length>0){
				existeTree = SI;
				//pintar el padre
				var ulTree = jQuery('<ul>');
				var liPadre = jQuery('<li id="'+ data.idPregunta +'">');
				
				var aPadre = jQuery('<a title="'+ data.descIntLocale +'" data-codigo="'+ data.idPregunta +'" '
							+ ' href="#"> ' + data.descIntLocale + '</a>');
				liPadre.append(aPadre);
				
				//pintar hijos
				var ulHijos = jQuery('<ul>');
				var classChecked="";
				for(var i = 0; i< data.listaEnlazadas.length;i++){
					var children = data.listaEnlazadas[i];
					var liChildren;
					var liClass="";
					if(children.seleccionada===SI){
						liClass="jstree-checked";
					}
					if(children.tipo==="B"){
						liClass = liClass + " imagenBloque";
					}else{
						liClass = liClass + " imagenPregunta";
					}
					liChildren = jQuery('<li id="'+children.codigoPK+'" class="' + liClass +'">');
					var aChildren = jQuery('<a title="'+children.descIntLocale+'" '
								+ ' data-codigo="'+children.codigoPK+'" '
								+ ' href="#"> '
									+ children.descIntLocale
							+ '</a>');
					liChildren.append(aChildren);
					ulHijos.append(liChildren);
				}
				
				liPadre.append(aPadre);
				liPadre.append(ulHijos);
				ulTree.append(liPadre);
				
				$("#treeEnlazadas").append(ulTree);
				
	
				$("#treeEnlazadas").rup_tree({
					"checkbox" : {
					      "enable" : true
					},
					"themes" : {
						"theme" : "default",
						"url" : $.rup.APP_STATICS+"/styles/tree/estructuras/style.css"
					},
					"loaded_event" : function(event, data){
						jQuery(this).rup_tree('open_all')
					}
				});
				
				tieneSeleccionadas = $("#treeEnlazadas").rup_tree("getRupValue");
			}else{
				existeTree = NO;
				var divMensaje = jQuery('<div>'+ $.rup.i18n.app.mensaje.noEnlazar + '</div>');
				$("#treeEnlazadas").append(divMensaje);
			}
			
		}
	});
}

jQuery(function($){
	
	$("#divEnlazarPregunta").rup_dialog({
        type: $.rup.dialog.DIV,
        autoOpen: false,
        modal: true,
        resizable: true,
        width: "88%",
        title: $.rup.i18n.app.comun.enlazarPreguntas,
		open: function(a, b, c) {
			jQuery('#treeEnlazadas ul').remove();
			jQuery('#treeEnlazadas').rup_tree('destroy');
			cargarPreguntasEnlazadas();
		},
		buttons: [
			{
				text: $.rup.i18nParse($.rup.i18n.base,"rup_global.aceptar"),
				click: function () {
					if(existeTree==SI && (isNotEmpty(tieneSeleccionadas) || isNotEmpty($("#treeEnlazadas").rup_tree("getRupValue")))){
						enlazarPreguntas($("#treeEnlazadas").rup_tree("getRupValue"));
					}else{
						$("#divEnlazarPregunta").dialog("close"); 
					}
				}
			},
			{
            text: $.rup.i18n.base.rup_global.cancelar,
            click: function () {
            	$("#divEnlazarPregunta").dialog("close"); 
            },
            btnType: $.rup.dialog.LINK
        }
		]
	});
		
});