From 49f39041e3a332d30c03b63a23eac2bd9d596dd2 Mon Sep 17 00:00:00 2001 From: Baptiste Wojtkowski Date: Mon, 19 Jun 2017 10:05:37 +0000 Subject: [PATCH] Bug 18818: Display in quick add list now depends on a field in database This patch allows to manage the patron categories contained in 'Quick add new patron'. Test plan: 1) Apply patches but not "define new column as boolean in DBIC Schema" 2) Update database structure : installer/data/mysql/updatedatabase.pl 3) Apply patch "define new column as boolean in DBIC Schema" 4) Update DBIx shema : misc/devel/update_dbix_class_files.pl 5) Go to Administation > Patron categories 6) Check there is a field named "Display in quick add" with "Yes" 7) Edit a category to set "No" and save 8) Check change is well saved 9) Go to "Patrons" and click on "Quick add patron" 10) Check the list contains only wanted categories --- admin/categories.pl | 2 ++ .../bug_18818_quick_add_patron_category_list.sql | 1 + installer/data/mysql/kohastructure.sql | 1 + .../intranet-tmpl/prog/en/includes/patron-toolbar.inc | 6 +++++- .../intranet-tmpl/prog/en/modules/admin/categories.tt | 14 ++++++++++++++ 5 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_18818_quick_add_patron_category_list.sql diff --git a/admin/categories.pl b/admin/categories.pl index 358ef7d..33556a3 100755 --- a/admin/categories.pl +++ b/admin/categories.pl @@ -92,6 +92,7 @@ elsif ( $op eq 'add_validate' ) { my $BlockExpiredPatronOpacActions = $input->param('BlockExpiredPatronOpacActions'); my $checkPrevCheckout = $input->param('checkprevcheckout'); my $default_privacy = $input->param('default_privacy'); + my $quick_add_display = $input->param('quick_add_display'); my @branches = grep { $_ ne q{} } $input->multi_param('branches'); my $is_a_modif = $input->param("is_a_modif"); @@ -121,6 +122,7 @@ elsif ( $op eq 'add_validate' ) { $category->category_type($category_type); $category->BlockExpiredPatronOpacActions($BlockExpiredPatronOpacActions); $category->checkprevcheckout($checkPrevCheckout); + $category->quick_add_display($quick_add_display); $category->default_privacy($default_privacy); eval { $category->store; diff --git a/installer/data/mysql/atomicupdate/bug_18818_quick_add_patron_category_list.sql b/installer/data/mysql/atomicupdate/bug_18818_quick_add_patron_category_list.sql new file mode 100644 index 0000000..a56533c --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_18818_quick_add_patron_category_list.sql @@ -0,0 +1 @@ +ALTER TABLE `categories` ADD `quick_add_display` tinyint(1) NOT NULL DEFAULT 1 AFTER `checkprevcheckout`; diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index f031503..510e459 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -335,6 +335,7 @@ CREATE TABLE `categories` ( -- this table shows information related to Koha patr `BlockExpiredPatronOpacActions` tinyint(1) NOT NULL default '-1', -- wheither or not a patron of this category can renew books or place holds once their card has expired. 0 means they can, 1 means they cannot, -1 means use syspref BlockExpiredPatronOpacActions `default_privacy` ENUM( 'default', 'never', 'forever' ) NOT NULL DEFAULT 'default', -- Default privacy setting for this patron category `checkprevcheckout` varchar(7) NOT NULL default 'inherit', -- produce a warning for this patron category if this item has previously been checked out to this patron if 'yes', not if 'no', defer to syspref setting if 'inherit'. + `quick_add_display` tinyint(1) NOT NULL default 1; -- display or not category in quick add patron feature (1 for yes, 0 for no) PRIMARY KEY (`categorycode`), UNIQUE KEY `categorycode` (`categorycode`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc index c57910b..270a763 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc @@ -14,7 +14,11 @@
[% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt index f7103ab..77c1a86 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/categories.tt @@ -210,6 +210,13 @@ [% END %]
  • + + +
  • +