Bug 24786: Default to 'branch default' on auth.
authorMartin Renvoize <martin.renvoize@ptfs-europe.com>
Tue, 11 Aug 2020 13:24:19 +0000 (14:24 +0100)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Fri, 6 Nov 2020 14:40:00 +0000 (15:40 +0100)
If no branch is selected (i.e. 'My library') then we should default to
'branch default' if one is defined for the users library at login.

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
C4/Auth.pm
koha-tmpl/intranet-tmpl/prog/en/modules/auth.tt

index b366c9c..d2d7c0f 100644 (file)
@@ -1141,10 +1141,15 @@ sub checkauth {
                         my $desk = Koha::Desks->find($desk_id);
                         $desk_name = $desk ? $desk->desk_name : '';
                     }
-                    if ( $query->param('register_id') ) {
-                        $register_id = $query->param('register_id');
-                        my $register = Koha::Cash::Registers->find($register_id);
-                        $register_name = $register ? $register->name : '';
+                    if ( C4::Context->preference('UseCashRegisters') ) {
+                        my $register =
+                          $query->param('register_id')
+                          ? Koha::Cash::Registers->find($query->param('register_id'))
+                          : Koha::Cash::Registers->search(
+                            { branch => $branchcode, branch_default => 1 },
+                            { rows   => 1 } )->single;
+                        $register_id   = $register->id   if ($register);
+                        $register_name = $register->name if ($register);
                     }
                     my $branches = { map { $_->branchcode => $_->unblessed } Koha::Libraries->search };
                     if ( $type ne 'opac' and C4::Context->boolean_preference('AutoLocation') ) {
index bf12a51..3e3fea0 100644 (file)
     <p>
         <label for="register_id">Cash register:</label>
         <select name="register_id" id="register_id" class="input" tabindex="4">
-            [% PROCESS options_for_registers registers => Registers.all() %]
+            <option id="noregister" value="" selected="selected">Branch default</option>
+            [% FOREACH r IN Registers.all() %]
+            <option class="[% r.branch | html %] [% IF r.branch_default %]default[% END %]" value="[% r.id | html %]" disabled hidden>[% r.name | html %]</option>
+            [% END %]
         </select>
     </p>
     [% END %]