$DBversion = '18.06.00.005';
if( CheckVersion( $DBversion ) ) {
- unless ( column_exists('aqorders', 'created') ) {
+ unless ( column_exists('aqorders', 'created_by') ) {
$dbh->do( "ALTER TABLE aqorders ADD COLUMN created_by int(11) NULL DEFAULT NULL AFTER quantityreceived;" );
unless ( foreign_key_exists('aqorders', 'aqorders_created_by') ) {
$dbh->do( "ALTER TABLE aqorders ADD CONSTRAINT aqorders_created_by FOREIGN KEY (created_by) REFERENCES borrowers (borrowernumber) ON DELETE SET NULL ON UPDATE CASCADE;" );
print "Upgrade to $DBversion done (Bug 11911 - Add separate permission for managing suggestions)\n";
}
+$DBversion = '18.06.00.013';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ INSERT IGNORE INTO `account_offset_types` (`type`) VALUES ('Credit Applied');
+ });
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20997 - Add Koha::Account::Line::apply)\n";
+}
+
+$DBversion = '18.06.00.014';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ INSERT IGNORE INTO systempreferences (variable, value, options, explanation) VALUES ('HidePersonalPatronDetailOnCirculation', 0, 'YesNo', 'Hide patrons phone number, email address, street address and city in the circulation page');
+ });
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21121 - New syspref to allow hiding of private patron data in circulation page)\n";
+}
+
+$DBversion = '18.06.00.015';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{DELETE FROM systempreferences where variable="OCLCAffiliateID";});
+ $dbh->do(q{DELETE FROM systempreferences where variable="XISBN";});
+ $dbh->do(q{DELETE FROM systempreferences where variable="XISBNDailyLimit";});
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21226 - Remove prefs OCLCAffiliateID, XISBN and XISBNDailyLimit)\n";
+}
+
+$DBversion = '18.06.00.016';
+if( CheckVersion( $DBversion ) ) {
+ my $dtf = Koha::Database->new->schema->storage->datetime_parser;
+ my $days = C4::Context->preference('MaxPickupDelay') || 7;
+ my $date = DateTime->now()->add( days => $days );
+ my $sql = q|UPDATE reserves SET expirationdate = ? WHERE expirationdate IS NULL AND waitingdate IS NOT NULL|;
+ $dbh->do( $sql, undef, $dtf->format_datetime($date) );
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20773 - expirationdate filled for waiting holds)\n";
+}
+
+$DBversion = '18.06.00.017';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q|INSERT IGNORE INTO authorised_value_categories (category_name) VALUES ('ROADTYPE');|);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21144: Add ROADTYPE to default authorised values categories)\n";
+}
+
+$DBversion = '18.06.00.018';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do( q|
+UPDATE items LEFT JOIN issues USING (itemnumber)
+SET items.onloan = NULL
+WHERE issues.itemnumber IS NULL
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20487: Clear items.onloan for unissued items)\n";
+}
+
+$DBversion = '18.06.00.019';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do( q|
+INSERT IGNORE INTO columns_settings (module, page, tablename, columnname, cannot_be_toggled, is_hidden) VALUES
+("circ", "circulation", "issues-table", "collection", 0, 1),
+("members", "moremember", "issues-table", "collection", 0, 1);
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 19719: Default to hiding collection code column)\n";
+}
+
+$DBversion = '18.06.00.020';
+if( CheckVersion( $DBversion ) ) {
+ if( !column_exists( 'branch_borrower_circ_rules', 'max_holds' ) ) {
+ $dbh->do(q{
+ ALTER TABLE branch_borrower_circ_rules ADD COLUMN max_holds INT(4) NULL DEFAULT NULL AFTER maxonsiteissueqty
+ });
+ }
+ if( !column_exists( 'default_borrower_circ_rules', 'max_holds' ) ) {
+ $dbh->do(q{
+ ALTER TABLE default_borrower_circ_rules ADD COLUMN max_holds INT(4) NULL DEFAULT NULL AFTER maxonsiteissueqty
+ });
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 15524 - Set limit on maximum possible holds per patron by category)\n";
+}
+
+$DBversion = '18.06.00.021';
+if( CheckVersion( $DBversion ) ) {
+ my $dbh = C4::Context->dbh;
+ unless ( C4::Context->preference('NorwegianPatronDBEnable') ) {
+ $dbh->do(q|
+ DELETE FROM systempreferences
+ WHERE variable IN ('NorwegianPatronDBEnable', 'NorwegianPatronDBEndpoint', 'NorwegianPatronDBUsername', 'NorwegianPatronDBPassword', 'NorwegianPatronDBSearchNLAfterLocalHit')
+ |);
+ if ( TableExists('borrower_sync') ) {
+ $dbh->do(q|DROP TABLE borrower_sync|);
+ }
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21068 - Remove system preferences NorwegianPatronDB*)\n";
+}
+
+$DBversion = '18.06.00.022';
+if( CheckVersion( $DBversion ) ) {
+ my $dbh = C4::Context->dbh;
+ $dbh->do(q|
+ INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES
+ ('HoldsAutoFill','0',NULL,'If on, librarian will not be asked if hold should be filled, it will be filled automatically','YesNo'),
+ ('HoldsAutoFillPrintSlip','0',NULL,'If on, hold slip print dialog will be displayed automatically','YesNo')
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 19383 - Add ability to print hold receipts automatically)\n";
+}
+
+$DBversion = '18.06.00.023';
+if( CheckVersion( $DBversion ) ) {
+ if( !column_exists( 'aqorders', 'replacementprice' ) ){
+ $dbh->do( "ALTER TABLE aqorders ADD COLUMN replacementprice DECIMAL(28,6)" );
+ $dbh->do( "UPDATE aqorders set replacementprice = rrp WHERE replacementprice IS NULL" );
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 18639 - Add replacementprice field to aqorders table)\n";
+}
+
+$DBversion = '18.06.00.024';
+if( CheckVersion( $DBversion ) ) {
+ if( !column_exists( 'branches', 'pickup_location' ) ){
+ $dbh->do( "ALTER TABLE branches ADD COLUMN pickup_location TINYINT(1) not null default 1" );
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 7534 - Let libraries have configuration for pickup locations)\n";
+}
+
+$DBversion = '18.06.00.025';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES
+ ('KohaManualBaseURL','https://koha-community.org/manual/','','Where is the Koha manual/documentation located?','Free'),
+ ('KohaManualLanguage','en','en|ar|cs|es|de|fr|it|pt_BR|tr|zh_TW','What is the language of the online manual you want to use?','Choice')
+ });
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 19817: Add pref KohaManualLanguage and KohaManualBaseURL)\n";
+}
+
+$DBversion = '18.06.00.026';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q|
+INSERT IGNORE INTO systempreferences (variable, value, options, explanation, type) VALUES ('ArticleRequestsLinkControl', 'always', 'always\|calc', 'Control display of article request link on search results', 'Choice')
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 17530 - Add pref ArticleRequestsLinkControl)\n";
+}
+
+$DBversion = '18.06.00.027';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do( "DROP TABLE IF EXISTS services_throttle" );
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21235: Remove table services_throttle)\n";
+}
+
+$DBversion = '18.06.00.028';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES
+('HoldsSplitQueue','nothing','nothing|branch|itemtype|branch_itemtype','In the staff client, split the holds view by the given criteria','Choice'),
+('HoldsSplitQueueNumbering', 'actual', 'actual|virtual', 'If the holds queue is split, decide if the acual priorities should be displayed', 'Choice');
+});
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 19469 - Add ability to split view of holds view on record by pickup library and/or itemtype)\n";
+}
+
+$DBversion = '18.06.00.029';
+if( CheckVersion( $DBversion ) ) {
+ unless ( index_exists( 'subscription', 'by_biblionumber' ) ) {
+ $dbh->do(q{
+ CREATE INDEX `by_biblionumber` ON `subscription` (`biblionumber`)
+ });
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21288: Slowness in acquisition caused by GetInvoices\n";
+}
+
+$DBversion = '18.06.00.030';
+if( CheckVersion( $DBversion ) ) {
+ if ( column_exists( 'accountlines', 'dispute' ) ) {
+ $dbh->do(q{
+ ALTER TABLE `accountlines`
+ DROP COLUMN `dispute`
+ });
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20777 - Remove unused field accountlines.dispute)\n";
+}
+
+$DBversion = '18.06.00.031';
+if( CheckVersion( $DBversion ) ) {
+ # Add table and add column
+ unless (TableExists('patron_consent')) {
+ $dbh->do(q|
+ CREATE TABLE patron_consent (id int AUTO_INCREMENT, borrowernumber int NOT NULL, type enum('GDPR_PROCESSING' ), given_on datetime, refused_on datetime, PRIMARY KEY (id), FOREIGN KEY (borrowernumber) REFERENCES borrowers (borrowernumber) ON DELETE CASCADE ON UPDATE CASCADE )
+ |);
+ }
+ unless ( column_exists( 'borrower_modifications', 'gdpr_proc_consent' ) ) {
+ $dbh->do(q|
+ ALTER TABLE borrower_modifications ADD COLUMN gdpr_proc_consent datetime
+ |);
+ }
+ # Add two sysprefs too
+ $dbh->do(q|
+INSERT IGNORE INTO systempreferences ( variable, value, options, explanation, type ) VALUES ('PrivacyPolicyURL','',NULL,'This URL is used in messages about GDPR consents.', 'Free')
+ |);
+ $dbh->do(q|
+INSERT IGNORE INTO systempreferences ( variable, value, options, explanation, type ) VALUES ('GDPR_Policy','','Enforced\|Permissive\|Disabled','General Data Protection Regulation - policy', 'Choice')
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20819: Add patron_consent)\n";
+}
+
+$DBversion = '18.06.00.032';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q|ALTER TABLE items CHANGE COLUMN ccode ccode varchar(80) default NULL|);
+ $dbh->do(q|ALTER TABLE deleteditems CHANGE COLUMN ccode ccode varchar(80) default NULL|);
+ $dbh->do(q|ALTER TABLE branch_transfer_limits CHANGE COLUMN ccode ccode varchar(80) default NULL|);
+ $dbh->do(q|ALTER TABLE course_items CHANGE COLUMN ccode ccode varchar(80) default NULL|);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 5458: length of items.ccode disagrees with authorised_values.authorised_value)\n";
+}
+
+$DBversion = '18.06.00.033';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q|
+ INSERT IGNORE INTO systempreferences (variable,value,options,explanation,type) VALUES ('AdditionalFieldsInZ3950ResultSearch', '', 'NULL', 'Determines which MARC field/subfields are displayed in -Additional field- column in the result of a search Z3950', 'Free')
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 12747 - Add AdditionalFieldsInZ3950ResultSearch system preference)\n";
+}
+
+$DBversion = '18.06.00.034';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q|
+ INSERT IGNORE INTO systempreferences (variable,value,options,explanation,type)
+ VALUES ('RecordedBooksClientSecret','','30','Client key for RecordedBooks integration','YesNo'),
+ ('RecordedBooksLibraryID','','','Library ID for RecordedBooks integration','Integer'),
+ ('RecordedBooksDomain','','','RecordedBooks domain','Free');
+ |);
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 17602 - Integrate support for OneClickdigital/Recorded Books API)\n";
+}
+
+$DBversion = '18.06.00.035';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ UPDATE `systempreferences` SET options = 'US|CA|DE|FR|IN|JP|UK' WHERE variable = 'AmazonLocale' AND options='US|CA|DE|FR|JP|UK';
+ });
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21403 - Add Indian Amazon Affiliate option to AmazonLocale setting)\n";
+}
+
+
+$DBversion = '18.06.00.036';
+if( CheckVersion( $DBversion ) ) {
+ unless (TableExists('circulation_rules')){
+ $dbh->do(q{
+ CREATE TABLE `circulation_rules` (
+ `id` int(11) NOT NULL auto_increment,
+ `branchcode` varchar(10) NULL default NULL,
+ `categorycode` varchar(10) NULL default NULL,
+ `itemtype` varchar(10) NULL default NULL,
+ `rule_name` varchar(32) NOT NULL,
+ `rule_value` varchar(32) NOT NULL,
+ PRIMARY KEY (`id`),
+ CONSTRAINT `circ_rules_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `circ_rules_ibfk_2` FOREIGN KEY (`categorycode`) REFERENCES `categories` (`categorycode`) ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `circ_rules_ibfk_3` FOREIGN KEY (`itemtype`) REFERENCES `itemtypes` (`itemtype`) ON DELETE CASCADE ON UPDATE CASCADE,
+ KEY `rule_name` (`rule_name`),
+ UNIQUE (`branchcode`,`categorycode`,`itemtype`,`rule_name`)
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+ });
+ }
+ if (column_exists('branch_borrower_circ_rules', 'max_holds') ){
+ $dbh->do(q{
+ INSERT IGNORE INTO circulation_rules ( branchcode, categorycode, itemtype, rule_name, rule_value )
+ SELECT branchcode, categorycode, NULL, 'max_holds', COALESCE( max_holds, '' ) FROM branch_borrower_circ_rules
+ });
+ $dbh->do(q{
+ ALTER TABLE branch_borrower_circ_rules DROP COLUMN max_holds
+ });
+ }
+ if (column_exists('default_borrower_circ_rules', 'max_holds') ){
+ $dbh->do(q{
+ INSERT IGNORE INTO circulation_rules ( branchcode, categorycode, itemtype, rule_name, rule_value )
+ SELECT NULL, categorycode, NULL, 'max_holds', COALESCE( max_holds, '' ) FROM default_borrower_circ_rules
+ });
+ $dbh->do(q{
+ ALTER TABLE default_borrower_circ_rules DROP COLUMN max_holds
+ });
+ }
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 18887 - Introduce new table 'circulation_rules', use for 'max_holds' rules)\n";
+}
+
+$DBversion = '18.06.00.037';
+if( CheckVersion( $DBversion ) ) {
+ unless (TableExists('branches_overdrive')){
+ $dbh->do( q|
+ CREATE TABLE IF NOT EXISTS branches_overdrive (
+ `branchcode` VARCHAR( 10 ) NOT NULL ,
+ `authname` VARCHAR( 255 ) NOT NULL ,
+ PRIMARY KEY (`branchcode`) ,
+ CONSTRAINT `branches_overdrive_ibfk_1` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ON DELETE CASCADE ON UPDATE CASCADE
+ ) ENGINE = INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci |
+ );
+ }
+ $dbh->do("INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES ('OverDriveAuthname', '', 'Authname for OverDrive Patron Authentication, will be used as fallback if individual branch authname not set', NULL, 'Free');");
+ $dbh->do("INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES ('OverDriveWebsiteID','', 'WebsiteID provided by OverDrive', NULL, 'Free');");
+ $dbh->do("INSERT IGNORE INTO systempreferences (variable,value,explanation,options,type) VALUES ('OverDrivePasswordRequired','', 'Does the library require passwords for OverDrive SIP authentication', NULL, 'YesNo');");
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21082 - Add overdrive patron auth method)\n";
+}
+
+$DBversion = '18.06.00.038';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do( "ALTER TABLE edifact_ean MODIFY branchcode VARCHAR(10) NULL DEFAULT NULL" );
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21417 - EDI ordering fails when basket and EAN libraries do not match)\n";
+}
+
+$DBversion = '18.06.00.039';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ INSERT IGNORE INTO `permissions` (module_bit, code, description) VALUES(3, 'manage_circ_rules_from_any_libraries', 'Manage circ rules for any libraries');
+ });
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 15520 - Add more granular permission for only editing own library's circ rules)\n";
+}
+
+$DBversion = '18.06.00.040';
+if( CheckVersion( $DBversion ) ) {
+ # Stock Rotation Rotas
+ unless (TableExists('stockrotationrotas')){
+ $dbh->do(q{
+ CREATE TABLE `stockrotationrotas` (
+ `rota_id` int(11) auto_increment, -- Stockrotation rota ID
+ `title` varchar(100) NOT NULL, -- Title for this rota
+ `description` text NOT NULL default '', -- Description for this rota
+ `cyclical` tinyint(1) NOT NULL default 0, -- Should items on this rota keep cycling?
+ `active` tinyint(1) NOT NULL default 0, -- Is this rota currently active?
+ PRIMARY KEY (`rota_id`),
+ CONSTRAINT `stockrotationrotas_title`
+ UNIQUE (`title`)
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+ });
+ }
+ # Stock Rotation Stages
+ unless (TableExists('stockrotationstages')){
+ $dbh->do(q{
+ CREATE TABLE `stockrotationstages` (
+ `stage_id` int(11) auto_increment, -- Unique stage ID
+ `position` int(11) NOT NULL, -- The position of this stage within its rota
+ `rota_id` int(11) NOT NULL, -- The rota this stage belongs to
+ `branchcode_id` varchar(10) NOT NULL, -- Branch this stage relates to
+ `duration` int(11) NOT NULL default 4, -- The number of days items shoud occupy this stage
+ PRIMARY KEY (`stage_id`),
+ CONSTRAINT `stockrotationstages_rifk`
+ FOREIGN KEY (`rota_id`)
+ REFERENCES `stockrotationrotas` (`rota_id`)
+ ON UPDATE CASCADE ON DELETE CASCADE,
+ CONSTRAINT `stockrotationstages_bifk`
+ FOREIGN KEY (`branchcode_id`)
+ REFERENCES `branches` (`branchcode`)
+ ON UPDATE CASCADE ON DELETE CASCADE
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+ });
+ }
+ # Stock Rotation Items
+ unless (TableExists('stockrotationitems')){
+ $dbh->do(q{
+ CREATE TABLE `stockrotationitems` (
+ `itemnumber_id` int(11) NOT NULL, -- Itemnumber to link to a stage & rota
+ `stage_id` int(11) NOT NULL, -- stage ID to link the item to
+ `indemand` tinyint(1) NOT NULL default 0, -- Should this item be skipped for rotation?
+ `fresh` tinyint(1) NOT NULL default 0, -- Flag showing item is only just added to rota
+ PRIMARY KEY (itemnumber_id),
+ CONSTRAINT `stockrotationitems_iifk`
+ FOREIGN KEY (`itemnumber_id`)
+ REFERENCES `items` (`itemnumber`)
+ ON UPDATE CASCADE ON DELETE CASCADE,
+ CONSTRAINT `stockrotationitems_sifk`
+ FOREIGN KEY (`stage_id`)
+ REFERENCES `stockrotationstages` (`stage_id`)
+ ON UPDATE CASCADE ON DELETE CASCADE
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+ });
+ }
+ # System preferences
+ $dbh->do(q{
+ INSERT IGNORE INTO `systempreferences` (`variable`,`value`,`explanation`,`options`,`type`)
+ VALUES ('StockRotation','0','If ON, enables the stock rotation module','','YesNo'),
+ ('RotationPreventTransfers','0','If ON, prevent any transfers for items on stock rotation rotas, except for stock rotation transfers','','YesNo');
+ });
+ # Permissions
+ $dbh->do(q{
+ INSERT IGNORE INTO `userflags` (`bit`, `flag`, `flagdesc`, `defaulton`)
+ VALUES (24, 'stockrotation', 'Manage stockrotation operations', 0);
+ });
+ $dbh->do(q{
+ INSERT IGNORE INTO `permissions` (`module_bit`, `code`, `description`)
+ VALUES (24, 'manage_rotas', 'Create, edit and delete rotas'),
+ (24, 'manage_rota_items', 'Add and remove items from rotas');
+ });
+ # Notices
+ $dbh->do(q{
+ INSERT IGNORE INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`)
+ VALUES ('circulation', 'SR_SLIP', '', 'Stock Rotation Slip', 0, 'Stockrotation Report', 'Stockrotation report for [% branch.name %]:\r\n\r\n[% IF branch.items.size %][% branch.items.size %] items to be processed for this branch.\r\n[% ELSE %]No items to be processed for this branch\r\n[% END %][% FOREACH item IN branch.items %][% IF item.reason ne \'in-demand\' %]Title: [% item.title %]\r\nAuthor: [% item.author %]\r\nCallnumber: [% item.callnumber %]\r\nLocation: [% item.location %]\r\nBarcode: [% item.barcode %]\r\nOn loan?: [% item.onloan %]\r\nStatus: [% item.reason %]\r\nCurrent Library: [% item.branch.branchname %] [% item.branch.branchcode %]\r\n\r\n[% END %][% END %]', 'email');
+ });
+ print "Upgrade to $DBversion done (Bug 11897 - Add Stock Rotation Feature)\n";
+ SetVersion( $DBversion );
+}
+
+$DBversion = '18.06.00.041';
+if( CheckVersion( $DBversion ) ) {
+
+ if( !column_exists( 'illrequests', 'price_paid' ) ) {
+ $dbh->do(q{
+ ALTER TABLE illrequests
+ ADD COLUMN price_paid varchar(20) DEFAULT NULL
+ AFTER cost
+ });
+ }
+
+ if( !column_exists( 'illrequestattributes', 'readonly' ) ) {
+ $dbh->do(q{
+ ALTER TABLE illrequestattributes
+ ADD COLUMN readonly tinyint(1) NOT NULL DEFAULT 1
+ AFTER value
+ });
+ $dbh->do(q{
+ UPDATE illrequestattributes SET readonly = 1
+ });
+ }
+
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 20772 - Add illrequestattributes.readonly and illrequest.price_paid columns)\n";
+}
+
+$DBversion = '18.06.00.042';
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do( "alter table statistics change column ccode ccode varchar(80) default NULL" );
+
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 21617: Make statistics.ccode longer)\n";
+}
+
# SEE bug 13068
# if there is anything in the atomicupdate, read and execute it.