diff --git a/C4/AuthoritiesMarc.pm b/C4/AuthoritiesMarc.pm index f35b885881..703ea75a4f 100644 --- a/C4/AuthoritiesMarc.pm +++ b/C4/AuthoritiesMarc.pm @@ -279,13 +279,16 @@ sub SearchAuthorities { } ## Adding order #$query=' @or @attr 7=2 @attr 1=Heading 0 @or @attr 7=1 @attr 1=Heading 1'.$query if ($sortby eq "HeadingDsc"); - my $orderstring= ($sortby eq "HeadingAsc"? - '@attr 7=1 @attr 1=Heading 0' - : - $sortby eq "HeadingDsc"? - '@attr 7=2 @attr 1=Heading 0' - :'' - ); + my $orderstring; + if ($sortby eq 'HeadingAsc') { + $orderstring = '@attr 7=1 @attr 1=Heading 0'; + } elsif ($sortby eq 'HeadingDsc') { + $orderstring = '@attr 7=2 @attr 1=Heading 0'; + } elsif ($sortby eq 'AuthidAsc') { + $orderstring = '@attr 7=1 @attr 1=Local-Number 0'; + } elsif ($sortby eq 'AuthidDsc') { + $orderstring = '@attr 7=2 @attr 1=Local-Number 0'; + } $query=($query?$query:"\@attr 1=_ALLRECORDS \@attr 2=103 ''"); $query="\@or $orderstring $query" if $orderstring; diff --git a/C4/Heading.pm b/C4/Heading.pm index 98bb4a87fc..102cac637a 100644 --- a/C4/Heading.pm +++ b/C4/Heading.pm @@ -205,7 +205,7 @@ sub _search { return C4::AuthoritiesMarc::SearchAuthorities( \@marclist, \@and_or, \@excluding, \@operator, \@value, 0, 20, $self->{'auth_type'}, - '', $skipmetadata + 'AuthidAsc', $skipmetadata ); } diff --git a/etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml b/etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml index 67b234fda7..f1013e18ca 100644 --- a/etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml +++ b/etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml @@ -23,6 +23,7 @@ authority-zebra-indexdefs.xsl` Local-Number:w + Local-Number:s diff --git a/etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl b/etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl index 3ee5d6c48c..aa02e70292 100644 --- a/etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl +++ b/etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl @@ -46,7 +46,7 @@ authority-zebra-indexdefs.xsl` (substituting the appropriate file names). - + diff --git a/etc/zebradb/marc_defs/marc21/authorities/record.abs b/etc/zebradb/marc_defs/marc21/authorities/record.abs index 5baa5b2c73..23d75a2fda 100644 --- a/etc/zebradb/marc_defs/marc21/authorities/record.abs +++ b/etc/zebradb/marc_defs/marc21/authorities/record.abs @@ -11,7 +11,7 @@ systag sysno rank xpath enable all any -melm 001 Local-Number +melm 001 Local-Number,Local-Number:s melm 942$a authtype:w,authtype:p # Personal Name diff --git a/etc/zebradb/marc_defs/unimarc/authorities/record.abs b/etc/zebradb/marc_defs/unimarc/authorities/record.abs index 92f742b9c6..18245c0036 100644 --- a/etc/zebradb/marc_defs/unimarc/authorities/record.abs +++ b/etc/zebradb/marc_defs/unimarc/authorities/record.abs @@ -11,7 +11,7 @@ systag sysno rank xpath enable all any -melm 001 Local-Number +melm 001 Local-Number,Local-Number:s melm 942$a authtype melm 152$b authtype:w,authtype:p