Agregar un javascript a la presentación de los registros en el módulo de catalogación

 

En la carpeta bases/www existe un formato denominado prologoact.pft donde se forma el encabezamiento del registro presentado en el área de catalogación. Este pft puede ser utilizado para agregar scripts y archivos de estilo que modifiquen la presentación de los registros que se muestran en el proceso de catalogación. Los scripts agregados en prologoact.pft pueden ser luego referenciados desde el formato que presenta el registro en la ventana de catalogación. Por ejemplo: si quiere agregar un script para colapsar alqunas secciones del registro desplegado en la pantalla (ejm. Tabla de contenido, resumen o existencias) siga el siguiente procedimiento:

  • Incluya en prologoact.pft los estilos que servirán para hacer visible/invisible la sección del documento que desea colapsar:
         <style type="text/css">
           #i_division 
              {text-align:left;
               margin:0 auto;
               width:100%;
               padding:0px;
              }
         </style>
  • Incluya en prologoact.pft el script que permite colapsar (esconder) una división (div) del documento:
         <script>
             function Colapsar(obj) {      
                 var el = document.getElementById(obj);
                 if ( el.style.display != "none" ) {
                    el.style.display = "none";
                 }else {
                    el.style.display = "";
                 }
             }
         </script>

Recuerde que como estamos insertando el estilo y el javascript en formatos Isis, tenemos que colocar ambos bloques encerrados entre apóstrofes (‘ … ‘), o sea, prologoact.pft nos quedará de la siguiente manera:

         '<style type="text/css">
            #i_division {
               text-align:left;
               margin:0 auto;
               width:100%;
               padding:0px;
            }
          </style>'/
          
         '<script>
             function Colapsar(obj) {      
                 var el = document.getElementById(obj);
                 if ( el.style.display != "none" ) {
                    el.style.display = "none";
                 }else {
                    el.style.display = "";
                 }
              }
          </script>'/

No olvidar el / al final del formato

  • Modifique el formato de despliegue del registro para crear divisiones con las secciones que desea colapsar, e incluya el llamado al javascript que hace las divisiones visibles/invisibles:
          if  p(v72)  then
            `<div id="i_division">
               <a onclick="Colapsar('mytc_` f(mfn,1,0) `');" style="text-decoration:none ">
               <strong>Resumen</strong></a>
               <div id='mytc_` f(mfn,1,0) `'" style="display:none">`/
                   v72+|<br>|,
               '</div>
             </div>'/    
          fi/

Nótese el uso de las comillas ` que se usan para indicar el literal incondicional por cuanto para elaborar el formato que invoca al javascript se están usando el apóstrofe y la comilla para cumplir con las normas de sintaxis exigidas en HTML

Este formato hace lo siguiente:

    • Si está presente el resumen (if p(v72)) crea una division con el estilo establecido en i_division
    • Al interior de esa divisón coloca un link (<a onclik=) al javascript Colapsar al cual se le envía el nombre de la sección que se desea colapsar.
    • Hay que asegurarse que cada sección tenga su propio nombre. Por eso el nombre de la división se construye con el nombre genérico mytc_ y se le agrega el mfn del registro: f(mfn,1,0).
    • Luego se crea la division con el mismo nombre que se le envió al javascript Colapsar y se le coloca como estilo style=”display:none” para que cuando se abra la página se muestre escondido.
    • Se construye con el lenguaje de formatos el despliegue del o los campos correspondientes
    • Se cierran las dos divisiones que se abrieron.

Esta secuencia introducirá en la hoja de presentación la siguiente salida:

           <div id="i_division">
               <a onclick="Colapsar('mytc_1');" style="text-decoration:none ">
                <strong>Resumen</strong></a>
               <div id='mytc_1'" style="display:none">
                  Texto del resumen ...  
               </div>
           </div>

Si el formato modificado va a ser utilizado en el IAH, debe agregar el estilo y el javascript en el formato ahhead.pft localizado en \abcd\www\htdocs\iah\scripts\es\

    Ver el formato prologoact.pft de la carpeta demo sin copias
    Ver el formato donde se utiliza el código javascript del formato prologoact.pft