From 1023ac196cf6bf44f565f45e99736be577bfd9c9 Mon Sep 17 00:00:00 2001 From: Aleisha Amohia Date: Mon, 19 Jun 2017 19:47:52 +0000 Subject: [PATCH] Bug 12365: Notes for rules This patch adds a note column to the circ and fine rules to act as a description line for the rule. To test: 1) Apply patch, update database (may have to also update schema) 2) Go to Admin -> Circ and fine rules 3) Scroll to the right, notice new Note column 4) Confirm it works to create a brand new rule with a Note 5) Confirm it works to modify an existing rule with a Note Sponsored-by: Catalyst IT Lee Jamison rescued this patch. It is a clean re-build of attachments 61865 and 63902 to fix the merge conflict introduced during application of both attachments. Signed-off-by: Mark Tompsett Signed-off-by: macon lauren KohaCon17 Signed-off-by: Katrin Fischer Signed-off-by: Owen Leonard Signed-off-by: Michal Denar Signed-off-by: Michal Denar --- Koha/Schema/Result/Issuingrule.pm | 8 ++++++++ admin/smart-rules.pl | 2 ++ .../bug_12365_-_add_note_column_to_issuingrules.perl | 9 +++++++++ installer/data/mysql/kohastructure.sql | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt | 6 +++++- 5 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_12365_-_add_note_column_to_issuingrules.perl diff --git a/Koha/Schema/Result/Issuingrule.pm b/Koha/Schema/Result/Issuingrule.pm index 5958055104..602f406d7d 100644 --- a/Koha/Schema/Result/Issuingrule.pm +++ b/Koha/Schema/Result/Issuingrule.pm @@ -221,6 +221,12 @@ __PACKAGE__->table("issuingrules"); extra: {list => ["no","yes","bib_only","item_only"]} is_nullable: 0 +=head2 note + + data_type: 'varchar' + is_nullable: 1 + size: 100 + =cut __PACKAGE__->add_columns( @@ -302,6 +308,8 @@ __PACKAGE__->add_columns( extra => { list => ["no", "yes", "bib_only", "item_only"] }, is_nullable => 0, }, + "note", + { data_type => "varchar", is_nullable => 1, size => 100 }, ); =head1 PRIMARY KEY diff --git a/admin/smart-rules.pl b/admin/smart-rules.pl index 854dcde2a6..ddaf446f6c 100755 --- a/admin/smart-rules.pl +++ b/admin/smart-rules.pl @@ -182,6 +182,7 @@ elsif ($op eq 'add') { my $article_requests = $input->param('article_requests') || 'no'; my $overduefinescap = $input->param('overduefinescap') || undef; my $cap_fine_to_replacement_price = $input->param('cap_fine_to_replacement_price') eq 'on'; + my $note = $input->param('note'); $debug and warn "Adding $br, $bor, $itemtype, $fine, $maxissueqty, $maxonsiteissueqty, $cap_fine_to_replacement_price"; my $params = { @@ -215,6 +216,7 @@ elsif ($op eq 'add') { overduefinescap => $overduefinescap, cap_fine_to_replacement_price => $cap_fine_to_replacement_price, article_requests => $article_requests, + note => $note, }; my $issuingrule = Koha::IssuingRules->find({categorycode => $bor, itemtype => $itemtype, branchcode => $br}); diff --git a/installer/data/mysql/atomicupdate/bug_12365_-_add_note_column_to_issuingrules.perl b/installer/data/mysql/atomicupdate/bug_12365_-_add_note_column_to_issuingrules.perl new file mode 100644 index 0000000000..6b4d671c0b --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_12365_-_add_note_column_to_issuingrules.perl @@ -0,0 +1,9 @@ +$DBversion = 'XXX'; +if( CheckVersion( $DBversion ) ) { + unless( column_exists( 'issuingrules', 'note' ) ) { + $dbh->do(q|ALTER TABLE issuingrules ADD note varchar(100) default NULL AFTER article_requests|); + } + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 12365: Add column issuingrules.note)\n"; +} diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index 46e4459e89..a3d3ffe51f 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -876,6 +876,7 @@ CREATE TABLE `issuingrules` ( -- circulation and fine rules onshelfholds tinyint(1) NOT NULL default 0, -- allow holds for items that are on shelf opacitemholds char(1) NOT NULL default 'N', -- allow opac users to place specific items on hold article_requests enum('no','yes','bib_only','item_only') NOT NULL DEFAULT 'no', -- allow article requests to be placed, + `note` varchar(100) default NULL, -- description of rule, reason for setting rule PRIMARY KEY (`branchcode`,`categorycode`,`itemtype`), KEY `categorycode` (`categorycode`), KEY `itemtype` (`itemtype`) 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 849ad7315a..52f5525702 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 @@ -96,6 +96,7 @@ Item level holds Article requests Rental discount (%) + Note Actions @@ -215,7 +216,8 @@ Item only [% END %] - [% rule.rentaldiscount | html %] + [% rule.rentaldiscount | html %] + [% rule.note | html %] Edit Delete @@ -316,6 +318,7 @@ + @@ -353,6 +356,7 @@ Item level holds Article requests Rental discount (%) + Note   -- 2.11.0