|);
my $check_numberpatterns_sth = $dbh->prepare(qq|
SELECT * FROM subscription_numberpatterns
- WHERE add1 = ? AND add2 = ? AND add3 = ?
- AND every1 = ? AND every2 = ? AND every3 = ?
- AND whenmorethan1 = ? AND whenmorethan2 = ? AND whenmorethan3 = ?
- AND setto1 = ? AND setto2 = ? AND setto3 = ?
- AND numberingmethod = ?
+ WHERE (add1 = ? OR (add1 IS NULL AND ? IS NULL)) AND (add2 = ? OR (add2 IS NULL AND ? IS NULL))
+ AND (add3 = ? OR (add3 IS NULL AND ? IS NULL)) AND (every1 = ? OR (every1 IS NULL AND ? IS NULL))
+ AND (every2 = ? OR (every2 IS NULL AND ? IS NULL)) AND (every3 = ? OR (every3 IS NULL AND ? IS NULL))
+ AND (whenmorethan1 = ? OR (whenmorethan1 IS NULL AND ? IS NULL)) AND (whenmorethan2 = ? OR (whenmorethan2 IS NULL AND ? IS NULL))
+ AND (whenmorethan3 = ? OR (whenmorethan3 IS NULL AND ? IS NULL)) AND (setto1 = ? OR (setto1 IS NULL AND ? IS NULL))
+ AND (setto2 = ? OR (setto2 IS NULL AND ? IS NULL)) AND (setto3 = ? OR (setto3 IS NULL AND ? IS NULL))
+ AND (numberingmethod = ? OR (numberingmethod IS NULL AND ? IS NULL))
LIMIT 1
|);
my $update_subscription_sth = $dbh->prepare(qq|
my $i = 1;
while(my $sub = $sth->fetchrow_hashref) {
$check_numberpatterns_sth->execute(
- $sub->{add1}, $sub->{add2}, $sub->{add3},
- $sub->{every1}, $sub->{every2}, $sub->{every3},
- $sub->{whenmorethan1}, $sub->{whenmorethan2}, $sub->{whenmorethan3},
- $sub->{setto1}, $sub->{setto2}, $sub->{setto3},
- $sub->{numberingmethod}
+ $sub->{add1}, $sub->{add1}, $sub->{add2}, $sub->{add2}, $sub->{add3}, $sub->{add3},
+ $sub->{every1}, $sub->{every1}, $sub->{every2}, $sub->{every2}, $sub->{every3}, $sub->{every3},
+ $sub->{whenmorethan1}, $sub->{whenmorethan1}, $sub->{whenmorethan2}, $sub->{whenmorethan2},
+ $sub->{whenmorethan3}, $sub->{whenmorethan3}, $sub->{setto1}, $sub->{setto1}, $sub->{setto2},
+ $sub->{setto2}, $sub->{setto3}, $sub->{setto3}, $sub->{numberingmethod}, $sub->{numberingmethod}
);
my $p = $check_numberpatterns_sth->fetchrow_hashref;
if (defined $p) {
SetVersion($DBversion);
}
+$DBversion = "3.15.00.048";
+if ( CheckVersion($DBversion) ) {
+ $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('OpacSuppressionRedirect','1','Redirect the opac detail page for suppressed records to an explanatory page (otherwise redirect to 404 error page)','','YesNo')");
+ $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('OpacSuppressionMessage', '','Display this message on the redirect page for suppressed biblios','70|10','Textarea')");
+ print "Upgrade to $DBversion done (Bug 10195: Records hidden with OpacSuppression can still be accessed)\n";
+ SetVersion($DBversion);
+}
+
+$DBversion = "3.15.00.049";
+if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
+ $dbh->do("ALTER TABLE biblioitems DROP INDEX isbn");
+ $dbh->do("ALTER TABLE biblioitems DROP INDEX issn");
+ $dbh->do("ALTER TABLE biblioitems
+ CHANGE isbn isbn MEDIUMTEXT NULL DEFAULT NULL,
+ CHANGE issn issn MEDIUMTEXT NULL DEFAULT NULL
+ ");
+ $dbh->do("ALTER TABLE biblioitems
+ ADD INDEX isbn ( isbn ( 255 ) ),
+ ADD INDEX issn ( issn ( 255 ) )
+ ");
+
+ $dbh->do("ALTER TABLE deletedbiblioitems DROP INDEX isbn");
+ $dbh->do("ALTER TABLE deletedbiblioitems
+ CHANGE isbn isbn MEDIUMTEXT NULL DEFAULT NULL,
+ CHANGE issn issn MEDIUMTEXT NULL DEFAULT NULL
+ ");
+ $dbh->do("ALTER TABLE deletedbiblioitems
+ ADD INDEX isbn ( isbn ( 255 ) )
+ ");
+
+ print "Upgrade to $DBversion done (Bug 11268 - Biblioitems URL field is too small for some URLs)\n";
+ SetVersion($DBversion);
+}
+
+$DBversion = "3.15.00.XXX";
+if ( CheckVersion($DBversion) ) {
+ $dbh->do("
+ INSERT INTO systempreferences (
+ variable,
+ value,
+ explanation,
+ type
+ ) VALUES (
+ 'AggressiveMatchOnISBN',
+ '0',
+ 'If enabled, attempt to match aggressively by trying all variations of the ISBNs in the imported record as a phrase in the ISBN fields of already cataloged records when matching on ISBN with the record import tool',
+ 'YesNo'
+ )
+ ");
+
+ print "Upgrade to $DBversion done (Bug 10500 - Improve isbn matching when importing records)\n";
+ SetVersion($DBversion);
+}
+
=head1 FUNCTIONS
=head2 TableExists($table)