$DBversion = "3.07.00.012";
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
- $dbh->do("INSERT INTO `systempreferences` (variable,value,options,explanation,type) VALUES ('AllowItemsOnHoldCheckout',0,'Do not generate RESERVE_WAITING and RESERVED warning when checking out items reserved to someone else. This allows self checkouts for those items.','','YesNo')");
+ $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES ('AllowItemsOnHoldCheckout',0,'Do not generate RESERVE_WAITING and RESERVED warning when checking out items reserved to someone else. This allows self checkouts for those items.','','YesNo')");
print "Upgrade to $DBversion add 'AllowItemsOnHoldCheckout' syspref \n";
SetVersion ($DBversion);
}
$DBversion = "3.07.00.025";
if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
- $dbh->do( q|DROP TABLE bibliocoverimage;| );
- $dbh->do(
- q|CREATE TABLE biblioimages (
- imagenumber int(11) NOT NULL AUTO_INCREMENT,
- biblionumber int(11) NOT NULL,
- mimetype varchar(15) NOT NULL,
- imagefile mediumblob NOT NULL,
- thumbnail mediumblob NOT NULL,
- PRIMARY KEY (imagenumber),
- CONSTRAINT bibliocoverimage_fk1 FOREIGN KEY (biblionumber) REFERENCES biblio (biblionumber) ON DELETE CASCADE ON UPDATE CASCADE
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;|
- );
- print "Upgrade to $DBversion done (Correct table name for local cover images [please disregard the following error messages: \"Unknown table 'bibliocoverimage'...\" and \"Table 'biblioimages' already exists...\"])\n";
+ if (TableExists('bibliocoverimage')) {
+ $dbh->do( q|DROP TABLE bibliocoverimage;| );
+ $dbh->do(
+ q|CREATE TABLE biblioimages (
+ imagenumber int(11) NOT NULL AUTO_INCREMENT,
+ biblionumber int(11) NOT NULL,
+ mimetype varchar(15) NOT NULL,
+ imagefile mediumblob NOT NULL,
+ thumbnail mediumblob NOT NULL,
+ PRIMARY KEY (imagenumber),
+ CONSTRAINT bibliocoverimage_fk1 FOREIGN KEY (biblionumber) REFERENCES biblio (biblionumber) ON DELETE CASCADE ON UPDATE CASCADE
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;|
+ );
+ }
+ print "Upgrade to $DBversion done (Correct table name for local cover images if needed. )\n";
SetVersion($DBversion);
}
$DBversion = "3.07.00.041";
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
$dbh->do("INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES('SubscriptionDuplicateDroppedInput','','','List of fields which must not be rewritten when a subscription is duplicated (Separated by pipe |)','Free')");
- print "Upgrade to $DBversion done (Add System Preferences SubscriptionDuplicateDroppedInput)\n";
+ print "Upgrade to $DBversion done (Add system preference SubscriptionDuplicateDroppedInput)\n";
SetVersion($DBversion);
}
$dbh->do("UPDATE systempreferences SET type='Free', value=\"$valueOPACXSLTDetailsDisplay\" WHERE variable='OPACXSLTDetailsDisplay'");
$dbh->do("UPDATE systempreferences SET type='Free', value=\"$valueOPACXSLTResultsDisplay\" WHERE variable='OPACXSLTResultsDisplay'");
}
- print "XSLT systempreference takes a path to file rather than YesNo\n";
+ print "Upgrade to $DBversion done (XSLT systempreference takes a path to file rather than YesNo)\n";
SetVersion($DBversion);
}
if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
$dbh->do("CREATE INDEX items_location ON items(location)");
$dbh->do("CREATE INDEX items_ccode ON items(ccode)");
- print "Upgrade to $DBversion done (items_location and items_ccode indexes added for ShelfBrowser)";
+ print "Upgrade to $DBversion done (items_location and items_ccode indexes added for ShelfBrowser)\n";
SetVersion($DBversion);
}
SetVersion($DBversion);
}
+$DBversion = "3.07.00.049";
+if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
+ $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacBrowseResults','1','Disable/enable browsing and paging search results from the OPAC detail page.',NULL,'YesNo')");
+ print "Upgrade to $DBversion done (Add system preference OpacBrowseResults ))\n";
+ SetVersion($DBversion);
+}
+
=head1 FUNCTIONS
+=head2 TableExists($table)
+
+=cut
+
+sub TableExists {
+ my $table = shift;
+ eval {
+ local $dbh->{PrintError} = 0;
+ local $dbh->{RaiseError} = 1;
+ $dbh->do(qq{SELECT * FROM $table WHERE 1 = 0 });
+ };
+ return 1 unless $@;
+ return 0;
+}
+
=head2 DropAllForeignKeys($table)
Drop all foreign keys of the table $table