Merge remote branch 'kc/new/bug_4276' into kcmaster
authorChris Cormack <chrisc@catalyst.net.nz>
Wed, 6 Apr 2011 22:41:37 +0000 (10:41 +1200)
committerChris Cormack <chrisc@catalyst.net.nz>
Wed, 6 Apr 2011 22:41:37 +0000 (10:41 +1200)
1  2 
koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl

index 64c2fb7,e508830..7906c55
mode 100755,100644..100755
          <!-- Option: Display Alternate Graphic Representation (MARC 880)  -->
          <xsl:variable name="display880" select="boolean(marc:datafield[@tag=880])"/>
  
 -        <xsl:variable name="UseControlNumber" select="1"/>
 +    <xsl:variable name="UseControlNumber" select="marc:sysprefs/marc:syspref[@name='UseControlNumber']"/>
          <xsl:variable name="URLLinkText" select="marc:sysprefs/marc:syspref[@name='URLLinkText']"/>
          <xsl:variable name="OPACBaseURL" select="marc:sysprefs/marc:syspref[@name='OPACBaseURL']"/>
          <xsl:variable name="SubjectModifier"><xsl:if test="marc:sysprefs/marc:syspref[@name='TraceCompleteSubfields']='1'">,complete-subfield</xsl:if></xsl:variable>
          <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/>
          <xsl:variable name="TraceSubjectSubdivisions" select="marc:sysprefs/marc:syspref[@name='TraceSubjectSubdivisions']"/>
  
 +        <xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='Display856uAsImage']"/>
          <xsl:variable name="leader" select="marc:leader"/>
          <xsl:variable name="leader6" select="substring($leader,7,1)"/>
          <xsl:variable name="leader7" select="substring($leader,8,1)"/>
          </span>
          </xsl:if>
  
 +        <!-- Analytics -->
 +        <xsl:if test="$leader7='s'">
 +        <span class="results_summary"><span class="label">Analytics: </span>
 +            <a>
 +            <xsl:choose>
 +            <xsl:when test="$UseControlNumber = '1' and marc:controlfield[@tag=001]">
 +                <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=rcn:<xsl:value-of select="marc:controlfield[@tag=001]"/></xsl:attribute>
 +            </xsl:when>
 +            <xsl:otherwise>
 +                <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=Host-item:<xsl:value-of select="translate(marc:datafield[@tag=245]/marc:subfield[@code='a'], '/', '')"/></xsl:attribute>
 +            </xsl:otherwise>
 +            </xsl:choose>
 +            <xsl:text>Show analytics</xsl:text>
 +            </a>
 +        </span>
 +        </xsl:if>
 +
          <!-- Volumes of sets and traced series -->
          <xsl:if test="$materialTypeCode='ST' or substring($controlField008,22,1)='m'">
          <span class="results_summary"><span class="label">Volumes: </span>
                  <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=<xsl:call-template name="subfieldSelect">
                          <xsl:with-param name="codes">abcdfgklmnopqrstvxyz</xsl:with-param>
                          <xsl:with-param name="delimeter"> and </xsl:with-param>
