aboutsummaryrefslogtreecommitdiff
path: root/db/migrations/1.307_introduce_range_config.php
blob: 0fada126e958fd07c3d59536b3663bc6b0919310 (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
<?php
class IntroduceRangeConfig extends Migration
{
    public function description()
    {
        return 'Adds new config types "range" and "institute"';
    }

    public function up()
    {
        $query = "ALTER TABLE `config`
                  CHANGE COLUMN `range` `range` ENUM('global', 'range', 'user', 'course', 'institute') CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT 'global'";
        DBManager::get()->exec($query);
    }

    public function down()
    {
        $quey = "DELETE `config`, `config_values`
                 FROM `config`
                 LEFT JOIN `config_values` USING(`field`)
                 WHERE `range` IN ('range', 'institute')";
        DBManager::get()->exec($query);

        $query = "ALTER TABLE `config`
                  CHANGE COLUMN `range` `range` ENUM('global', 'user', 'course') CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT 'global'";
        DBManager::get()->exec($query);
    }
}