Bugzilla – Attachment 88138 Details for
Bug 22284
Add ability to define groups of locations for hold pickup
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 22284: New ft_local_hold_group column, and 'holgroup' enum option
Bug-22284-New-ftlocalholdgroup-column-and-holgroup.patch (text/plain), 6.80 KB, created by
Agustín Moyano
on 2019-04-17 06:24:28 UTC
(
hide
)
Description:
Bug 22284: New ft_local_hold_group column, and 'holgroup' enum option
Filename:
MIME Type:
Creator:
Agustín Moyano
Created:
2019-04-17 06:24:28 UTC
Size:
6.80 KB
patch
obsolete
>From e92be5535c360a83d71a6250373f54b564b7fc1f Mon Sep 17 00:00:00 2001 >From: Agustin Moyano <agustinmoyano@theke.io> >Date: Sun, 24 Mar 2019 22:50:42 -0300 >Subject: [PATCH] Bug 22284: New ft_local_hold_group column, and 'holgroup' > enum option > >In order to add groups for holds, this patch provides a new column in >library_groups to identify them. Also provides new enum option for >hold_fulfillment_policy column of default_branch_circ_rules, >default_circ_rules, default_branch_item_rules and branch_item_rules. > >To test: >1) check that there is no ft_local_hold_group column in library_groups >and that there are no 'holdgroup' enum option in hold_fulfillment_policy >in default_branch_circ_rules, default_circ_rules, default_branch_item_rules >and branch_item_rules >2) apply this patch >3) run perl installer/data/mysql/updatedatabase.pl >SUCCESS => !(step 1) ;-D >4) Sign off > >Sponsored-by: VOKAL >--- > ...284_add_ft_local_hold_group_to_library_groups.perl | 19 +++++++++++++++++++ > installer/data/mysql/kohastructure.sql | 11 ++++++----- > 2 files changed, 25 insertions(+), 5 deletions(-) > create mode 100644 installer/data/mysql/atomicupdate/bug_22284_add_ft_local_hold_group_to_library_groups.perl > >diff --git a/installer/data/mysql/atomicupdate/bug_22284_add_ft_local_hold_group_to_library_groups.perl b/installer/data/mysql/atomicupdate/bug_22284_add_ft_local_hold_group_to_library_groups.perl >new file mode 100644 >index 0000000000..98f6c3f17b >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/bug_22284_add_ft_local_hold_group_to_library_groups.perl >@@ -0,0 +1,19 @@ >+$DBversion = 'XXX'; # will be replaced by the RM >+if( CheckVersion( $DBversion ) ) { >+ # you can use $dbh here like: >+ # $dbh->do( "ALTER TABLE library_groups ADD COLUMN ft_local_hold_group tinyint(1) NOT NULL DEFAULT 0 AFTER ft_search_groups_staff" ); >+ >+ # or perform some test and warn >+ if( !column_exists( 'library_groups', 'ft_local_hold_group' ) ) { >+ $dbh->do( "ALTER TABLE library_groups ADD COLUMN ft_local_hold_group tinyint(1) NOT NULL DEFAULT 0 AFTER ft_search_groups_staff" ); >+ } >+ >+ $dbh->do("ALTER TABLE default_branch_circ_rules MODIFY hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any'"); >+ $dbh->do("ALTER TABLE default_circ_rules MODIFY hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any'"); >+ $dbh->do("ALTER TABLE default_branch_item_rules MODIFY hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any'"); >+ $dbh->do("ALTER TABLE branch_item_rules MODIFY hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any'"); >+ >+ # Always end with this (adjust the bug info) >+ SetVersion( $DBversion ); >+ print "Upgrade to $DBversion done (Bug 22284 - Add ft_local_hold_group column to library_groups and alter hold_fulfillment_policy in rules tables)\n"; >+} >diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql >index bd1c803ac8..c60c96cb21 100644 >--- a/installer/data/mysql/kohastructure.sql >+++ b/installer/data/mysql/kohastructure.sql >@@ -362,7 +362,7 @@ DROP TABLE IF EXISTS `default_branch_circ_rules`; > CREATE TABLE `default_branch_circ_rules` ( > `branchcode` VARCHAR(10) NOT NULL, > `holdallowed` tinyint(1) default NULL, >- hold_fulfillment_policy ENUM('any', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode >+ hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode > `returnbranch` varchar(15) default NULL, > PRIMARY KEY (`branchcode`), > CONSTRAINT `default_branch_circ_rules_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) >@@ -377,7 +377,7 @@ DROP TABLE IF EXISTS `default_circ_rules`; > CREATE TABLE `default_circ_rules` ( > `singleton` enum('singleton') NOT NULL default 'singleton', > `holdallowed` int(1) default NULL, >- hold_fulfillment_policy ENUM('any', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode >+ hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode > `returnbranch` varchar(15) default NULL, > PRIMARY KEY (`singleton`) > ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; >@@ -977,7 +977,7 @@ DROP TABLE IF EXISTS `default_branch_item_rules`; > CREATE TABLE `default_branch_item_rules` ( > `itemtype` varchar(10) NOT NULL, > `holdallowed` tinyint(1) default NULL, >- hold_fulfillment_policy ENUM('any', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode >+ hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode > `returnbranch` varchar(15) default NULL, > PRIMARY KEY (`itemtype`), > CONSTRAINT `default_branch_item_rules_ibfk_1` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`) >@@ -1015,7 +1015,7 @@ CREATE TABLE `branch_item_rules` ( -- information entered in the circulation and > `branchcode` varchar(10) NOT NULL, -- the branch this rule is for (branches.branchcode) > `itemtype` varchar(10) NOT NULL, -- the item type this rule applies to (items.itype) > `holdallowed` tinyint(1) default NULL, -- the number of holds allowed >- hold_fulfillment_policy ENUM('any', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode >+ hold_fulfillment_policy ENUM('any', 'holdgroup', 'homebranch', 'holdingbranch') NOT NULL DEFAULT 'any', -- limit trapping of holds by branchcode > `returnbranch` varchar(15) default NULL, -- the branch the item returns to (homebranch, holdingbranch, noreturn) > PRIMARY KEY (`itemtype`,`branchcode`), > KEY `branch_item_rules_ibfk_2` (`branchcode`), >@@ -4207,7 +4207,8 @@ CREATE TABLE library_groups ( > description MEDIUMTEXT NULL DEFAULT NULL, -- Longer explanation of the group, if necessary > ft_hide_patron_info tinyint(1) NOT NULL DEFAULT 0, -- Turn on the feature "Hide patron's info" for this group > ft_search_groups_opac tinyint(1) NOT NULL DEFAULT 0, -- Use this group for staff side search groups >- ft_search_groups_staff tinyint(1) NOT NULL DEFAULT 0, -- Use this group for opac side search groups >+ ft_search_groups_staff tinyint(1) NOT NULL DEFAULT 0, -- Use this group for opac side search groups >+ ft_local_hold_group tinyint(1) NOT NULL DEFAULT 0, -- Use this group to identify libraries as pick up location for holds > created_on TIMESTAMP NULL, -- Date and time of creation > updated_on TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, -- Date and time of last > PRIMARY KEY id ( id ), >-- >2.11.0
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 22284
:
88138
|
88139
|
88140
|
88141
|
88142
|
88143
|
88144
|
88145
|
88369
|
88561
|
88793
|
88794
|
88795
|
88796
|
88797
|
88798
|
88799
|
88800
|
88801
|
88802
|
88939
|
88940
|
88941
|
88942
|
88943
|
88944
|
88945
|
88946
|
88947
|
88948
|
88949
|
88955
|
88956
|
88957
|
88958
|
88959
|
88960
|
88961
|
88962
|
88963
|
88964
|
88965
|
89060
|
89061
|
89062
|
89063
|
89064
|
89065
|
89066
|
89067
|
89068
|
89069
|
89070
|
89071
|
89072
|
89073
|
89074
|
89075
|
89076
|
89077
|
89078
|
89079
|
89080
|
89081
|
89082
|
89083
|
89084
|
89085
|
89122
|
89123
|
89124
|
89125
|
89126
|
89127
|
89128
|
89129
|
89130
|
89131
|
89132
|
89133
|
89134
|
89135
|
89523
|
89836
|
89837
|
89838
|
89839
|
89840
|
89841
|
89842
|
89843
|
89844
|
89845
|
89846
|
89847
|
89848
|
89849
|
90133
|
90134
|
90197
|
90198
|
90199
|
90200
|
90201
|
90469
|
90525
|
91261
|
91262
|
91263
|
91264
|
91265
|
91266
|
91267
|
91268
|
91269
|
91270
|
91271
|
91272
|
91273
|
91274
|
91275
|
91276
|
91277
|
91278
|
91279
|
91280
|
91282
|
91701
|
91702
|
91703
|
91704
|
91705
|
91706
|
91707
|
91708
|
91709
|
91710
|
91711
|
91712
|
91713
|
91714
|
91715
|
91716
|
91717
|
91718
|
91719
|
91720
|
91721
|
91750
|
91751
|
91752
|
91753
|
91754
|
91755
|
91756
|
91757
|
91758
|
92554
|
92555
|
92556
|
92557
|
92558
|
92559
|
92560
|
92561
|
92562
|
92563
|
92564
|
92565
|
92566
|
92567
|
92568
|
92569
|
92570
|
92571
|
92572
|
92573
|
92574
|
92752
|
92753
|
92754
|
92755
|
92756
|
92757
|
92758
|
92759
|
92760
|
92761
|
92762
|
92763
|
92764
|
92849
|
92850
|
92851
|
92852
|
92853
|
92854
|
92855
|
92856
|
92857
|
92858
|
92859
|
92860
|
92861
|
94483
|
94484
|
94485
|
94486
|
94487
|
94488
|
94489
|
94490
|
94491
|
94492
|
94493
|
94494
|
94495
|
96437
|
96438
|
96439
|
96440
|
96441
|
96442
|
96443
|
96444
|
96445
|
96446
|
96447
|
96448
|
96449
|
96450
|
96544
|
96545
|
96546
|
96547
|
96548
|
96549
|
96550
|
96551
|
96552
|
96553
|
96554
|
96555
|
96556
|
96557
|
96558
|
115202