

var query_actual_util = "";
var corpus_actual_util = "";
var showType_actual_util = "";
var criterion_actual_util = "";
function asignarQuerySentences(valor,corpus,showType,criterion)
{   
    query_actual_util = valor;
    corpus_actual_util = corpus;
    showType_actual_util = showType;
    criterion_actual_util = criterion;
}

var contenedor = null;


function ocultarS(capa)
{
        capa = $(capa);    
        contenedor = capa.ancestors()[0];
        capa2 = contenedor.down('span.hideSentences');
        capa2.setStyle({display:''});
        capa.setStyle({display:'none'});
        
        frases= contenedor.down('div.otherSentences');
        frases.setStyle({display:'none'});
}

function mostrarS(capa)
{
        capa = $(capa);    
        contenedor = capa.ancestors()[0];
        capa2 = contenedor.down('span.expandSentences');
        if(capa2 == null) capa2 = contenedor.down('span.expandParagaphs');
        capa2.setStyle({display:''});
        capa.setStyle({display:'none'});
        
        frases= contenedor.down('div.otherSentences');
        frases.setStyle({display:''});
}


function getAllSentecesOrParagraphs(id,capa)
{
    var filters = document.searchaction.filters.value;

    query = query_actual_util;

    if(query.indexOf("&quot;") != -1)
    {
        exp_reg = new RegExp("&quot;",'ig');
        query=query.replace(exp_reg,"%22")
    }
    if (query.indexOf("?") != -1) 
    {
        exp_reg = new RegExp("\\?",'ig');
        query = query.replace(exp_reg, "%3F")
    }   
    if (query.indexOf("#") != -1) 
    {
        exp_reg = new RegExp("#",'ig');
        query = query.replace(exp_reg, "%23")
    }   
    if (query.indexOf("&amp;") != -1) 
    {
        exp_reg = new RegExp("&amp;",'ig');
        query = query.replace(exp_reg, "%26")
    }       
    capa = $(capa);    
    contenedor = capa.ancestors()[0];

    new Ajax.Request('GetAllSentencesOfDocument.action',{
        parameters:'docId='+id+'&filters=' + filters +'&query=' + query+'&corpus='+corpus_actual_util+ '&showType='+showType_actual_util+'&criterion='+criterion_actual_util ,
        method: 'post', 
        asynchronous:true, 
        evalScripts:true,
        onComplete:recargaSentences
    });           
}

recargaSentences = function(originalRequest) 
   {  
        contenedor.innerHTML = originalRequest.responseText;
     }

function viewNavigation(enlace)
{
    menu = $('menuNav');    
    offset = 20;
    if(menu.style.display == 'none')
    {
        enlace = $(enlace);
        posicion = enlace.positionedOffset();    
        top_text = posicion.top + offset;
        left_text = posicion.left;
                
        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 + offset ;
             left_text = posicion.left;
             
             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';
        }
    
    
    }
    
    
    

}

