function loadMyNovoLabels() {
    window.location.href = "MyNovoseekShowLabels.action";                                   
}

function hideLabelDiv(div)
{       
    if (div == 'removeLabel') {
        $('confirmDiv').setStyle('display:none;');
    } else if (div == 'createLabel') {
        $('createLabel').setStyle('display:none;');
    } else {
        $('confirmDiv').setStyle('display:none;');    
        $('createLabel').setStyle('display:none;');
        $('menuLabels').setStyle('display:none;');
    }
    $('mask').setStyle('display:none;');
}

function loadMenuLabels() {
    new Ajax.Updater("menuLabels","MyNovoseekLoadLabelsDiv.action",{});        
}

var auxLabelId;
function confirmRemoveLabel( labelId ) {
    auxLabelId = labelId;
    $('mask').setStyle('display:block;');
    $('confirmDiv').setStyle('display:block;');    
}

/*REMOVE LABELS */
function removeLabel() {
    new Ajax.Request("RemoveLabelJsonAction.action",{        
        parameters:'labelId='+auxLabelId,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true,
        onComplete:loadMyNovoLabels
    });
    auxLabelId = 0;
}

/*CHANGE NAME LABELS */
function showChangeNameLabelDiv(label) {
	$('mask').setStyle('display:block;');
    $('newLabelNameBox').value = label;
    $('oldLabelName').value = label;
}

/* CREATE NEW LABEL */
var refresh;
var page;
var docId;
var corpus;
function validateLabel(div,pageType, docuId, corpusId) {
    refresh = div;
    page = pageType;
    docId = docuId;
    corpus = corpusId;
    var labelnamebox = $('labelNameBox').value;
    if (labelnamebox.length > 0) {

        new Ajax.Request("ExistNameJsonAction.action",{        
            parameters:'nameBox=' + labelnamebox + "&typeName=label",
            method: 'post', 
            asynchronous:true, 
            evalScripts:true,
            onComplete:loadCreate
        });
        
    } else {        
        Element.show($('errorLabelNameEmpty'));     
        Element.hide($('errorLabelExist'));
    }
}

function createLabel() {        
    var height = $('center').getHeight() + $('left').getHeight();
    var width = $('searchtemplate_top').getWidth();
    
    $('mask').setStyle('display:block;width:' + width + 'px;height:' + height + 'px;'); 
    $('createLabel').setStyle('display:block;');   
    $('labelNameBox').focus();
    $('menuLabels').setStyle('display:none;');                    
}

loadCreate = function(originalRequest) 
{       
    try{
        
        var json_profiles = originalRequest.responseText.evalJSON();    
        if ( !json_profiles.exist ) {
            var labelnamebox = $('labelNameBox').value;           
                $('errorLabelNameEmpty').setStyle('display:none;'); 
                Element.hide($('errorLabelExist'));
            new Ajax.Request("SaveLabelJsonAction.action",{        
                parameters:'labelName='+labelnamebox,
                method: 'post', 
                asynchronous:true, 
                evalScripts:true,
                onComplete:hideLabel
            });
        } else {       
            Element.hide($('errorLabelNameEmpty'));     
            Element.show($('errorLabelExist'));
        }
    }catch(e){}
}

hideLabel = function(originalRequest) 
{           
    try{
        var json_profiles = originalRequest.responseText.evalJSON();                    
        if ( json_profiles.isCorrect ) {
            if (refresh == "mynovo_labels") {
                loadMyNovoLabels();
            } else {
                loadMenuLabels();
                if ( page == 'docDetail') {
                    asignDocLabel($('labelNameBox').value, docId, corpus);
                } else {
                    asignLabel($('labelNameBox').value);    
                }
                
            }
            
            hideLabelDiv();
        }
    }catch(e){}
}

function viewMenuLabels(enlace, hasSession) {
    var height = $('center').getHeight() + $('left').getHeight();
    var width = $('searchtemplate_top').getWidth();
   
    if (!hasSession) {
        $('mask').setStyle('display:block;width:' + width + 'px;height:' + height + 'px;'); 
        $('redirectMyNovoseekLabels').setStyle('display:block;');
    } else {    
        menu = $('menuLabels');    
        topoffset = 20;
        leftoffset = 0;
        if(menu.style.display == 'none') {
            enlace = $(enlace);
            posicion = enlace.cumulativeOffset();  
            
            top_text = posicion.top + topoffset;
            left_text = posicion.left + leftoffset;

            menu.style.display = '';        


            Element.setStyle(menu, { position:'absolute',
                top: top_text + "px",
                left:left_text + "px",
                zindex:1000                                         
            });

        } else {  
        /*
            if(enlace != null) {
                posicion = enlace.positionedOffset();    
                top_text = posicion.top + topoffset ;
                left_text = posicion.left + leftoffset;

                posicion_menu = menu.positionedOffset();
                top_menu = posicion_menu.top;
                left_menu = posicion_menu.left;

                if( (top_text == top_menu) && (left_text == left_menu) ) {   
                        menu.style.display = 'none';
                } else {
                    Element.setStyle(menu, { position:'absolute',
                        top: top_text + "px",
                        left:left_text + "px",
                        zindex:1000                                         
                    });
                }
            } else {
                menu.style.display = 'none';
            }
            */
            menu.style.display = 'none';
        }               
    }    
}

