Bug 12334: Make it easy to hide parts of material type and format information in...
authorKatrin Fischer <katrin.fischer@bsz-bw.de>
Thu, 28 Aug 2014 11:32:35 +0000 (13:32 +0200)
committerTomas Cohen Arazi <tomascohen@gmail.com>
Fri, 7 Nov 2014 18:21:26 +0000 (15:21 -0300)
With the system preferences DisplayIconsXSLT and DisplayOPACiconsXSLT we control
the visibility of the material type, format and audience information in staff
and OPAC.

Sometimes a library might only want to hide a part of that information - for
example, hide audience but keep the material type icon.

This patch adds CSS classes to make it easier to style this section of the page
and hide parts of the information.

To test:
- Verify that OPAC and staff result lists for various types of materials
  still display nicely.
- Take a look at the HTML and verify, that label and text are now
  wrapped into a new span with a results_* class.
- Try hiding a part of the information, for example in OpacUserCSS:

.results_material_type {
  display none;
}

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Works as described... but for a missing colon on example CSS

.results_material_type {
  display: none;
}

No koha-qa errors

Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl
koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl

index 605b70f..585b81a 100644 (file)
 <xsl:if test="$DisplayIconsXSLT!='0'">
     <span class="results_summary">
     <xsl:if test="$typeOf008!=''">
+        <span class="results_material_type">
         <span class="label">Material type: </span>
             <xsl:choose>
                 <xsl:when test="$leader19='a'"><img src="/intranet-tmpl/prog/img/famfamfam/silk/book_link.png" alt="book" title="book" class="materialtype"/> Set</xsl:when>
                 <xsl:when test="$leader6='i'"><img src="/intranet-tmpl/prog/img/famfamfam/silk/sound.png" alt="sound" title="sound" class="materialtype"/> Sound</xsl:when>
                 <xsl:when test="$leader6='j'"><img src="/intranet-tmpl/prog/img/famfamfam/silk/sound.png" alt="music" title="music" class="materialtype"/> Music</xsl:when>
             </xsl:choose>
+        </span>
     </xsl:if>
 
     <xsl:if test="string-length(normalize-space($physicalDescription))">
-        <span class="label">; Format: </span><xsl:copy-of select="$physicalDescription"></xsl:copy-of>
+        <span class="results_format">
+            <span class="label">; Format: </span><xsl:copy-of select="$physicalDescription"></xsl:copy-of>
+        </span>
     </xsl:if>
 
     <xsl:if test="$controlField008-21 or $controlField008-22 or $controlField008-24 or $controlField008-26 or $controlField008-29 or $controlField008-34 or $controlField008-33 or $controlField008-30-31 or $controlField008-33">
 
         <xsl:if test="$typeOf008='CR'">
+        <span class="results_typeofcontinueing">
         <xsl:if test="$controlField008-21 and $controlField008-21 !='|' and $controlField008-21 !=' '">
            <span class="label">; Type of continuing resource: </span>
         </xsl:if>
                     periodical
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='BK' or $typeOf008='CR'">
         <xsl:if test="contains($controlField008-24,'abcdefghijklmnopqrstvwxyz')">
+        <span class="results_natureofcontents">
         <span class="label">; Nature of contents: </span>
-        </xsl:if>
             <xsl:choose>
                 <xsl:when test="contains($controlField008-24,'a')">
                     abstract or summary
                     conference publication
                 </xsl:when>
             </xsl:choose>
+        </span>
+        </xsl:if>
         </xsl:if>
         <xsl:if test="$typeOf008='CF'">
+        <span class="results_typeofcomp">
             <xsl:if test="$controlField008-26='a' or $controlField008-26='e' or $controlField008-26='f' or $controlField008-26='g'">
             <span class="label">; Type of computer file: </span>
             </xsl:if>
                     numeric data
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='BK'">
+        <span class="results_contents_literary">
             <xsl:if test="(substring($controlField008,25,1)='j') or (substring($controlField008,25,1)='1') or ($controlField008-34='a' or $controlField008-34='b' or $controlField008-34='c' or $controlField008-34='d')">
             <span class="label">; Nature of contents: </span>
             </xsl:if>
                     speech
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='MU' and $controlField008-30-31 and $controlField008-30-31!='||' and $controlField008-30-31!='  '">
+        <span class="results_literaryform">
             <span class="label">; Literary form: </span> <!-- Literary text for sound recordings -->
             <xsl:if test="contains($controlField008-30-31,'b')">
                 biography
             <xsl:if test="contains($controlField008-30-31,'l')">
                 speech
             </xsl:if>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='VM'">
+        <span class="results_typeofvisual">
             <span class="label">; Type of visual material: </span>
             <xsl:choose>
                 <xsl:when test="$controlField008-33='a'">
                 <xsl:when test="$controlField008-33='p'">
                     microscope slide
                 </xsl:when>
-                <xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2
-,1)='q']">
+                <xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='q']">
                     model
                 </xsl:when>
                 <xsl:when test="$controlField008-33='r'">
                     toy
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
        </xsl:if>
 
     <xsl:if test="($typeOf008='BK' or $typeOf008='CF' or $typeOf008='MU' or $typeOf008='VM') and ($controlField008-22='a' or $controlField008-22='b' or $controlField008-22='c' or $controlField008-22='d' or $controlField008-22='e' or $controlField008-22='g' or $controlField008-22='j' or $controlField008-22='f')">
+    <span class="results_audience">
         <span class="label">; Audience: </span>
         <xsl:choose>
             <xsl:when test="$controlField008-22='a'">
             <xsl:when test="$controlField008-22='f'">
              Specialized;
             </xsl:when>
