Bug 22928: (bug 20226 follow-up) Fix display of 'Update child to adult' link

Looks like it is caused by bug 20226, however I am pretty sure it works when I wrote the patch.

[% IF Categories.scalar.all(category_type => 'A').count > 0 %]

is always wrong.

It must be, either:
  [% IF Categories.all(category_type => 'A').size > 0 %]
or
  [% SET adult_categories = Categories.scalar.all(category_type => 'A') %]
  [% IF adult_categories.count > 0 %]

In the first case we are getting an array whereas in the later, a
Koha::Patrons which is preferable.

Test plan (from 20226):
- Remove all your adult categories (categories.category_type='A')
- Create a patron with a child category
- Try to update to adult category
=> The entry does no longer appears! (This is a change in the behaviour)
- Create one adult category
- Update to adult category
=> There is a JS confirmation message, if you accept the patron will
be updated to the adult category
- Create (at least) another adult category
- Create another child
- Update to adult category
=> No more confirmation message but a popup to select the adult category
- Pick one
=> The patron has been updated to the adult category

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
This commit is contained in:
Jonathan Druart 2019-05-16 09:42:32 -05:00 committed by Nick Clemens
parent 2ccc5dcdf1
commit 583fba977e

View file

@ -75,7 +75,8 @@
[% ELSE %]
<li class="disabled"><a data-toggle="tooltip" data-placement="left" title="You are not authorized to delete patrons" id="deletepatron" href="#">Delete</a></li>
[% END %]
[% IF Categories.scalar.all(category_type => 'A').count > 0 %]
[% SET adult_categories = Categories.scalar.all(category_type => 'A') %]
[% IF adult_categories.count > 0 %]
[% IF patron.is_child %]
<li><a id="updatechild" href="#">Update child to adult patron</a></li>
[% ELSE %]