-                         <xsl:with-param name="prefix">(su<xsl:value-of select="$SubjectModifier"/>:"</xsl:with-param>
-                         <xsl:with-param name="suffix">")</xsl:with-param>
+                         <xsl:with-param name="prefix">(su<xsl:value-of select="$SubjectModifier"/>:{</xsl:with-param>
+                         <xsl:with-param name="suffix">})</xsl:with-param>
                      </xsl:call-template>
                  </xsl:attribute>
              </xsl:when>
              <xsl:otherwise>
-                 <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=su<xsl:value-of select="$SubjectModifier"/>:"<xsl:value-of select="marc:subfield[@code='a']"/>"</xsl:attribute>
+                 <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=su<xsl:value-of select="$SubjectModifier"/>:{<xsl:value-of select="marc:subfield[@code='a']"/>}</xsl:attribute>
              </xsl:otherwise>
              </xsl:choose>
              <xsl:call-template name="chopPunctuation">
          <xsl:if test="marc:datafield[@tag=856]">
          <span class="results_summary"><span class="label">Online Resources: </span>
          <xsl:for-each select="marc:datafield[@tag=856]">
 +                                   <xsl:variable name="SubqText"><xsl:value-of select="marc:subfield[@code='q']"/></xsl:variable>
                                     <a><xsl:attribute name="href"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute>
                                      <xsl:choose>
 +                                    <xsl:when test="($Show856uAsImage='Details' or $Show856uAsImage='Both') and (substring($SubqText,1,6)='image/' or $SubqText='img' or $SubqText='bmp' or $SubqText='cod' or $SubqText='gif' or $SubqText='ief' or $SubqText='jpe' or $SubqText='jpeg' or $SubqText='jpg' or $SubqText='jfif' or $SubqText='png' or $SubqText='svg' or $SubqText='tif' or $SubqText='tiff' or $SubqText='ras' or $SubqText='cmx' or $SubqText='ico' or $SubqText='pnm' or $SubqText='pbm' or $SubqText='pgm' or $SubqText='ppm' or $SubqText='rgb' or $SubqText='xbm' or $SubqText='xpm' or $SubqText='xwd')">
 +                                        <xsl:element name="img"><xsl:attribute name="src"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute><xsl:attribute name="alt"><xsl:value-of select="marc:subfield[@code='y']"/></xsl:attribute><xsl:attribute name="height">100</xsl:attribute></xsl:element><xsl:text></xsl:text>
 +                                    </xsl:when>
                                      <xsl:when test="marc:subfield[@code='y' or @code='3' or @code='z']">
                                          <xsl:call-template name="subfieldSelect">
                                          <xsl:with-param name="codes">y3z</xsl:with-param>
              <xsl:choose>
                  <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
                      <a><xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=Control-number:<xsl:call-template name="extractControlNumber"><xsl:with-param name="subfieldW" select="marc:subfield[@code='w']"/></xsl:call-template></xsl:attribute>
 -                        <xsl:value-of select="translate($f773, '()', '')"/><xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
 +                        <xsl:value-of select="translate($f773, '()', '')"/>
                      </a>
 +                    <xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
                  </xsl:when>
                  <xsl:otherwise>
                      <a><xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=Title:<xsl:value-of select="translate($f773, '()', '')"/></xsl:attribute>
 -                        <xsl:value-of select="$f773"/><xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
 +                        <xsl:value-of select="$f773"/>
                      </a>
 +                    <xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
                  </xsl:otherwise>
              </xsl:choose>
          </span>
@@@ -17,7 -17,7 +17,7 @@@
          <!-- Option: Display Alternate Graphic Representation (MARC 880)  -->
          <xsl:variable name="display880" select="boolean(marc:datafield[@tag=880])"/>
  
 -    <xsl:variable name="UseControlNumber" select="1"/>
 +    <xsl:variable name="UseControlNumber" select="marc:sysprefs/marc:syspref[@name='UseControlNumber']"/>
      <xsl:variable name="DisplayOPACiconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayOPACiconsXSLT']"/>
      <xsl:variable name="OPACURLOpenInNewWindow" select="marc:sysprefs/marc:syspref[@name='OPACURLOpenInNewWindow']"/>
      <xsl:variable name="URLLinkText" select="marc:sysprefs/marc:syspref[@name='URLLinkText']"/>
@@@ -26,7 -26,6 +26,7 @@@
      <xsl:variable name="SubjectModifier"><xsl:if test="marc:sysprefs/marc:syspref[@name='TraceCompleteSubfields']='1'">,complete-subfield</xsl:if></xsl:variable>
      <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/>
      <xsl:variable name="TraceSubjectSubdivisions" select="marc:sysprefs/marc:syspref[@name='TraceSubjectSubdivisions']"/>
 +    <xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='OPACDisplay856uAsImage']"/>
          <xsl:variable name="leader" select="marc:leader"/>
          <xsl:variable name="leader6" select="substring($leader,7,1)"/>
          <xsl:variable name="leader7" select="substring($leader,8,1)"/>
          </xsl:if>
          </span>
          </xsl:if>
 +        
 +        <!-- Analytics -->
 +        <xsl:if test="$leader7='s'">
 +        <span class="results_summary"><span class="label">Analytics: </span>
 +            <a>
 +            <xsl:choose>
 +            <xsl:when test="$UseControlNumber = '1' and marc:controlfield[@tag=001]">
 +                <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=rcn:<xsl:value-of select="marc:controlfield[@tag=001]"/></xsl:attribute>
 +            </xsl:when>
 +            <xsl:otherwise>
 +                <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=Host-item:<xsl:value-of select="translate(marc:datafield[@tag=245]/marc:subfield[@code='a'], '/', '')"/></xsl:attribute>
 +            </xsl:otherwise>
 +            </xsl:choose>
 +            <xsl:text>Show analytics</xsl:text>
 +            </a>
 +        </span>
 +        </xsl:if>
  
          <!-- Volumes of sets and traced series -->
          <xsl:if test="$materialTypeCode='ST' or substring($controlField008,22,1)='m'">
                  <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=<xsl:call-template name="subfieldSelect">
                          <xsl:with-param name="codes">abcdfgklmnopqrstvxyz</xsl:with-param>
                          <xsl:with-param name="delimeter"> and </xsl:with-param>