-            </xsl:choose>
+        </xsl:choose>
+    </span>
     </xsl:if>
 <xsl:text> </xsl:text> <!-- added blank space to fix font display problem, see Bug 3671 -->
        </span>
index 6bac246..a5bd5bb 100644 (file)
 <xsl:if test="$DisplayOPACiconsXSLT!='0'">
     <span class="results_summary type">
     <xsl:if test="$typeOf008!=''">
+    <span class="results_material_type">
         <span class="label">Material type: </span>
             <xsl:choose>
                 <xsl:when test="$leader19='a'"><img src="/opac-tmpl/lib/famfamfam/silk/book_link.png" alt="book" title="book" class="materialtype"/> Set</xsl:when>
                 <xsl:when test="$leader6='i'"><img src="/opac-tmpl/lib/famfamfam/silk/sound.png" alt="sound" title="sound" class="materialtype"/> Sound</xsl:when>
                 <xsl:when test="$leader6='j'"><img src="/opac-tmpl/lib/famfamfam/silk/sound.png" alt="music" title="music" class="materialtype"/> Music</xsl:when>
             </xsl:choose>
+    </span>
     </xsl:if>
     <xsl:if test="string-length(normalize-space($physicalDescription))">
-        <span class="label">; Format: </span><xsl:copy-of select="$physicalDescription"></xsl:copy-of>
+        <span class="results_format">
+            <span class="label">; Format: </span><xsl:copy-of select="$physicalDescription"></xsl:copy-of>
+        </span>
     </xsl:if>
 
         <xsl:if test="$controlField008-21 or $controlField008-22 or $controlField008-24 or $controlField008-26 or $controlField008-29 or $controlField008-34 or $controlField008-33 or $controlField008-30-31 or $controlField008-33">
 
         <xsl:if test="$typeOf008='CR'">
+        <span class="results_typeofcontinuing">
         <xsl:if test="$controlField008-21 and $controlField008-21 !='|' and $controlField008-21 !=' '">
         <span class="label">; Type of continuing resource: </span>
         </xsl:if>
                      <img src="/opac-tmpl/lib/famfamfam/silk/world_link.png" alt="web site" title="web site" class="format"/>
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='BK' or $typeOf008='CR'">
         <xsl:if test="contains($controlField008-24,'abcdefghijklmnopqrstvwxyz')">
+        <span class="results_natureofcontents">
         <span class="label">; Nature of contents: </span>
-        </xsl:if>
             <xsl:choose>
                 <xsl:when test="contains($controlField008-24,'a')">
                     abstract or summary
                     conference publication
                 </xsl:when>
             </xsl:choose>
+        </span>
+        </xsl:if>
         </xsl:if>
         <xsl:if test="$typeOf008='CF'">
+        <span class="results_typeofcomp">
             <xsl:if test="$controlField008-26='a' or $controlField008-26='e' or $controlField008-26='f' or $controlField008-26='g'">
             <span class="label">; Type of computer file: </span>
             </xsl:if>
                      <img src="/opac-tmpl/lib/famfamfam/silk/controller.png" alt="game" title="game" class="format"/>
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='BK'">
+        <span class="results_contents_literary">
             <xsl:if test="(substring($controlField008,25,1)='j') or (substring($controlField008,25,1)='1') or ($controlField008-34='a' or $controlField008-34='b' or $controlField008-34='c' or $controlField008-34='d')">
             <span class="label">; Nature of contents: </span>
             </xsl:if>
                     speech
                 </xsl:when>
             </xsl:choose>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='MU' and $controlField008-30-31 and $controlField008-30-31!='||' and $controlField008-30-31!='  '">
+        <span class="results_literaryform">
             <span class="label">; Literary form: </span> <!-- Literary text for sound recordings -->
             <xsl:if test="contains($controlField008-30-31,'b')">
                 biography
             <xsl:if test="contains($controlField008-30-31,'l')">
                 speech
             </xsl:if>
+        </span>
         </xsl:if>
         <xsl:if test="$typeOf008='VM'">
+        <span class="results_typeofvisual">
             <span class="label">; Type of visual material: </span>
             <xsl:choose>
                 <xsl:when test="$controlField008-33='a'">
                 <xsl:when test="$controlField008-33='p'">
                     microscope slide
                 </xsl:when>
-                <xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2
-,1)='q']">
+                <xsl:when test="$controlField008-33='q' or marc:controlfield[@tag=007][substring(text(),1,1)='a'][substring(text(),2,1)='q']">
                     model
                 </xsl:when>
                 <xsl:when test="$controlField008-33='r'">
                     toy
                 </xsl:when>
             </xsl:choose>
+            </span>
         </xsl:if>
         </xsl:if>
 
     <xsl:if test="($typeOf008='BK' or $typeOf008='CF' or $typeOf008='MU' or $typeOf008='VM') and ($controlField008-22='a' or $controlField008-22='b' or $controlField008-22='c' or $controlField008-22='d' or $controlField008-22='e' or $controlField008-22='g' or $controlField008-22='j' or $controlField008-22='f')">
+        <span class="results_audience">
         <span class="label">; Audience: </span>
         <xsl:choose>
             <xsl:when test="$controlField008-22='a'">
             <xsl:when test="$controlField008-22='f'">
              Specialized;
             </xsl:when>
-            </xsl:choose>
+        </xsl:choose>
+        </span>
     </xsl:if>
 <xsl:text> </xsl:text> <!-- added blank space to fix font display problem, see Bug 3671 -->
        </span>