function startTarget(link,windowname,width,height, additional)
{
  if(! window.focus)
    return;

   var sizestring = ",width=" + width + ",height=" + height;
   var opt = "menubar=no,toolbar=no,status=no,scrollbars=yes,resizable=yes,dependent=yes,location=no";
   var allOptions = opt + sizestring;
   if (additional) { allOptions = allOptions + ',' + additional; }

   windowname = String(windowname).replace(/-/g, "_")
   var moveToXDefault = 75
   var moveToYDefault = 50

   var moveToX = moveToXDefault
   var moveToY = moveToYDefault
   var yAdj = 50
   var yAdjDelta = 25

   var barNames = ['menubar', 'toolbar', 'statusbar']
   for (var idx in barNames)
   {
     if (String(allOptions).lastIndexOf(barNames[idx] + '=yes') >
     String(allOptions).lastIndexOf(barNames[idx] + '=no'))
     yAdj += yAdjDelta
   }

   try
   {
    if (window.screen.width && width > 0)
     moveToX = Math.ceil((window.screen.width - width)) - 15

    moveToX = (moveToX > 0 ? moveToX : moveToXDefault)

    if (window.screen.height && height > 0)
     moveToY = Math.ceil((window.screen.height - height)) - yAdj

    moveToY = (moveToY > 0 ? moveToY : moveToYDefault)
   }
   catch (e) {}

   var wLeftTopCornerOptions = ',left=' + moveToX + ',top=' + moveToY + ',screenX=' + moveToX + ',screenY=' + moveToY

   allOptions = allOptions + wLeftTopCornerOptions

   w = window.open ("", windowname, allOptions)
   w.focus()

   link.target=windowname
}

 function obtenerTexto(elemento)
 {
      if($$('.sentence')[0].textContent != null)
        return elemento.textContent;
      else
        return elemento.innerText;
 
 }


 function parsearUrl(url)
    {
        var index_action = url.indexOf(".action");
        url_aux = url.substring(0, index_action);
        var index_inicio = url_aux.lastIndexOf ("/");              
        url_aux = url.substring(index_inicio + 1,url.length);
          exp_reg = new RegExp("&",'gi');
          url_aux=url_aux.replace(exp_reg,"$");
        return url_aux;
    }
var openShowQueryPanel = false;   
var corpus_show ="";
function throwShowQuery(dateTo,dateFrom,corpus,criterion,fieldList, query,showType, error)
{   
    
        corpus_show = corpus;
        if($('queryPanel').style.display.indexOf('none') > -1 ) 
        {
            if(!openShowQueryPanel)
            {
                var refine_elements = $('queryPanelContent');
                //var query   = document.searchaction.query.value;
                //query = parserURLQuery(query)           
                var filters = document.searchaction.filters.value;
                if(dateTo == null)dateTo = "";
                if(dateFrom == null) dateFrom = "";

                var preferencias = '';
                if(showType != '')
                    preferencias += "&showType=" +  showType;

                if (error == null) {
                    new Ajax.Updater(refine_elements,'SearchActionshowQuery.action',{
                        parameters:'filters=' + filters +'&dateToString='+dateTo+'&dateFromString='+dateFrom+'&criterion='+criterion+preferencias+'&corpus='+corpus+'&fieldList='+fieldList+'&query='+query,
                        asynchronous:true, 
                        evalScripts:true,
                        onComplete:showQuery
                    });
                } else {
                    showQuery();
                }
            }else{
                boton = $('btnShowQuey');   
                new Effect.BlindDown('queryPanel', {duration: 0.3 });    
                new Effect.Highlight('queryPanel', { duration: 1.3 });
                boton.innerHTML = "<img src='resources/images/flechapanel2.gif' alt='' /> baiji.search.hidesearchdetail";
            }
            pageTracker._trackEvent('Search','SearchDetails','Show');
        } else{
             boton = $('btnShowQuey');
             new Effect.BlindUp('queryPanel', {duration: 0.3 });  
             boton.innerHTML = "<img src='resources/images/flechapanel1.gif' alt='' /> baiji.search.showsearchdetail";
             pageTracker._trackEvent('Search','SearchDetails','Hide');
        }
    
}

showQuery = function()
{
        //Si existe ocultamos la capa de las etiquetas
        if ($('menuLabels')) $('menuLabels').hide();
        
        openShowQueryPanel = true;        
        boton = $('btnShowQuey');   
        new Effect.BlindDown('queryPanel', {duration: 0.3 });    
        new Effect.Highlight('queryPanel', { duration: 1.3 });
        boton.innerHTML = "<img src='resources/images/flechapanel2.gif' alt='' /> baiji.search.hidesearchdetail";
     
 }
    
