diff --git a/admin/systempreferences.pl b/admin/systempreferences.pl index decbd77270..b25b55ee8d 100755 --- a/admin/systempreferences.pl +++ b/admin/systempreferences.pl @@ -175,6 +175,7 @@ my %tabsysprefs; $tabsysprefs{NotifyBorrowerDeparture}="Patrons"; $tabsysprefs{AddPatronLists}="Patrons"; $tabsysprefs{PatronsPerPage}="Patrons"; + $tabsysprefs{ExtendedPatronAttributes}="Patrons"; # I18N/L10N $tabsysprefs{dateformat}="I18N/L10N"; diff --git a/installer/data/mysql/en/mandatory/sysprefs.sql b/installer/data/mysql/en/mandatory/sysprefs.sql index 64c7582895..ab7f551e9a 100644 --- a/installer/data/mysql/en/mandatory/sysprefs.sql +++ b/installer/data/mysql/en/mandatory/sysprefs.sql @@ -183,3 +183,4 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('GranularPermissions','0','Use detailed staff user permissions',NULL,'YesNo'); INSERT INTO `systempreferences` (variable, value,options,type, explanation) VALUES ('AddPatronLists','categorycode','categorycode|category_type','Choice','Allow user to choose what list to pick up from when adding patrons'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ExtendedPatronAttributes','0','Use extended patron IDs and attributes',NULL,'YesNo'); diff --git a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql index bf5eb5b152..ee843b6007 100644 --- a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql +++ b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql @@ -185,3 +185,4 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OPACItemHolds','1','Si activé, les adhérents peuvent placer des réservations sur un exemplaire spécifique. Sinon, il ne peuvent que réserver le prochain disponible.','','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('GranularPermissions','0','Use detailed staff user permissions',NULL,'YesNo'); INSERT INTO `systempreferences` (variable, value,options,type, explanation) VALUES ('AddPatronLists','categorycode','categorycode|category_type','Choice','Slectionner categorycode ou category_type permet d\'afficher la liste des catégories ou des types de catégories à l\'ajout d\'un lecteur'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ExtendedPatronAttributes','0','Use extended patron IDs and attributes',NULL,'YesNo'); diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index f0130c54b7..2a4ea30b15 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -494,6 +494,41 @@ CREATE TABLE `borrowers` ( CONSTRAINT `borrowers_ibfk_2` FOREIGN KEY (`branchcode`) REFERENCES `branches` (`branchcode`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +-- +-- Table structure for table `borrower_attribute_types` +-- + +DROP TABLE IF EXISTS `borrower_attribute_types`; +CREATE TABLE `borrower_attribute_types` ( + `code` varchar(10) NOT NULL, + `description` varchar(255) NOT NULL, + `repeatable` tinyint(1) NOT NULL default 0, + `unique_id` tinyint(1) NOT NULL default 0, + `opac_display` tinyint(1) NOT NULL default 0, + `password_allowed` tinyint(1) NOT NULL default 0, + `staff_searchable` tinyint(1) NOT NULL default 0, + `authorised_value_category` varchar(10) default NULL, + PRIMARY KEY (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Table structure for table `borrower_attributes` +-- + +DROP TABLE IF EXISTS `borrower_attributes`; +CREATE TABLE `borrower_attributes` ( + `borrowernumber` int(11) NOT NULL, + `code` varchar(10) NOT NULL, + `attribute` varchar(30) default NULL, + `password` varchar(30) default NULL, + KEY `borrowernumber` (`borrowernumber`), + KEY `code_attribute` (`code`, `attribute`), + CONSTRAINT `borrower_attributes_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) + ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `borrower_attributes_ibfk_2` FOREIGN KEY (`code`) REFERENCES `borrower_attribute_types` (`code`) + ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + -- -- Table structure for table `branchcategories` -- diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index 28be9a2965..a54961e1e5 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -1512,6 +1512,38 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) { SetVersion ($DBversion); } + + +$DBversion = "3.00.00.081"; +if (C4::Context->preference("Version") < TransformToNum($DBversion)) { + $dbh->do("CREATE TABLE `borrower_attribute_types` ( + `code` varchar(10) NOT NULL, + `description` varchar(255) NOT NULL, + `repeatable` tinyint(1) NOT NULL default 0, + `unique_id` tinyint(1) NOT NULL default 0, + `opac_display` tinyint(1) NOT NULL default 0, + `password_allowed` tinyint(1) NOT NULL default 0, + `staff_searchable` tinyint(1) NOT NULL default 0, + `authorised_value_category` varchar(10) default NULL, + PRIMARY KEY (`code`) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8"); + $dbh->do("CREATE TABLE `borrower_attributes` ( + `borrowernumber` int(11) NOT NULL, + `code` varchar(10) NOT NULL, + `attribute` varchar(30) default NULL, + `password` varchar(30) default NULL, + KEY `borrowernumber` (`borrowernumber`), + KEY `code_attribute` (`code`, `attribute`), + CONSTRAINT `borrower_attributes_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) + ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `borrower_attributes_ibfk_2` FOREIGN KEY (`code`) REFERENCES `borrower_attribute_types` (`code`) + ON DELETE CASCADE ON UPDATE CASCADE + ) ENGINE=InnoDB DEFAULT CHARSET=utf8"); + $dbh->do("INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('ExtendedPatronAttributes','0','Use extended patron IDs and attributes',NULL,'YesNo')"); + print "Upgrade to $DBversion done (added borrower_attributes and borrower_attribute_types)\n"; + SetVersion ($DBversion); +} + =item DropAllForeignKeys($table) Drop all foreign keys of the table $table diff --git a/kohaversion.pl b/kohaversion.pl index 2d83d26327..a0100a1f13 100644 --- a/kohaversion.pl +++ b/kohaversion.pl @@ -10,7 +10,7 @@ use strict; sub kohaversion { - our $VERSION = "3.00.00.080"; + our $VERSION = "3.00.00.081"; # version needs to be set this way # so that it can be picked up by Makefile.PL # during install