aboutsummaryrefslogtreecommitdiff
path: root/db/migrations/5.4.4_add_personal_details_info_text_config.php
blob: 0cf52d8fb2b3aea3bb960a5ae6499b9a7c338450 (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
44
<?php

class AddPersonalDetailsInfoTextConfig extends Migration
{
    public function description()
    {
        return 'Adds the configuration PERSONAL_DETAILS_INFO_TEXT, if it doesn\'t exist yet. Also adds english translation.';
    }

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

        $db->exec(
            "INSERT IGNORE INTO `config`
             (`field`, `value`, `type`, `range`, `section`, `mkdate`, `chdate`, `description`)
             VALUES
             (
                 'PERSONAL_DETAILS_INFO_TEXT', 'Einige Ihrer persönlichen Daten werden nicht in Stud.IP verwaltet und können daher hier nicht geändert werden.',
                 'i18n', 'global', 'global', UNIX_TIMESTAMP(), UNIX_TIMESTAMP(),
                 'Der Infotext der unter Profil->Persönliche Angaben->Grunddaten angezeigt wird, wenn man nicht die Standard-Auth nutzt.'
             )"
        );

        $db->execute(
            "INSERT IGNORE INTO `i18n`
            (`object_id`, `table`, `field`, `lang`, `value`)
            VALUES
            (
                MD5('PERSONAL_DETAILS_INFO_TEXT'), 'config', 'value', 'en_GB',
                'Some of your personal data is not managed in Stud.IP and therefore cannot be changed here.'
            )"
        );
    }

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

        $db->exec("DELETE FROM `config_values` WHERE `field` = 'PERSONAL_DETAILS_INFO_TEXT'");
        $db->exec("DELETE FROM `config` WHERE `field` = 'PERSONAL_DETAILS_INFO_TEXT'");
        $db->exec("DELETE FROM `i18n` WHERE `object_id` = MD5('PERSONAL_DETAILS_INFO_TEXT') AND `table` = 'config' AND `field` = 'value'");
    }
}