Browse Source

Bug 13379: Extends authorised_values.category to varchar(32)

This patch does 2 things:
1/ It fixes a bug caused by the different data fields used for
authorised_values.category and
borrower_attribute_types.authorised_value_category (varchar(16) vs
varchar(10)).
To reproduce:
- Create a AV category with a length > 10
- Try to link a patron attribute type with this AV, it won't work.

2/ Extends this field to varchar(32): sometime 16 is not enough to
describe something

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
No koha-qa errors. Error reproduced, fixed by patch.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
3.20.x
Jonathan Druart 8 years ago
committed by Tomas Cohen Arazi
parent
commit
8ad2ea8715
  1. 6
      installer/data/mysql/kohastructure.sql
  2. 16
      installer/data/mysql/updatedatabase.pl
  3. 2
      koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt

6
installer/data/mysql/kohastructure.sql

@ -98,7 +98,7 @@ CREATE TABLE `auth_types` (
DROP TABLE IF EXISTS `authorised_values`;
CREATE TABLE `authorised_values` ( -- stores values for authorized values categories and values
`id` int(11) NOT NULL auto_increment, -- unique key, used to identify the authorized value
`category` varchar(16) NOT NULL default '', -- key used to identify the authorized value category
`category` varchar(32) NOT NULL default '', -- key used to identify the authorized value category
`authorised_value` varchar(80) NOT NULL default '', -- code use to identify the authorized value
`lib` varchar(200) default NULL, -- authorized value description as printed in the staff client
`lib_opac` varchar(200) default NULL, -- authorized value description as printed in the OPAC
@ -291,7 +291,7 @@ CREATE TABLE `borrower_attribute_types` ( -- definitions for custom patron field
`opac_display` tinyint(1) NOT NULL default 0, -- defines if this field is visible to patrons on their account in the OPAC (1 for yes, 0 for no)
`password_allowed` tinyint(1) NOT NULL default 0, -- defines if it is possible to associate a password with this custom field (1 for yes, 0 for no)
`staff_searchable` tinyint(1) NOT NULL default 0, -- defines if this field is searchable via the patron search in the staff client (1 for yes, 0 for no)
`authorised_value_category` varchar(10) default NULL, -- foreign key from authorised_values that links this custom field to an authorized value category
`authorised_value_category` varchar(32) default NULL, -- foreign key from authorised_values that links this custom field to an authorized value category
`display_checkout` tinyint(1) NOT NULL default 0,-- defines if this field displays in checkout screens
`category_code` VARCHAR(10) NULL DEFAULT NULL,-- defines a category for an attribute_type
`class` VARCHAR(255) NOT NULL DEFAULT '',-- defines a class for an attribute_type
@ -3495,7 +3495,7 @@ CREATE TABLE items_search_fields (
label VARCHAR(255) NOT NULL,
tagfield CHAR(3) NOT NULL,
tagsubfield CHAR(1) NULL DEFAULT NULL,
authorised_values_category VARCHAR(16) NULL DEFAULT NULL,
authorised_values_category VARCHAR(32) NULL DEFAULT NULL,
PRIMARY KEY(name),
CONSTRAINT items_search_fields_authorised_values_category
FOREIGN KEY (authorised_values_category) REFERENCES authorised_values (category)

16
installer/data/mysql/updatedatabase.pl

@ -9642,6 +9642,22 @@ if ( CheckVersion($DBversion) ) {
SetVersion ($DBversion);
}
$DBversion = "3.19.00.XXX";
if(CheckVersion($DBversion)) {
$dbh->do(q{
ALTER TABLE authorised_values MODIFY COLUMN category VARCHAR(32) NOT NULL DEFAULT ''
});
$dbh->do(q{
ALTER TABLE borrower_attribute_types MODIFY COLUMN authorised_value_category VARCHAR(32) DEFAULT NULL
});
print "Upgrade to $DBversion done (Bug 13379 - Modify authorised_values.category to varchar(32))\n";
SetVersion($DBversion);
}
=head1 FUNCTIONS
=head2 TableExists($table)

2
koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt

@ -77,7 +77,7 @@ $(document).ready(function() {
<fieldset class="rows"><ol>
<li>
[% IF ( action_add_category ) %]<label for="category">Category: </label>
<input type="text" name="category" id="category" size="16" maxlength="16" class="focus" />
<input type="text" name="category" id="category" size="32" maxlength="32" class="focus" />
[% ELSE %]<span class="label">Category</span>
<input type="hidden" name="category" value="[% category %]" /> [% category %]
[% END %]

Loading…
Cancel
Save