-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadmin_vertrag.php
68 lines (60 loc) · 2.45 KB
/
admin_vertrag.php
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
/*
* MIT Licence
* Copyright (c) 2023 Simon Frankenberger
*
* Please see LICENCE.md for complete licence text.
*/
require_once __DIR__ . '/../include/functions.inc.php';
require_once __DIR__ . '/../include/database.class.php';
ob_start();
requireAdmin();
$von = getOrDefault($_POST, 'von', 0);
$an = getOrDefault($_POST, 'an', 0);
$ware = getOrDefault($_POST, 'ware', 0);
$menge = getOrDefault($_POST, 'menge', 0);
$preis = getOrDefault($_POST, 'preis', .0);
$id = getOrDefault($_REQUEST, 'id', 0);
switch (getOrDefault($_REQUEST, 'a', 0)) {
// create new contract
case 1:
if ($menge <= 0 || $preis <= 0) {
redirectTo(sprintf('Location: /?p=admin_vertrag_einstellen&von=%d&an=%d&ware=%d&menge=%d&preis=%F',
$von, $an, $ware, $menge, $preis), 120, __LINE__);
}
if (Database::getInstance()->createTableEntry(Database::TABLE_CONTRACTS,
array('Von' => $von, 'An' => $an, 'Was' => $ware, 'Menge' => $menge, 'Preis' => $preis)) == 0) {
redirectTo(sprintf('Location: /?p=admin_vertrag_einstellen&von=%d&an=%d&ware=%d&menge=%d&preis=%F',
$von, $an, $ware, $menge, $preis), 141, __LINE__);
} else {
redirectTo('/?p=admin_vertrag', 218);
die();
}
break;
// edit existing contract
case 2:
if ($menge <= 0 || $preis <= 0) {
redirectTo(sprintf('/?p=admin_vertrag_bearbeiten&id=%d&von=%d&an=%d&ware=%d&menge=%d&preis=%F',
$id, $von, $an, $ware, $menge, $preis), 120, __LINE__);
}
if (Database::getInstance()->updateTableEntry(Database::TABLE_CONTRACTS, $id, array('Von' => $von, 'An' => $an, 'Was' => $ware, 'Menge' => $menge, 'Preis' => $preis)) === null) {
redirectTo(sprintf('Location: /?p=admin_vertrag_bearbeiten&id=%d&von=%d&an=%d&ware=%d&menge=%d&preis=%F',
$id, $an, $von, $ware, $menge, $preis), 142, __LINE__);
} else {
redirectTo('/?p=admin_vertrag', 234);
}
break;
// delete existing contract
case 3:
requireXsrfToken('/?p=admin_vertrag');
if (Database::getInstance()->deleteTableEntry(Database::TABLE_CONTRACTS, $id) == 0) {
redirectBack('/?p=admin_vertrag', 143, __LINE__);
} else {
redirectTo('/?p=admin_vertrag', 233);
}
break;
// unknown action
default:
redirectBack('/?p=admin_vertrag', 112, __LINE__);
break;
}