Bug 14377 - Don't replace 942$n with authorised value except when using UNIMARC
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
aa64000df5
commit
f474ca5095
10
C4/XSLT.pm
10
C4/XSLT.pm
|
|
@ -75,6 +75,7 @@ sub transformMARCXML4XSLT {
|
|||
@fields = $record->fields();
|
||||
};
|
||||
if ($@) { warn "PROBLEM WITH RECORD"; next; }
|
||||
my $marcflavour = C4::Context->preference('marcflavour');
|
||||
my $av = getAuthorisedValues4MARCSubfields($frameworkcode);
|
||||
foreach my $tag ( keys %$av ) {
|
||||
foreach my $field ( $record->field( $tag ) ) {
|
||||
|
|
@ -82,8 +83,11 @@ sub transformMARCXML4XSLT {
|
|||
my @new_subfields = ();
|
||||
for my $subfield ( $field->subfields() ) {
|
||||
my ( $letter, $value ) = @$subfield;
|
||||
$value = GetAuthorisedValueDesc( $tag, $letter, $value, '', $tagslib )
|
||||
if $av->{ $tag }->{ $letter };
|
||||
# Replace the field value with the authorised value *except* for 942$n ( record supression )
|
||||
if ( $tag ne '942' && $subfield ne 'n' && $marcflavour ne 'UNIMARC' ) {
|
||||
$value = GetAuthorisedValueDesc( $tag, $letter, $value, '', $tagslib )
|
||||
if $av->{ $tag }->{ $letter };
|
||||
}
|
||||
push( @new_subfields, $letter, $value );
|
||||
}
|
||||
$field ->replace_with( MARC::Field->new(
|
||||
|
|
@ -206,7 +210,7 @@ sub XSLTParse4Display {
|
|||
UseControlNumber IntranetBiblioDefaultView BiblioDefaultView
|
||||
OPACItemLocation DisplayIconsXSLT
|
||||
AlternateHoldingsField AlternateHoldingsSeparator
|
||||
TrackClicks opacthemes IdRef / )
|
||||
TrackClicks opacthemes IdRefi OpacSuppression / )
|
||||
{
|
||||
my $sp = C4::Context->preference( $syspref );
|
||||
next unless defined($sp);
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
<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="DisplayIconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayIconsXSLT']"/>
|
||||
<xsl:variable name="OpacSuppression" select="marc:sysprefs/marc:syspref[@name='OpacSuppression']"/>
|
||||
<xsl:variable name="TracingQuotesLeft">
|
||||
<xsl:choose>
|
||||
<xsl:when test="marc:sysprefs/marc:syspref[@name='UseICU']='1'">{</xsl:when>
|
||||
|
|
@ -91,8 +92,10 @@
|
|||
</xsl:variable>
|
||||
|
||||
<!-- Indicate if record is suppressed in OPAC -->
|
||||
<xsl:if test="marc:datafield[@tag=942][marc:subfield[@code='n'] = '1']">
|
||||
<span class="results_summary suppressed_opac"><xsl:value-of select="concat('#',marc:datafield[@tag=999]/marc:subfield[@code='c'])"/> - Suppressed in OPAC</span>
|
||||
<xsl:if test="$OpacSuppression = 1">
|
||||
<xsl:if test="marc:datafield[@tag=942][marc:subfield[@code='n'] = '1']">
|
||||
<span class="results_summary suppressed_opac"><xsl:value-of select="concat('#',marc:datafield[@tag=999]/marc:subfield[@code='c'])"/> - Suppressed in OPAC</span>
|
||||
</xsl:if>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Title Statement -->
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
<xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/>
|
||||
<xsl:variable name="DisplayIconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayIconsXSLT']"/>
|
||||
<xsl:variable name="IntranetBiblioDefaultView" select="marc:sysprefs/marc:syspref[@name='IntranetBiblioDefaultView']"/>
|
||||
<xsl:variable name="OpacSuppression" select="marc:sysprefs/marc:syspref[@name='OpacSuppression']"/>
|
||||
<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)"/>
|
||||
|
|
@ -282,8 +283,10 @@
|
|||
</xsl:variable>
|
||||
|
||||
<!-- Indicate if record is suppressed in OPAC -->
|
||||
<xsl:if test="marc:datafield[@tag=942][marc:subfield[@code='n'] = '1']">
|
||||
<span class="results_summary suppressed_opac"><xsl:value-of select="concat('#',marc:datafield[@tag=999]/marc:subfield[@code='c'])"/> - Suppressed in OPAC</span>
|
||||
<xsl:if test="$OpacSuppression = 1">
|
||||
<xsl:if test="marc:datafield[@tag=942][marc:subfield[@code='n'] = '1']">
|
||||
<span class="results_summary suppressed_opac"><xsl:value-of select="concat('#',marc:datafield[@tag=999]/marc:subfield[@code='c'])"/> - Suppressed in OPAC</span>
|
||||
</xsl:if>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Title Statement: Alternate Graphic Representation (MARC 880) -->
|
||||
|
|
|
|||
Loading…
Reference in New Issue