From c1026370936d75e149b7ff5053ec0d7af359a3c6 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 Signed-off-by: JM Broust --- 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 8151a29..ee73278 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -305,6 +305,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=utf8mb4 COLLATE=utf8mb4_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 147ff11..0666e99 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc @@ -15,7 +15,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 4ad11ea..ea46fc7 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 %]
  • + + +
  • +