From af7d814a5453c1bd157d23b9aea9ca5cd5d8acb3 Mon Sep 17 00:00:00 2001 From: Doug Dearden <dearden@sarsf.org> Date: Mon, 14 Mar 2011 14:21:01 -0600 Subject: [PATCH] Bug 5738 Display 856u As Image - Enhancement modified: C4/XSLT.pm modified: installer/data/mysql/en/mandatory/sysprefs.sql modified: installer/data/mysql/updatedatabase.pl modified: koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref modified: koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref modified: koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl modified: koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl modified: koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl modified: koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl modified: koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl modified: koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl Content-Type: text/plain; charset="utf-8" --- C4/XSLT.pm | 2 +- installer/data/mysql/en/mandatory/sysprefs.sql | 2 ++ installer/data/mysql/updatedatabase.pl | 7 +++++++ .../prog/en/modules/admin/preferences/opac.pref | 9 +++++++++ .../en/modules/admin/preferences/staff_client.pref | 9 +++++++++ .../prog/en/xslt/MARC21slim2intranetDetail.xsl | 6 +++++- .../prog/en/xslt/UNIMARCslim2intranetDetail.xsl | 5 +++++ .../prog/en/xslt/MARC21slim2OPACDetail.xsl | 10 ++++++++++ .../prog/en/xslt/MARC21slim2OPACResults.xsl | 8 ++++++++ .../prog/en/xslt/UNIMARCslim2OPACDetail.xsl | 5 +++++ .../prog/en/xslt/UNIMARCslim2OPACResults.xsl | 5 +++++ 11 files changed, 66 insertions(+), 2 deletions(-) mode change 100644 => 100755 C4/XSLT.pm mode change 100644 => 100755 installer/data/mysql/en/mandatory/sysprefs.sql mode change 100644 => 100755 koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref mode change 100644 => 100755 koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref mode change 100644 => 100755 koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl mode change 100644 => 100755 koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl mode change 100644 => 100755 koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl mode change 100644 => 100755 koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl mode change 100644 => 100755 koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl diff --git a/C4/XSLT.pm b/C4/XSLT.pm old mode 100644 new mode 100755 index f1c5293..a1f0782 --- a/C4/XSLT.pm +++ b/C4/XSLT.pm @@ -128,7 +128,7 @@ sub XSLTParse4Display { my $itemsxml = buildKohaItemsNamespace($biblionumber); my $xmlrecord = $record->as_xml(C4::Context->preference('marcflavour')); my $sysxml = "<sysprefs>\n"; - foreach my $syspref ( qw/OPACURLOpenInNewWindow DisplayOPACiconsXSLT URLLinkText viewISBD OPACBaseURL/ ) { + foreach my $syspref ( qw/OPACURLOpenInNewWindow DisplayOPACiconsXSLT URLLinkText viewISBD OPACBaseURL Display856uAsImage OPACDisplay856uAsImage/ ) { my $sp = C4::Context->preference( $syspref ); next unless defined($sp); $sysxml .= "<syspref name=\"$syspref\">$sp</syspref>\n"; diff --git a/installer/data/mysql/en/mandatory/sysprefs.sql b/installer/data/mysql/en/mandatory/sysprefs.sql old mode 100644 new mode 100755 index 3e03cad..62e747e --- a/installer/data/mysql/en/mandatory/sysprefs.sql +++ b/installer/data/mysql/en/mandatory/sysprefs.sql @@ -289,3 +289,5 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('AllFinesNeedOverride','1','If on, staff will be asked to override every fine, even if it is below noissuescharge.','0','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('AuthoritiesLog','0','If ON, log edit/create/delete actions on authorities.','0','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('AuthoritiesLog','0','If ON, log edit/create/delete actions on authorities.','','YesNo'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OPACDisplay856uAsImage','OFF','Display the URI in the 856u field as an image, the corresponding OPACXSLT option must be on','OFF|Details|Results|Both','Choice'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('Display856uAsImage','OFF','Display the URI in the 856u field as an image, the corresponding Staff Client XSLT option must be on','OFF|Details|Results|Both','Choice'); \ No newline at end of file diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index d6b7322..2481fe0 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -4051,6 +4051,13 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { SetVersion ($DBversion); } +$DBversion = 'XXX'; +if (C4::Context->preference("Version") < TransformToNum($DBversion)) { + $dbh->do("INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OPACDisplay856uAsImage','OFF','Display the URI in the 856u field as an image, the corresponding OPACXSLT option must be on','OFF|Details|Results|Both','Choice')"); + $dbh->do("INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('Display856uAsImage','OFF','Display the URI in the 856u field as an image, the corresponding Staff Client XSLT option must be on','OFF|Details|Results|Both','Choice')"); + print "Upgrade to $DBversion done (Add 'Display856uAsImage' and 'OPACDisplay856uAsImage' syspref)\n"; + SetVersion ($DBversion); +} =head1 FUNCTIONS =head2 DropAllForeignKeys($table) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref old mode 100644 new mode 100755 index 3014e63..915a9c6 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -158,6 +158,15 @@ OPAC: - pref: OPACNoResultsFound type: textarea class: code + - + - 'Display the URI in the 856u field as an image on: ' + - pref: OPACDisplay856uAsImage + choices: + OFF: "Neither Details or Results pages" + Details: "Details page only" + Results: "Results page only" + Both: "Both Details and Results pages" + - 'Note: The corresponding OPACXSLT option must be turned on.' Features: - - pref: opacuserlogin diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref old mode 100644 new mode 100755 index 0d7fedc..e8daa01 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/staff_client.pref @@ -63,6 +63,15 @@ Staff Client: choices: local: "included with Koha (faster, will work if internet goes down)." "http://yui.yahooapis.com/2.5.1/build": "from Yahoo's own servers (less demand on your servers)." + - + - 'Display the URI in the 856u field as an image on: ' + - pref: Display856uAsImage + choices: + OFF: "Neither Details or Results pages" + Details: "Details page only" + Results: "Results page (for future use, Results XSLT not functional at this time)." + Both: "Both Results and Details pages (for future use, Results XSLT not functional at this time)." + - 'Note: The corresponding XSLT option must be turned on.' Options: - - pref: viewMARC diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl old mode 100644 new mode 100755 index e3009d8..b7fea92 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl @@ -19,7 +19,7 @@ <xsl:variable name="UseControlNumber" select="1"/> <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="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)"/> @@ -445,8 +445,12 @@ <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 ($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> diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl old mode 100644 new mode 100755 index bb542bc..d07f8e9 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslim2intranetDetail.xsl @@ -15,6 +15,7 @@ </xsl:template> <xsl:template match="marc:record"> + <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)"/> @@ -356,11 +357,15 @@ <li> <strong>Online Resources: </strong> <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 ($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> diff --git a/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl index 5703059..fd43f4c 100755 --- a/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl +++ b/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACDetail.xsl @@ -22,6 +22,7 @@ <xsl:variable name="OPACURLOpenInNewWindow" select="marc:sysprefs/marc:syspref[@name='OPACURLOpenInNewWindow']"/> <xsl:variable name="URLLinkText" select="marc:sysprefs/marc:syspref[@name='URLLinkText']"/> <xsl:variable name="ShowISBD" select="marc:sysprefs/marc:syspref[@name='viewISBD']"/> + <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)"/> @@ -505,12 +506,17 @@ </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> <xsl:if test="$OPACURLOpenInNewWindow='0'"> <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 ($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> @@ -532,6 +538,9 @@ <xsl:if test="$OPACURLOpenInNewWindow='1'"> <a target='_blank'><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 ($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> @@ -558,6 +567,7 @@ </xsl:for-each> </span> </xsl:if> + <xsl:if test="marc:datafield[@tag=505]"> <xsl:for-each select="marc:datafield[@tag=505]"> <span class="results_summary"> diff --git a/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl b/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl old mode 100644 new mode 100755 index b3f61e5..99075b5 --- a/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl +++ b/koha-tmpl/opac-tmpl/prog/en/xslt/MARC21slim2OPACResults.xsl @@ -22,6 +22,7 @@ <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']"/> + <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)"/> @@ -903,9 +904,13 @@ <span class="results_summary"> <span class="label">Online Access: </span> <xsl:for-each select="marc:datafield[@tag=856]"> + <xsl:variable name="SubqText"><xsl:value-of select="marc:subfield[@code='q']"/></xsl:variable> <xsl:if test="$OPACURLOpenInNewWindow='0'"> <a><xsl:attribute name="href"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute> <xsl:choose> + <xsl:when test="($Show856uAsImage='Results' or $Show856uAsImage='Both') and ($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> @@ -927,6 +932,9 @@ <xsl:if test="$OPACURLOpenInNewWindow='1'"> <a target='_blank'><xsl:attribute name="href"><xsl:value-of select="marc:subfield[@code='u']"/></xsl:attribute> <xsl:choose> + <xsl:when test="($Show856uAsImage='Results' or $Show856uAsImage='Both') and ($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> diff --git a/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl old mode 100644 new mode 100755 index 725c559..0d48dd6 --- a/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl +++ b/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACDetail.xsl @@ -15,6 +15,7 @@ </xsl:template> <xsl:template match="marc:record"> + <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)"/> @@ -366,11 +367,15 @@ <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 ($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> diff --git a/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl b/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl old mode 100644 new mode 100755 index 19b6745..81823c8 --- a/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl +++ b/koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslim2OPACResults.xsl @@ -18,6 +18,7 @@ </xsl:template> <xsl:template match="marc:record"> + <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)"/> @@ -74,6 +75,7 @@ <xsl:choose> <xsl:when test="marc:datafield[@tag=856]"> <xsl:for-each select="marc:datafield[@tag=856]"> + <xsl:variable name="SubqText"><xsl:value-of select="marc:subfield[@code='q']"/></xsl:variable> <xsl:choose> <xsl:when test="@ind2=0"> <a> @@ -81,6 +83,9 @@ <xsl:value-of select="marc:subfield[@code='u']"/> </xsl:attribute> <xsl:choose> + <xsl:when test="($Show856uAsImage='Results' or $Show856uAsImage='Both') and ($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> -- 1.5.6.5