Bugzilla – Attachment 46949 Details for
Bug 15354
item types aren't showing in default hold policies
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
[PASSED QA] Bug 15354: Fix translated itemtype descriptions in circ rules
PASSED-QA-Bug-15354-Fix-translated-itemtype-descri.patch (text/plain), 5.51 KB, created by
Katrin Fischer
on 2016-01-19 22:27:35 UTC
(
hide
)
Description:
[PASSED QA] Bug 15354: Fix translated itemtype descriptions in circ rules
Filename:
MIME Type:
Creator:
Katrin Fischer
Created:
2016-01-19 22:27:35 UTC
Size:
5.51 KB
patch
obsolete
>From 84aa11ea9c596bb1fc5ae48435bd57f8bfea3cac Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Mon, 14 Dec 2015 10:14:16 +0000 >Subject: [PATCH] [PASSED QA] Bug 15354: Fix translated itemtype descriptions > in circ rules >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >In bug 14100, the admin/smart-rules.pl needed much more love. >Indeed, the translated_description string should be used everywhere and >replaced the previous 'humanitemtype'. > >Test plan: >1/ Translate some item types. >2/ Define some holds policy using these item types. >3/ Update the template strings >4/ Confirm that the "holds policy by item type" are displayed (for the >default and specific library) and sorted by translated item type descriptions. > >Signed-off-by: Frédéric Demians <f.demians@tamil.fr> > >Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com> >Passes QA tools. > >Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> >--- > admin/smart-rules.pl | 30 ++++++++++++++-------- > .../prog/en/modules/admin/smart-rules.tt | 4 +-- > 2 files changed, 21 insertions(+), 13 deletions(-) > >diff --git a/admin/smart-rules.pl b/admin/smart-rules.pl >index e120bd8..8221a0d 100755 >--- a/admin/smart-rules.pl >+++ b/admin/smart-rules.pl >@@ -460,8 +460,8 @@ $sth2->execute($language, $branch); > > while (my $row = $sth2->fetchrow_hashref) { > $row->{'current_branch'} ||= $row->{'branchcode'}; >- $row->{'humanitemtype'} ||= $row->{'itemtype'}; >- $row->{'default_humanitemtype'} = 1 if $row->{'humanitemtype'} eq '*'; >+ $row->{translated_description} ||= $row->{translated_description}; >+ $row->{default_translated_description} = 1 if $row->{humanitemtype} eq '*'; > $row->{'humancategorycode'} ||= $row->{'categorycode'}; > $row->{'default_humancategorycode'} = 1 if $row->{'humancategorycode'} eq '*'; > $row->{'fine'} = sprintf('%.2f', $row->{'fine'}); >@@ -516,26 +516,34 @@ foreach my $entry (@sorted_branch_cat_rules, @sorted_row_loop) { > my $sth_branch_item; > if ($branch eq "*") { > $sth_branch_item = $dbh->prepare(" >- SELECT default_branch_item_rules.*, itemtypes.description AS humanitemtype >+ SELECT default_branch_item_rules.*, >+ COALESCE( localization.translation, itemtypes.description ) AS translated_description > FROM default_branch_item_rules > JOIN itemtypes USING (itemtype) >+ LEFT JOIN localization ON itemtypes.itemtype = localization.code >+ AND localization.entity = 'itemtypes' >+ AND localization.lang = ? > "); >- $sth_branch_item->execute(); >+ $sth_branch_item->execute($language); > } else { > $sth_branch_item = $dbh->prepare(" >- SELECT branch_item_rules.*, itemtypes.description AS humanitemtype >+ SELECT branch_item_rules.*, >+ COALESCE( localization.translation, itemtypes.description ) AS translated_description > FROM branch_item_rules > JOIN itemtypes USING (itemtype) >+ LEFT JOIN localization ON itemtypes.itemtype = localization.code >+ AND localization.entity = 'itemtypes' >+ AND localization.lang = ? > WHERE branch_item_rules.branchcode = ? > "); >- $sth_branch_item->execute($branch); >+ $sth_branch_item->execute($language, $branch); > } > > my @branch_item_rules = (); > while (my $row = $sth_branch_item->fetchrow_hashref) { > push @branch_item_rules, $row; > } >-my @sorted_branch_item_rules = sort { $a->{'humanitemtype'} cmp $b->{'humanitemtype'} } @branch_item_rules; >+my @sorted_branch_item_rules = sort { $a->{translated_description} cmp $b->{translated_description} } @branch_item_rules; > > # note undef holdallowed so that template can deal with them > foreach my $entry (@sorted_branch_item_rules) { >@@ -609,11 +617,11 @@ sub by_category { > > sub by_itemtype { > my ($a, $b) = @_; >- if ($a->{'default_humanitemtype'}) { >- return ($b->{'default_humanitemtype'} ? 0 : 1); >- } elsif ($b->{'default_humanitemtype'}) { >+ if ($a->{default_translated_description}) { >+ return ($b->{'default_translated_description'} ? 0 : 1); >+ } elsif ($b->{'default_translated_description'}) { > return -1; > } else { >- return $a->{'humanitemtype'} cmp $b->{'humanitemtype'}; >+ return $a->{'translated_description'} cmp $b->{'translated_description'}; > } > } >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt >index e7cc158..825e53d 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt >@@ -185,7 +185,7 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde > [% rule.humancategorycode %] > [% END %] > </td> >- <td>[% IF ( rule.default_humanitemtype ) %] >+ <td>[% IF rule.default_translated_description %] > <em>All</em> > [% ELSE %] > [% rule.translated_description %] >@@ -545,7 +545,7 @@ for="tobranch"><strong>Clone these rules to:</strong></label> <input type="hidde > [% ELSE %] > <tr> > [% END %] >- <td>[% IF ( branch_item_rule_loo.default_humanitemtype ) %] >+ <td>[% IF ( branch_item_rule_loo.default_translated_description ) %] > <em>Default</em> > [% ELSE %] > [% branch_item_rule_loo.translated_description %] >-- >1.9.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 15354
:
45609
|
45632
|
45633
|
45716
|
46222
|
46281
|
46282
|
46283
| 46949 |
46950
|
46951