aboutsummaryrefslogtreecommitdiff
path: root/db/migrations/5.1.16_tic_410.php
blob: af9774e8d6a8d96f81c74361b63353e7ef909cef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
class tic410 extends Migration
{
    public function description()
    {
        return "create NewsRoles table";
    }

    public function up()
    {
        $db =  DBManager::get();

        $query = 'CREATE TABLE IF NOT EXISTS `news_roles` (
          `news_id` CHAR(32) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
          `roleid` int(10) NOT NULL,
           PRIMARY KEY (`news_id`, `roleid`)
          ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC;';
        $db->exec($query);

        $query = 'ALTER TABLE `news` ADD COLUMN `prio` tinyint(2) NOT NULL DEFAULT 0 AFTER `allow_comments`';
        $db->exec($query);

        $query = "INSERT IGNORE INTO `config` (`field`, `value`, `type`, `range`, `mkdate`, `chdate`, `description`)
                  VALUES (:name, :value, :type, :range, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), :description)";

        $statement = DBManager::get()->prepare($query);
        $statement->execute([
            ':name'        => 'NEWS_ONLY_SYSTEM_ROLES',
            ':description' => 'Über diese Option wird die Auswahl der rollenspezifischen Ankündigungen auf Systemrollen begrenzt',
            ':range'       => 'global',
            ':type'        => 'boolean',
            ':value'       => '1'
        ]);
    }

    public function down()
    {
        $db =  DBManager::get();

        $db->exec('DROP TABLE IF EXISTS `news_roles`');
        $db->exec('ALTER TABLE `news` DROP COLUMN `prio`');
    }
}