/
device_change.php
121 lines (93 loc) · 5.18 KB
/
device_change.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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?php
include_once("modules/noc/class_noc.php");
$noc = new noc();
switch ($_GET["step"]) {
// ------------------------------------------------------------------------------------
// ERROR CHECKING
case 3:
if ($_POST["device_caption"] == "") {
$noc_error['device_caption'] = t('Bitte gib einen Namen für das Device ein');
$_GET["step"] = 2;
}
if ($_POST["device_ip"] == "") {
$noc_error['device_ip'] = t('Bitte gib eine IP-Adresse für das Device ein');
$_GET["step"] = 2;
} else {
if (!($func->checkIP($_POST["device_ip"]))) {
$noc_error['device_ip'] = t('Bitte gib eine <em>gültige</em> IP-Adresse für das Device ein');
$_GET["step"] = 2;
}
}
if ($_POST["device_write"] == "") {
$noc_error['device_write'] = t('Bitte gib eine Write-Community für das Device an.');
$_GET["step"] = 2;
}
if ($_POST["device_read"] == "") {
$noc_error['device_read'] = t('Bitte gib eine Read-Community für das Device an.');
$_GET["step"] = 2;
}
break;
} // END SWITCH I
// ----------------------------------------------------------------------------------------------------------
switch ($_GET["step"]) {
// --------------------------------------------------------------------------------------------------
// Display Form
default:
case 1:
include_once('modules/noc/search.inc.php');
break;
case 2:
$db->qry("SELECT * FROM %prefix%noc_devices WHERE id = %int%", $_GET["deviceid"]);
if ($row = $db->fetch_array()) {
$deviceid = $row["id"];
$device_ip = $row["ip"];
$device_caption = $row["name"];
$device_read = $row["readcommunity"];
$device_write = $row["writecommunity"];
$dsp->NewContent(t('Device hinzufügen'), t('Um einen Device zum NOC hinzuzufügen, fülle bitte
das folgende Formular vollständig aus.' . HTML_NEWLINE . 'Für das Feld Name
stehen 30 Zeichen zur Verfügung. '));
$dsp->SetForm("index.php?mod=noc&action=change_device&step=3&deviceid=" . $_GET["deviceid"], "noc");
$dsp->AddTextFieldRow("device_caption", t('Name'), $device_caption, $noc_error['device_caption']);
$dsp->AddTextFieldRow("device_ip", t('IP-Adresse'), $device_ip, $noc_error['device_ip']);
$dsp->AddTextFieldRow("device_read", t('Read-Community'), $device_read, $noc_error['device_read']);
$dsp->AddTextFieldRow("device_write", t('Write-Community'), $device_write, $noc_error['device_write']);
$dsp->AddFormSubmitRow(t('Ändern'));
$dsp->AddBackButton("index.php?mod=noc", "noc");
unset($noc_error);
} else {
$func->error(t('Das gewählte Device existiert nicht'));
}
break;
// --------------------------------------------------------------------------------------------------
// Check and Update Device Data
case 3:
if ($noc->checkSNMPDevice($_POST["device_ip"], $_POST["device_read"]) != 1) {
$func->error(t(HTML_NEWLINE . 'Das Device konnte nicht erreicht werden. Mögl. Ursachen:' . HTML_NEWLINE . HTML_NEWLINE . '
- Das Device hat keinen Strom' . HTML_NEWLINE . '
- Das Device hat noch keine IP-Adresse' . HTML_NEWLINE . '
- Das Device unterstützt kein SNMP' . HTML_NEWLINE . '
- Du hast eine falsche Read-Community angegeben' . HTML_NEWLINE . '
- Du hast eine falsche IP-Adresse angegeben' . HTML_NEWLINE . '
- Du hast vergessen, SNMP am device einzuschalten' . HTML_NEWLINE . '
- Dieses PHP unterstützt kein SNMP, kompilieren sie es mit SNMP' . HTML_NEWLINE . '
oder laden sie sich ein vorkompiliertes PHP mit SNMP von' . HTML_NEWLINE . '
<a href="http://de.php.net">Der Deutschen PHP Seite</a> herunter' . HTML_NEWLINE .', '));
break;
} // END IF
// ------------------------------------------------------------------------------------------
// U p d a t e it, not delete and reinsert it.
$add_query = $db->qry("UPDATE %prefix%noc_devices SET
name = %string%,
ip = %string%,
readcommunity = %string%,
writecommunity = %string%
WHERE id = %int%", $_POST['device_caption'], $_POST['device_ip'], $_POST['device_read'], $_POST['device_write'], $_GET["deviceid"]);
if ($add_query == 1) {
$func->confirmation(t('Das Device wurde erfolgreich geändert.'));
} else {
$func->error(t('Das Device konnte nicht geändert werden.'));
} // END IF
break;
} // END SWITCH II
// ----------------------------------------------------------------------------------------------------------