blob: bc761e99a924a1d4023d460c6cfeaa6f31131d09 (
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
|
<?php
final class FixMyCoursesGroupConfig extends Migration
{
public function description()
{
return 'Ensures correct format of MY_COURSES_OPEN_GROUPS user config option';
}
public function up()
{
ConfigValue::findEachBySQL(
function ($value) {
$groups = json_decode($value->value, true);
$changed = false;
foreach ($groups as $index => $val) {
if ($val === true) {
unset($groups[$index]);
$groups[] = $index;
$changed = true;
}
}
if ($value->value[0] === '{' || $changed) {
$value->value = json_encode(array_values($groups));
$value->store();
}
},
'field = ?',
['MY_COURSES_OPEN_GROUPS']
);
}
}
|