/* ASIGN LABEL */
function asignLabel(label) {
    new Ajax.Request("AsignLabelJsonAction.action",{        
        parameters:'labelName='+label,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true,
        onComplete:loadResultsLabel
    });         
} 

loadResultsLabel = function(originalRequest) 
{       
    try{
        var json_profiles = originalRequest.responseText.evalJSON();                    
        if ( json_profiles.isCorrect ) {
            eliminarCookieDocSel();
            unSelectDocumentAll();    
            window.location.reload();
        }
        $('menuLabels').setStyle('display:none;');                           
    }catch(e){}
}


function asignDocLabel(label, docId, corpus) {
       page = 'results';
       new Ajax.Request("AsignLabelJsonAction.action",{        
        parameters:'labelName='+label + '&docId=' + docId + '&corpus=' + corpus,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true,
        onComplete:loadDocumentDetail
    });         
}


loadDocumentDetail = function(originalRequest) 
{       
    try{
        var json_profiles = originalRequest.responseText.evalJSON();                    
        if ( json_profiles.isCorrect ) {                      
           window.location.reload();
        }
        $('menuLabels').setStyle('display:none;');                           
    }catch(e){}
}

function loadLabelSearch(labelId, label, corpus) {
    
    var href = "SearchLabelAction.action?label=" + label + '&labelId='+labelId;
    if(corpus == null){ corpus = "";}
    if(corpus != "")
    {
        href += '&corpus='+corpus;
    }
    
    
    window.location.href =  href
}

/*REMOVE DOCUMENTS */
function removeLabelDocument( labelId , docId, corpus) {
    new Ajax.Request("RemoveLabelJsonAction.action",{        
        parameters:'labelId='+labelId+'&docId='+docId+'&corpus='+corpus,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true,
        onComplete:window.location.reload()
    });
}

function viewMenuLabelsDocDetail(menu, hasSession) {
    var height = $('ResultsPanelDocument').getHeight() +  $('searchtemplate_top').getHeight() +  $('footer-wrapper').getHeight() ;
    var width = $('ResultsPanelDocument').getWidth();

    if (!hasSession) {
        $('mask').setStyle('display:block;width:' + width + 'px;height:' + height + 'px;');
        $('redirectMyNovoseekLabels').setStyle('display:block;');
    } else {
        viewToolsDocDetail('labels');
    }
}
function viewToolsDocDetail(nombre) {

	topoffset = $('ResultsPanelDocument').positionedOffset().top+18;
	leftoffset = 0;

	//Hacer desaparecer os popup necesarios y v
	if (nombre != 'labels'){
		$('popup_labels').style.display = 'none';
		$('but_labels').className ="";
	}
	if (nombre != 'shareit'){
		$('popup_shareit').style.display = 'none';
		$('but_shareit').className ="";
	}
	//No siempre aparece este menu, as� que comprobamos
	if($('but_fulltext').className !="but_inactive"){
		if (nombre!='fulltext'){
			$('popup_fulltext').style.display = 'none';
			$('but_fulltext').className ="";
		}
	}
	

	//Cambiar el estilo del seleccionado
	but_name='but_'+nombre;

	popup_name='popup_'+nombre;
	popup=$(popup_name)

	if(popup.style.display == 'none') {
		$(but_name).className ="selected";
		
		enlace_base = $('but_fulltext');	
		
		posicion = enlace_base.positionedOffset();
		top_text = posicion.top + topoffset;
		left_text = posicion.left + leftoffset;

		popup.style.display = '';

		Element.setStyle(popup_name, { position:'absolute',
			top: top_text + "px",
			left:left_text + "px",
			zindex:999
		});

	} else {
		popup.style.display = 'none';
		$(but_name).className ="";
	}
}

function createLabelFromDocDetail() {        
    var height = $('ResultsPanelDocument').getHeight() +  $('searchtemplate_top').getHeight();
    var width = $('ResultsPanelDocument').getWidth();
    
    $('mask').setStyle('display:block;width:' + width + 'px;height:' + height + 'px;'); 
    $('createLabel').setStyle('display:block;');    
    $('menuLabels').setStyle('display:none;');                    
}

function removeLabelDocumentWithoutReload( labelId , docId, corpus,capa) {
    $(capa).up().remove();

    new Ajax.Request("RemoveLabelJsonAction.action",{        
        parameters:'labelId='+labelId+'&docId='+docId+'&corpus='+corpus,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true
    });
}
