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