aboutsummaryrefslogtreecommitdiff
path: root/db
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2025-07-04 14:57:56 +0200
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2025-07-04 14:57:56 +0200
commit454ca1e760f473e12e6ea2a4d11d5d954f352e20 (patch)
tree51b347f0451841ee15b7be16fc3474d12d7506b9 /db
parent382cfd5bbe19abd89805ab48287e0c8d425ac080 (diff)
add migration that fixes columns in new forum, fixes #5685
Closes #5685 Merge request studip/studip!4317
Diffstat (limited to 'db')
-rw-r--r--db/migrations/6.1.8_forum3_correct_columns.php84
1 files changed, 84 insertions, 0 deletions
diff --git a/db/migrations/6.1.8_forum3_correct_columns.php b/db/migrations/6.1.8_forum3_correct_columns.php
new file mode 100644
index 0000000..7b00cba
--- /dev/null
+++ b/db/migrations/6.1.8_forum3_correct_columns.php
@@ -0,0 +1,84 @@
+<?php
+final class Forum3CorrectColumns extends Migration
+{
+ public function description()
+ {
+ return 'Corrects columns in forum3';
+ }
+
+ public function up()
+ {
+ $query = "ALTER TABLE `forum_categories`
+ MODIFY COLUMN `chdate` INT(11) UNSIGNED DEFAULT NULL,
+ MODIFY COLUMN `mkdate` INT(11) UNSIGNED DEFAULT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_discussions`
+ MODIFY COLUMN `sticky` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
+ MODIFY COLUMN `closed_at` INT(11) UNSIGNED DEFAULT NULL,
+ MODIFY COLUMN `chdate` INT(11) UNSIGNED NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) UNSIGNED NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_posting_reactions`
+ MODIFY COLUMN `mkdate` INT(11) UNSIGNED NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_posting_reads`
+ MODIFY COLUMN `user_id` CHAR(32) COLLATE latin1_bin NOT NULL,
+ MODIFY COLUMN `read_index` INT(11) UNSIGNED DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) UNSIGNED NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_postings`
+ MODIFY COLUMN `user_id` CHAR(32) COLLATE latin1_bin NOT NULL,
+ MODIFY COLUMN `anonymous` TINYINT(1) UNSIGNED DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) UNSIGNED NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) UNSIGNED NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_topics`
+ MODIFY COLUMN `position` INT(11) UNSIGNED DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) UNSIGNED NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) UNSIGNED NOT NULL";
+ DBManager::get()->exec($query);
+ }
+
+ public function down()
+ {
+ $query = "ALTER TABLE `forum_topics`
+ MODIFY COLUMN `position` INT(11) DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_postings`
+ MODIFY COLUMN `user_id` CHAR(32) NOT NULL,
+ MODIFY COLUMN `anonymous` TINYINT(1) DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_posting_reads`
+ MODIFY COLUMN `user_id` CHAR(32) NOT NULL,
+ MODIFY COLUMN `read_index` INT(11) DEFAULT 0,
+ MODIFY COLUMN `chdate` INT(11) NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_posting_reactions`
+ MODIFY COLUMN `mkdate` INT(11) NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_discussions`
+ MODIFY COLUMN `sticky` TINYINT(1) NOT NULL DEFAULT 0,
+ MODIFY COLUMN `closed_at` INT(11) DEFAULT NULL,
+ MODIFY COLUMN `chdate` INT(11) NOT NULL,
+ MODIFY COLUMN `mkdate` INT(11) NOT NULL";
+ DBManager::get()->exec($query);
+
+ $query = "ALTER TABLE `forum_categories`
+ MODIFY COLUMN `chdate` INT(11) DEFAULT NULL,
+ MODIFY COLUMN `mkdate` INT(11) DEFAULT NULL";
+ DBManager::get()->exec($query);
+ }
+}