Issues (2160)

plugin/h5p/inc/action.switch.php (1 issue)

1
<?php
2
3
/* For license terms, see /license.txt */
4
5
$varString = api_get_self();
6
$varUrlList = str_replace("node_process.php", "list.php", $varString);
7
$varUrlProcess = str_replace("list.php", "node_process.php", $varString);
8
9
switch ($action) {
10
    case 'add':
11
        if ($form->validate()) {
12
            $values = $form->getSubmitValues();
13
            $date = new DateTime();
14
            $year = $date->format("Y");
15
            $month = $date->format('m');
16
            $day = $date->format('j');
17
            $dateStr = $day.'/'.$month.'/'.$year;
18
            $params = [
19
                'title' => $values['title'],
20
                'creation_date' => $dateStr,
21
                'user_id' => $userId,
22
                'node_type' => $values['node_type'],
23
                'terms_a' => $values['terms_a'],
24
                'terms_b' => $values['terms_b'],
25
                'terms_c' => $values['terms_c'],
26
                'terms_d' => $values['terms_d'],
27
                'terms_e' => $values['terms_e'],
28
                'terms_f' => $values['terms_f'],
29
                'descript' => $values['descript'],
30
                'url_id' => $urlId,
31
            ];
32
            $result = Database::insert($table, $params);
33
34
            $objectId = 0;
35
            if (!$result) {
0 ignored issues
show
Bug Best Practice introduced by
The expression $result of type false|integer is loosely compared to false; this is ambiguous if the integer can be 0. You might want to explicitly use === false instead.

In PHP, under loose comparison (like ==, or !=, or switch conditions), values of different types might be equal.

For integer values, zero is a special case, in particular the following results might be unexpected:

0   == false // true
0   == null  // true
123 == false // false
123 == null  // false

// It is often better to use strict comparison
0 === false // false
0 === null  // false
Loading history...
36
            } else {
37
                Display::addFlash(Display::return_message(get_lang('Added')));
38
                $objectId = Database::insert_id();
39
            }
40
41
            $varUrlProcess = $varUrlProcess.'?id='.$objectId.'&action=add';
42
            header('Location: '.$varUrlProcess);
43
            exit;
44
        }
45
        break;
46
    case 'edit':
47
        $form->setDefaults($term);
48
        if ($form->validate()) {
49
            $values = $form->getSubmitValues();
50
            $params = [
51
                'title' => $values['title'],
52
                'terms_a' => $values['terms_a'],
53
                'terms_b' => $values['terms_b'],
54
                'terms_c' => $values['terms_c'],
55
                'terms_d' => $values['terms_d'],
56
                'terms_e' => $values['terms_e'],
57
                'terms_f' => $values['terms_f'],
58
                'descript' => $values['descript'],
59
            ];
60
            Database::update($table, $params, ['id = ?' => $id]);
61
            Display::addFlash(Display::return_message(get_lang('Updated')));
62
            $varUrlProcess = $varUrlProcess.'?id='.$id.'&action=edit';
63
            header('Location: '.$varUrlProcess);
64
            exit;
65
        }
66
        break;
67
    case 'delete':
68
        if (!empty($term)) {
69
            Database::delete($table, ['id = ?' => $id]);
70
            Display::addFlash(Display::return_message(get_lang('Deleted')));
71
            header('Location: '.$varUrlList);
72
            exit;
73
        }
74
        break;
75
}
76