function showHighlight() {

    //Si existe ocultamos la capa de las etiquetas
    if ($('menuLabels')) $('menuLabels').hide();

    boton = $('btnHgt');
    if($('bioentitiesPanel').style.display.indexOf('none') > -1 ) {
        new Effect.BlindDown('bioentitiesPanel', {duration: 0.3 });    
        boton.innerHTML = "<img src='resources/images/flechapanel2.gif' alt='' />baiji.hig.off";
        pageTracker._trackEvent('Search','HighlightPanel','Show');
    } else{
         new Effect.BlindUp('bioentitiesPanel', {duration: 0.3 });  
         boton.innerHTML = "<img src='resources/images/flechapanel1.gif' alt='' />baiji.hig.on";
         pageTracker._trackEvent('Search','HighlightPanel','Hide');
    }
   
}

function openElementDetail(typeId, internalId, bioType,corpus) {
    var w = 480, h = 340;
    
    var popW = 800, popH = 600;
    
    if (document.all || document.layers) {
        w = screen.availWidth;
        h = screen.availHeight;
    } else {
        w = screen.width;
        h = screen.height;
    }

    var leftPos = (w-popW)/2;
    var topPos = (h-popH)/2;

      
    
    var winName = "biodetail_" + typeId + "_" + internalId;

    var win = window.open ("ShowDetailAction.action?typeId="+typeId+"&internalId="+internalId+"&bioType="+bioType+"&corpus="+corpus, winName, "menubar=no,status=no,resizable=yes,toolbar=no,scrollbars=yes, width=" + popW + ",height=" + popH + ",top=" + topPos + ",left=" + leftPos);
    win.focus();

    return false;
}

function changeTypeView(valor)
{
    document.searchaction.showType.value= valor;
    document.searchaction.submit();             
}

function changeCriteria()
{
    document.searchaction.submit();
}

function escaparCaracteresEspeciales(cadena)
{
    cadena.replace("'","\'");
    
    return cadena;
}

function parserQueryURL(code){
                exp_reg = new RegExp("&lt;",'gi');
                code=code.replace(exp_reg,"<");
                exp_reg = new RegExp("&gt;",'gi');
                code=code.replace(exp_reg,">");
                exp_reg = new RegExp("&amp;",'gi');
                code=code.replace(exp_reg,"\&");
                exp_reg = new RegExp("&quot;",'gi');
                code=code.replace(exp_reg,"\"");
                exp_reg = new RegExp("&#xC3;&#xB1;",'gi');                
                code=code.replace(exp_reg,"ñ");
                exp_reg = new RegExp("&#xC3;&#x91;",'gi');                
                code=code.replace(exp_reg,"Ñ");
                
                
                exp_reg = new RegExp("&#xC3;&#xA7;",'gi');                
                code=code.replace(exp_reg,"ç");
                exp_reg = new RegExp("&#xC3;&#x87;",'gi');                
                code=code.replace(exp_reg,"Ç");
                
               
                exp_reg = new RegExp("&#xC3;&#xA4;",'gi');                
                code=code.replace(exp_reg,"ä");
                exp_reg = new RegExp("&#xC3;&#x84;",'gi');                
                code=code.replace(exp_reg,"Ä");                
                exp_reg = new RegExp("&#xC3;&#xAB;",'gi');                
                code=code.replace(exp_reg,"ë");
                exp_reg = new RegExp("&#xC3;&#x8B;",'gi');                
                code=code.replace(exp_reg,"Ë");                
                 exp_reg = new RegExp("&#xC3;&#xAF;",'gi');                
                code=code.replace(exp_reg,"ï");
                exp_reg = new RegExp("&#xC3;&#x8F;",'gi');                
                code=code.replace(exp_reg,"Ï");
                exp_reg = new RegExp("&#xC3;&#xB6;",'gi');                
                code=code.replace(exp_reg,"ö");
                exp_reg = new RegExp("&#xC3;&#x96;",'gi');                
                code=code.replace(exp_reg,"Ö");
                exp_reg = new RegExp("&#xC3;&#xBC;",'gi');                
                code=code.replace(exp_reg,"ü");
                exp_reg = new RegExp("&#xC3;&#x9C;",'gi');                
                code=code.replace(exp_reg,"Ü");
                
                exp_reg = new RegExp("&nbsp;",'gi');
                code=code.replace(exp_reg,"\&");
                exp_reg = new RegExp("&nbsp;",'gi');
                code=code.replace(exp_reg,"\t");             
                return code;
            }
            
