|
Lines 189-205
sub get_xslt_sysprefs {
Link Here
|
| 189 |
return $sysxml; |
189 |
return $sysxml; |
| 190 |
} |
190 |
} |
| 191 |
|
191 |
|
| 192 |
sub XSLTParse4Display { |
192 |
sub get_xsl_filename { |
| 193 |
my ( $biblionumber, $orig_record, $xslsyspref, $fixamps, $hidden_items, $sysxml, $xslfilename, $lang, $variables, $items_rs ) = @_; |
193 |
my ( $xslsyspref ) = @_; |
|
|
194 |
|
| 195 |
my $lang = C4::Languages::getlanguage(); |
| 194 |
|
196 |
|
| 195 |
$sysxml ||= C4::Context->preference($xslsyspref); |
197 |
my $xslfilename = C4::Context->preference($xslsyspref) || "default"; |
| 196 |
$xslfilename ||= C4::Context->preference($xslsyspref); |
|
|
| 197 |
$lang ||= C4::Languages::getlanguage(); |
| 198 |
|
198 |
|
| 199 |
if ( $xslfilename =~ /^\s*"?default"?\s*$/i ) { |
199 |
if ( $xslfilename =~ /^\s*"?default"?\s*$/i ) { |
| 200 |
my $htdocs; |
200 |
|
| 201 |
my $theme; |
201 |
my ( $htdocs, $theme, $xslfile ); |
| 202 |
my $xslfile; |
202 |
|
| 203 |
if ($xslsyspref eq "XSLTDetailsDisplay") { |
203 |
if ($xslsyspref eq "XSLTDetailsDisplay") { |
| 204 |
$htdocs = C4::Context->config('intrahtdocs'); |
204 |
$htdocs = C4::Context->config('intrahtdocs'); |
| 205 |
$theme = C4::Context->preference("template"); |
205 |
$theme = C4::Context->preference("template"); |
|
Lines 240-245
sub XSLTParse4Display {
Link Here
|
| 240 |
$xslfilename =~ s/\{langcode\}/$lang/; |
240 |
$xslfilename =~ s/\{langcode\}/$lang/; |
| 241 |
} |
241 |
} |
| 242 |
|
242 |
|
|
|
243 |
return $xslfilename; |
| 244 |
} |
| 245 |
|
| 246 |
sub XSLTParse4Display { |
| 247 |
my ( $params ) = @_; |
| 248 |
|
| 249 |
my $biblionumber = $params->{biblionumber}; |
| 250 |
my $orig_record = $params->{record}; |
| 251 |
my $xslsyspref = $params->{xsl_syspref}; |
| 252 |
my $fixamps = $params->{fix_amps}; |
| 253 |
my $hidden_items = $params->{hidden_items} || []; |
| 254 |
my $variables = $params->{xslt_variables}; |
| 255 |
my $items_rs = $params->{items_rs}; |
| 256 |
|
| 257 |
my $xslfilename = get_xsl_filename( $xslsyspref); |
| 258 |
|
| 243 |
# grab the XML, run it through our stylesheet, push it out to the browser |
259 |
# grab the XML, run it through our stylesheet, push it out to the browser |
| 244 |
my $record = transformMARCXML4XSLT($biblionumber, $orig_record); |
260 |
my $record = transformMARCXML4XSLT($biblionumber, $orig_record); |
| 245 |
my $itemsxml; |
261 |
my $itemsxml; |
|
Lines 272-277
sub XSLTParse4Display {
Link Here
|
| 272 |
} |
288 |
} |
| 273 |
$varxml .= "</variables>\n"; |
289 |
$varxml .= "</variables>\n"; |
| 274 |
|
290 |
|
|
|
291 |
my $sysxml = get_xslt_sysprefs(); |
| 275 |
$xmlrecord =~ s/\<\/record\>/$itemsxml$sysxml$varxml\<\/record\>/; |
292 |
$xmlrecord =~ s/\<\/record\>/$itemsxml$sysxml$varxml\<\/record\>/; |
| 276 |
if ($fixamps) { # We need to correct the ampersand entities that Zebra outputs |
293 |
if ($fixamps) { # We need to correct the ampersand entities that Zebra outputs |
| 277 |
$xmlrecord =~ s/\&amp;/\&/g; |
294 |
$xmlrecord =~ s/\&amp;/\&/g; |