Lines 11-17
Link Here
|
11 |
<xsl:import href="UNIMARCslimUtils.xsl"/> |
11 |
<xsl:import href="UNIMARCslimUtils.xsl"/> |
12 |
<xsl:output method = "html" indent="yes" omit-xml-declaration = "yes" encoding="UTF-8"/> |
12 |
<xsl:output method = "html" indent="yes" omit-xml-declaration = "yes" encoding="UTF-8"/> |
13 |
<xsl:key name="item-by-status" match="items:item" use="items:status"/> |
13 |
<xsl:key name="item-by-status" match="items:item" use="items:status"/> |
14 |
<xsl:key name="item-by-status-and-branch" match="items:item" use="concat(items:status, ' ', items:homebranch)"/> |
14 |
<xsl:key name="item-by-status-and-branch-holding" match="items:item" use="concat(items:status, ' ', items:holdingbranch)"/> |
|
|
15 |
<xsl:key name="item-by-status-and-branch-home" match="items:item" use="concat(items:status, ' ', items:homebranch)"/> |
16 |
|
15 |
|
17 |
|
16 |
<xsl:template match="/"> |
18 |
<xsl:template match="/"> |
17 |
<xsl:apply-templates/> |
19 |
<xsl:apply-templates/> |
Lines 26-31
Link Here
|
26 |
<xsl:variable name="isbn" |
28 |
<xsl:variable name="isbn" |
27 |
select="marc:datafield[@tag=010]/marc:subfield[@code='a']"/> |
29 |
select="marc:datafield[@tag=010]/marc:subfield[@code='a']"/> |
28 |
|
30 |
|
|
|
31 |
<xsl:variable name="OPACResultsBranchXSLT" select="marc:sysprefs/marc:syspref[@name='OPACResultsBranchXSLT']"/> |
29 |
<xsl:variable name="hidelostitems" select="marc:sysprefs/marc:syspref[@name='hidelostitems']"/> |
32 |
<xsl:variable name="hidelostitems" select="marc:sysprefs/marc:syspref[@name='hidelostitems']"/> |
30 |
<xsl:variable name="singleBranchMode" select="marc:sysprefs/marc:syspref[@name='singleBranchMode']"/> |
33 |
<xsl:variable name="singleBranchMode" select="marc:sysprefs/marc:syspref[@name='singleBranchMode']"/> |
31 |
|
34 |
|
Lines 133-165
Link Here
|
133 |
<b><xsl:text>Copies available for loan: </xsl:text></b> |
136 |
<b><xsl:text>Copies available for loan: </xsl:text></b> |
134 |
<xsl:variable name="available_items" select="key('item-by-status', 'available')"/> |
137 |
<xsl:variable name="available_items" select="key('item-by-status', 'available')"/> |
135 |
<xsl:choose> |
138 |
<xsl:choose> |
136 |
<xsl:when test="$singleBranchMode=1"> |
139 |
<xsl:when test="$singleBranchMode=1"> |
137 |
<xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch))[1])]"> |
140 |
<xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]"> |
138 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
141 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
139 |
<xsl:text> (</xsl:text> |
|
|
140 |
<xsl:value-of select="count(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch)))"/> |
141 |
<xsl:text>)</xsl:text> |
142 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
143 |
</xsl:for-each> |
144 |
</xsl:when> |
145 |
<xsl:otherwise> |
146 |
<xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch))[1])]"> |
147 |
<xsl:value-of select="items:homebranch"/> |
148 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">[<xsl:value-of select="items:itemcallnumber"/>] |
149 |
</xsl:if> |
150 |
<xsl:text> (</xsl:text> |
142 |
<xsl:text> (</xsl:text> |
151 |
<xsl:value-of select="count(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch)))"/> |
143 |
<xsl:value-of select="count(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch)))"/> |
152 |
<xsl:text>)</xsl:text> |
144 |
<xsl:text>)</xsl:text> |
153 |
<xsl:choose> |
145 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
154 |
<xsl:when test="position()=last()"> |
|
|
155 |
<xsl:text>. </xsl:text> |
156 |
</xsl:when> |
157 |
<xsl:otherwise> |
158 |
<xsl:text>, </xsl:text> |
159 |
</xsl:otherwise> |
160 |
</xsl:choose> |
161 |
</xsl:for-each> |
146 |
</xsl:for-each> |
162 |
</xsl:otherwise> |
147 |
</xsl:when> |
|
|
148 |
<xsl:otherwise> |
149 |
<xsl:choose> |
150 |
<xsl:when test="$OPACResultsBranchXSLT='homebranch'"> |
151 |
<xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]"> |
152 |
<xsl:value-of select="items:homebranch"/> |
153 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
154 |
<xsl:text> (</xsl:text> |
155 |
<xsl:value-of select="count(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch)))"/> |
156 |
<xsl:text>)</xsl:text> |
157 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
158 |
</xsl:for-each> |
159 |
</xsl:when> |
160 |
<xsl:when test="$OPACResultsBranchXSLT='holdingbranch'"> |
161 |
<xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch-holding', concat(items:status, ' ', items:holdingbranch))[1])]"> |
162 |
<xsl:value-of select="items:holdingbranch"/> |
163 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
164 |
<xsl:text> (</xsl:text> |
165 |
<xsl:value-of select="count(key('item-by-status-and-branch-holding', concat(items:status, ' ', items:holdingbranch)))"/> |
166 |
<xsl:text>)</xsl:text> |
167 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
168 |
</xsl:for-each> |
169 |
</xsl:when> |
170 |
</xsl:choose> |
171 |
</xsl:otherwise> |
163 |
</xsl:choose> |
172 |
</xsl:choose> |
164 |
</span> |
173 |
</span> |
165 |
</xsl:when> |
174 |
</xsl:when> |
Lines 168-190
Link Here
|
168 |
<xsl:when test="count(key('item-by-status', 'reference'))>0"> |
177 |
<xsl:when test="count(key('item-by-status', 'reference'))>0"> |
169 |
<span class="available"> |
178 |
<span class="available"> |
170 |
<b><xsl:text>Copies available for reference: </xsl:text></b> |
179 |
<b><xsl:text>Copies available for reference: </xsl:text></b> |
171 |
<xsl:variable name="reference_items" |
180 |
<xsl:variable name="reference_items" select="key('item-by-status', 'reference')"/> |
172 |
select="key('item-by-status', 'reference')"/> |
181 |
|
173 |
<xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch))[1])]"> |
182 |
<xsl:choose> |
174 |
<xsl:value-of select="items:homebranch"/> |
183 |
<xsl:when test="$OPACResultsBranchXSLT='homebranch'"> |
175 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">[<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
184 |
<xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]"> |
176 |
<xsl:text> (</xsl:text> |
185 |
<xsl:value-of select="items:homebranch"/> |
177 |
<xsl:value-of select="count(key('item-by-status-and-branch', concat(items:status, ' ', items:homebranch)))"/> |
186 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
178 |
<xsl:text>)</xsl:text> |
187 |
<xsl:text> (</xsl:text> |
179 |
<xsl:choose> |
188 |
<xsl:value-of select="count(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch)))"/> |
180 |
<xsl:when test="position()=last()"> |
189 |
<xsl:text>)</xsl:text> |
181 |
<xsl:text>. </xsl:text> |
190 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
|
|
191 |
</xsl:for-each> |
182 |
</xsl:when> |
192 |
</xsl:when> |
183 |
<xsl:otherwise> |
193 |
<xsl:when test="$OPACResultsBranchXSLT='holdingbranch'"> |
184 |
<xsl:text>, </xsl:text> |
194 |
<xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-status-and-branch-holding', concat(items:status, ' ', items:holdingbranch))[1])]"> |
185 |
</xsl:otherwise> |
195 |
<xsl:value-of select="items:holdingbranch"/> |
186 |
</xsl:choose> |
196 |
<xsl:if test="items:itemcallnumber != '' and items:itemcallnumber"> [<xsl:value-of select="items:itemcallnumber"/>]</xsl:if> |
187 |
</xsl:for-each> |
197 |
<xsl:text> (</xsl:text> |
|
|
198 |
<xsl:value-of select="count(key('item-by-status-and-branch-holding', concat(items:status, ' ', items:holdingbranch)))"/> |
199 |
<xsl:text>)</xsl:text> |
200 |
<xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose> |
201 |
</xsl:for-each> |
202 |
</xsl:when> |
203 |
</xsl:choose> |
188 |
</span> |
204 |
</span> |
189 |
</xsl:when> |
205 |
</xsl:when> |
190 |
</xsl:choose> |
206 |
</xsl:choose> |
191 |
- |
|
|