Update 3.0 to 3.2 budgets
[koha_fer] / installer / data / mysql / updatedatabase.pl
index 7ea266e..68e7cbc 100755 (executable)
@@ -2874,6 +2874,8 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
 
 $DBversion = '3.01.00.077';
 if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+
+    $dbh->do("SET FOREIGN_KEY_CHECKS=0 ");
     $dbh->do("DROP TABLE IF EXISTS `aqbudgetperiods` ");
     $dbh->do(qq|
                     CREATE TABLE `aqbudgetperiods` (
@@ -2890,7 +2892,7 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
 
    $dbh->do(<<ADDPERIODS);
 INSERT INTO aqbudgetperiods (budget_period_startdate,budget_period_enddate,budget_period_active,budget_period_description,budget_period_locked)
-SELECT DISTINCT startdate, enddate, 1, concat(startdate," ",enddate),1 from aqbudget
+SELECT DISTINCT startdate, enddate, NOW() BETWEEN startdate and enddate, concat(startdate," ",enddate),NOT NOW() BETWEEN startdate AND enddate from aqbudget
 ADDPERIODS
 # SORRY , NO AQBUDGET/AQBOOKFUND -> AQBUDGETS IMPORT JUST YET,
 # BUT A NEW CLEAN AQBUDGETS TABLE CREATE FOR NOW..
@@ -2906,18 +2908,19 @@ ADDPERIODS
   #$dbh->do("drop table aqbudget;");
 
 
-    $dbh->do(<<BUDGETNAME);
-ALTER TABLE aqbudget RENAME `aqbudgets`
-BUDGETNAME
-    my $maxbudgetid=$dbh->selectcol_arrayref(<<IDsBUDGET);
-SELECT MAX(aqbudgetid) from aqbudgets
+    my $maxbudgetid = $dbh->selectcol_arrayref(<<IDsBUDGET);
+SELECT MAX(aqbudgetid) from aqbudget
 IDsBUDGET
 
 $$maxbudgetid[0] = 0 if !$$maxbudgetid[0];
 
     $dbh->do(<<BUDGETAUTOINCREMENT);
-ALTER TABLE `aqbudgets` AUTO_INCREMENT=$$maxbudgetid[0]
+ALTER TABLE aqbudget AUTO_INCREMENT=$$maxbudgetid[0]
 BUDGETAUTOINCREMENT
+    
+    $dbh->do(<<BUDGETNAME);
+ALTER TABLE aqbudget RENAME `aqbudgets`
+BUDGETNAME
 
     $dbh->do(<<BUDGETS);
 ALTER TABLE `aqbudgets`
@@ -2996,9 +2999,8 @@ BUDGETDROPDATES
                 # cannot do until aqorderbreakdown removed
 #    $dbh->do("DROP TABLE aqbookfund ");
 
-
-
 #    $dbh->do("ALTER TABLE aqorders  ADD FOREIGN KEY (`budget_id`) REFERENCES `aqbudgets` (`budget_id`) ON UPDATE CASCADE  " ); ????
+    $dbh->do("SET FOREIGN_KEY_CHECKS=1 ");
 
     print "Upgrade to $DBversion done (Adding new aqbudgetperiods, aqbudgets and aqbudget_planning tables  )\n";
     SetVersion ($DBversion);
@@ -3641,7 +3643,6 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
     SetVersion ($DBversion);
 }
 
-
 $DBversion = "3.01.00.138";
 if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
     $dbh->do("DELETE FROM systempreferences WHERE variable = 'GranularPermissions'");
@@ -3649,6 +3650,44 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
     SetVersion ($DBversion);
 }
 
+$DBversion = '3.01.00.139';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+    $dbh->do("ALTER TABLE message_attributes CHANGE message_name message_name varchar(40);");
+    print "Upgrade to $DBversion done (bug 3682: change message_name from varchar(20) to varchar(40))\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = '3.01.00.140';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+    $dbh->do("UPDATE systempreferences SET value = '0' WHERE variable = 'TagsModeration' AND value is NULL");
+    print "Upgrade to $DBversion done (bug 4312 TagsModeration changed from NULL to 0)\n";
+    SetVersion ($DBversion);
+}
+
+$DBversion = '3.01.00.141';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+    $dbh->do(qq{DELETE FROM message_attributes WHERE message_attribute_id=3;});
+    $dbh->do(qq{DELETE FROM letter WHERE code='EVENT' AND title='Upcoming Library Event';});
+    print "Upgrade to $DBversion done Remove upcoming events messaging option (bug 2434)";
+    SetVersion ($DBversion);
+}
+
+$DBversion = '3.01.00.142';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+    $dbh->do(qq{DELETE FROM message_transports WHERE message_attribute_id=3;});
+    print "Upgrade to $DBversion done Remove upcoming events messaging option part 2 (bug 2434)";
+    SetVersion ($DBversion);
+}
+
+$DBversion = '3.01.00.143';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+    $dbh->do(qq{CREATE INDEX auth_value_idx ON authorised_values (authorised_value)});
+    $dbh->do(qq{CREATE INDEX auth_val_cat_idx ON borrower_attribute_types (authorised_value_category)});
+    print "Create index on authorised_values and borrower_attribute_types (bug 4139)";
+    SetVersion ($DBversion);
+}
+
+
 =item DropAllForeignKeys($table)
 
   Drop all foreign keys of the table $table