@@ -, +, @@ --- ...itelist_fields_for_borrowers_tags_comments.perl | 30 ++++++++++++++++++++++ installer/data/mysql/kohastructure.sql | 8 ++++++ 2 files changed, 38 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_9447_-_add_blacklist_and_whitelist_fields_for_borrowers_tags_comments.perl --- a/installer/data/mysql/atomicupdate/bug_9447_-_add_blacklist_and_whitelist_fields_for_borrowers_tags_comments.perl +++ a/installer/data/mysql/atomicupdate/bug_9447_-_add_blacklist_and_whitelist_fields_for_borrowers_tags_comments.perl @@ -0,0 +1,30 @@ +$DBversion = 'XXX'; +if( CheckVersion( $DBversion ) ) { + unless( column_exists( 'borrowers', 'tags_whitelist' ) ) { + $dbh->do(q|ALTER TABLE borrowers ADD tags_whitelist TINYINT(1) default 0 NOT NULL AFTER overdrive_auth_token|); + } + unless( column_exists( 'borrowers', 'comments_whitelist' ) ) { + $dbh->do(q|ALTER TABLE borrowers ADD comments_whitelist TINYINT(1) default 0 NOT NULL AFTER tags_whitelist|); + } + unless( column_exists( 'borrowers', 'tags_blacklist' ) ) { + $dbh->do(q|ALTER TABLE borrowers ADD tags_blacklist TINYINT(1) default 0 NOT NULL AFTER comments_whitelist|); + } + unless( column_exists( 'borrowers', 'comments_blacklist' ) ) { + $dbh->do(q|ALTER TABLE borrowers ADD comments_blacklist TINYINT(1) default 0 NOT NULL AFTER tags_blacklist|); + } + unless( column_exists( 'deletedborrowers', 'tags_whitelist' ) ) { + $dbh->do(q|ALTER TABLE deletedborrowers ADD tags_whitelist TINYINT(1) default 0 NOT NULL AFTER overdrive_auth_token|); + } + unless( column_exists( 'deletedborrowers', 'comments_whitelist' ) ) { + $dbh->do(q|ALTER TABLE deletedborrowers ADD comments_whitelist TINYINT(1) default 0 NOT NULL AFTER tags_whitelist|); + } + unless( column_exists( 'deletedborrowers', 'tags_blacklist' ) ) { + $dbh->do(q|ALTER TABLE deletedborrowers ADD tags_blacklist TINYINT(1) default 0 NOT NULL AFTER comments_whitelist|); + } + unless( column_exists( 'deletedborrowers', 'comments_blacklist' ) ) { + $dbh->do(q|ALTER TABLE deletedborrowers ADD comments_blacklist TINYINT(1) default 0 NOT NULL AFTER tags_blacklist|); + } + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 9447: Add columns borrowers.tags_whitelist, borrowers.comments_whitelist, borrowers.tags_blacklist, borrowers.comments_blacklist, deletedborrowers.tags_whitelist, deletedborrowers.comments_whitelist, deletedborrowers.tags_blacklist, and deletedborrowers.comments_blacklist)\n"; +} --- a/installer/data/mysql/kohastructure.sql +++ a/installer/data/mysql/kohastructure.sql @@ -642,6 +642,10 @@ CREATE TABLE `deletedborrowers` ( -- stores data related to the patrons/borrower `lang` varchar(25) NOT NULL default 'default', -- lang to use to send notices to this patron `login_attempts` int(4) default 0, -- number of failed login attemps `overdrive_auth_token` MEDIUMTEXT default NULL, -- persist OverDrive auth token + `tags_whitelist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower can submit tags without requiring approval + `comments_whitelist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower can submit comments without requiring approval + `tags_blacklist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower is blocked from submitting tags + `comments_blacklist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower is blocked from submitting comments KEY borrowernumber (borrowernumber), KEY `cardnumber` (`cardnumber`), KEY `sms_provider_id` (`sms_provider_id`) @@ -1675,6 +1679,10 @@ CREATE TABLE `borrowers` ( -- this table includes information about your patrons `lang` varchar(25) NOT NULL default 'default', -- lang to use to send notices to this patron `login_attempts` int(4) default 0, -- number of failed login attemps `overdrive_auth_token` MEDIUMTEXT default NULL, -- persist OverDrive auth token + `tags_whitelist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower can submit tags without requiring approval + `comments_whitelist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower can submit comments without requiring approval + `tags_blacklist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower is blocked from submitting tags + `comments_blacklist` TINYINT(1) DEFAULT 0 NOT NULL, -- borrower is blocked from submitting comments UNIQUE KEY `cardnumber` (`cardnumber`), PRIMARY KEY `borrowernumber` (`borrowernumber`), KEY `categorycode` (`categorycode`), --