function parserURLQuery(code){
                exp_reg = new RegExp("<",'gi');
                code=code.replace(exp_reg,"%3C");
                exp_reg = new RegExp(">",'gi');
                code=code.replace(exp_reg,"%3E");
                exp_reg = new RegExp("\&",'gi');
                code=code.replace(exp_reg,"%26");
                exp_reg = new RegExp("\"",'gi');
                code=code.replace(exp_reg,"%22");
                exp_reg = new RegExp("ñ",'g');
                code=code.replace(exp_reg,"%C3%B1");
                exp_reg = new RegExp("Ñ",'g');
                code=code.replace(exp_reg,"%C3%91");
                exp_reg = new RegExp("ç",'g');                
                code=code.replace(exp_reg,"%C3%A7");
                exp_reg = new RegExp("Ç",'g');                
                code=code.replace(exp_reg,"%C3%87");
                
                exp_reg = new RegExp("ä",'g');                
                code=code.replace(exp_reg,"%C3;%A4;");
                exp_reg = new RegExp("Ä",'g');                
                code=code.replace(exp_reg,"%C3;%84;");                
                exp_reg = new RegExp("ë",'gi');                
                code=code.replace(exp_reg,"%C3;%AB;");
                exp_reg = new RegExp("Ë",'gi');                
                code=code.replace(exp_reg,"%C3;%8B;");                
                 exp_reg = new RegExp("ï",'gi');                
                code=code.replace(exp_reg,"%C3;%AF;");
                exp_reg = new RegExp("Ï",'gi');                
                code=code.replace(exp_reg,"%C3;%8F;");
                exp_reg = new RegExp("ö",'gi');                
                code=code.replace(exp_reg,"%C3;%B6;");
                exp_reg = new RegExp("Ö",'gi');                
                code=code.replace(exp_reg,"%C3;%96;");
                exp_reg = new RegExp("ü",'gi');                
                code=code.replace(exp_reg,"%C3;%BC;");
                exp_reg = new RegExp("Ü",'gi');                
                code=code.replace(exp_reg,"%C3;%9C;");               
               
                return code;
            }
function inConstruction(){
    alert('This functionality is under construction')
}
function abrir_Ventana(el_url) 
{
    var ancho = 1000;
    var largo = 400;
    
    w = (screen.width / 2) - (ancho / 2)
    h = (screen.height / 2) - (largo / 2)

       
    var especificaciones="top="+h+", left="+w+", toolbar=no,location=no, status=no,menubar=no,scrollbars=yes, resizable=yes, width="+ancho+",height="+largo
    var titulo=""
    window.open(el_url,titulo,especificaciones);
}    

// ESTA FUNCION ES LLAMADA DESDE EL LINK "HELP" DE CADA PAGINA. SE LE PASA EL ID_PAGINA.
// DICHO ID ES ESTABLECIDO EN CADA PÁGINA MEDIANTES LAS CONSTANTES ID_PAGE_xxxxxxx

function help_popup(id)
{
    if(id == '')
    {
        abrir_Ventana("/info/help/Help_0.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_6.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_5.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_2.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_2.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_0.html");
    }else if(id == '')
    {   
        abrir_Ventana("/info/help/Help_0.html");
    }else if(id == '')
    {
        abrir_Ventana("/info/help/Help_0.html");
    }else
    {
        abrir_Ventana("/info/help/Help_0.html");
    }
}