-                         <xsl:with-param name="prefix">(su<xsl:value-of select="$SubjectModifier"/>:"</xsl:with-param>
-                         <xsl:with-param name="suffix">")</xsl:with-param>
+                         <xsl:with-param name="prefix">(su<xsl:value-of select="$SubjectModifier"/>:{</xsl:with-param>
+                         <xsl:with-param name="suffix">})</xsl:with-param>
                      </xsl:call-template>
                  </xsl:attribute>
              </xsl:when>
              <xsl:otherwise>
-                 <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=su<xsl:value-of select="$SubjectModifier"/>:"<xsl:value-of select="marc:subfield[@code='a']"/>"</xsl:attribute>
+                 <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=su<xsl:value-of select="$SubjectModifier"/>:{<xsl:value-of select="marc:subfield[@code='a']"/>}</xsl:attribute>
              </xsl:otherwise>
              </xsl:choose>
              <xsl:call-template name="chopPunctuation">
              </span>
          </xsl:if>
  
 +<!-- Image processing code added here, takes precedence over text links including y3z text   -->
          <xsl:if test="marc:datafield[@tag=856]">
          <span class="results_summary"><span class="label">Online Resources: </span>
          <xsl:for-each select="marc:datafield[@tag=856]">
 +            <xsl:variable name="SubqText"><xsl:value-of select="marc:subfield[@code='q']"/></xsl:variable>
              <a><xsl:attribute name="href"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute>
              <xsl:if test="$OPACURLOpenInNewWindow='1'">
                  <xsl:attribute name="target">_blank</xsl:attribute>
              </xsl:if>
              <xsl:choose>
 +            <xsl:when test="($Show856uAsImage='Details' or $Show856uAsImage='Both') and (substring($SubqText,1,6)='image/' or $SubqText='img' or $SubqText='bmp' or $SubqText='cod' or $SubqText='gif' or $SubqText='ief' or $SubqText='jpe' or $SubqText='jpeg' or $SubqText='jpg' or $SubqText='jfif' or $SubqText='png' or $SubqText='svg' or $SubqText='tif' or $SubqText='tiff' or $SubqText='ras' or $SubqText='cmx' or $SubqText='ico' or $SubqText='pnm' or $SubqText='pbm' or $SubqText='pgm' or $SubqText='ppm' or $SubqText='rgb' or $SubqText='xbm' or $SubqText='xpm' or $SubqText='xwd')">
 +                <xsl:element name="img"><xsl:attribute name="src"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute><xsl:attribute name="alt"><xsl:value-of select="marc:subfield[@code='y']"/></xsl:attribute><xsl:attribute name="height">100</xsl:attribute></xsl:element><xsl:text></xsl:text>
 +            </xsl:when>                                    
              <xsl:when test="marc:subfield[@code='y' or @code='3' or @code='z']">
                  <xsl:call-template name="subfieldSelect">
                      <xsl:with-param name="codes">y3z</xsl:with-param>
                  </xsl:call-template>
              </xsl:when>
 -            <xsl:when test="not(marc:subfield[@code='y']) and not(marc:subfield[@code='3']) and not(marc:subfield[@code='z'])">
 -                <xsl:choose>
 -                <xsl:when test="$URLLinkText!=''">
 -                    <xsl:value-of select="$URLLinkText"/>
 -                </xsl:when>
 -                <xsl:otherwise>
 -                    <xsl:text>Click here to access online</xsl:text>
 -                </xsl:otherwise>
 -                </xsl:choose>
 +            <xsl:when test="$URLLinkText!=''">
 +                <xsl:value-of select="$URLLinkText"/>
              </xsl:when>
 +            <xsl:otherwise>
 +                <xsl:text>Click here to access online</xsl:text>
 +            </xsl:otherwise>
              </xsl:choose>
              </a>
              <xsl:choose>
              <xsl:choose>
                  <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
                      <a><xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=Control-number:<xsl:call-template name="extractControlNumber"><xsl:with-param name="subfieldW" select="marc:subfield[@code='w']"/></xsl:call-template></xsl:attribute>
 -                        <xsl:value-of select="translate($f773, '()', '')"/><xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
 +                        <xsl:value-of select="translate($f773, '()', '')"/>
                      </a>
 +                    <xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
                  </xsl:when>
                  <xsl:otherwise>
                      <a><xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=Title:<xsl:value-of select="translate($f773, '()', '')"/></xsl:attribute>
 -                        <xsl:value-of select="$f773"/><xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
 +                        <xsl:value-of select="$f773"/>
                      </a>
 +                    <xsl:if test="marc:subfield[@code='g']"><xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/></xsl:if>
                  </xsl:otherwise>
              </xsl:choose>
          </span>