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
|
<?php
/*
** Zabbix
** Copyright (C) 2001-2014 Zabbix SIA
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation; either version 2 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
**/
require_once dirname(__FILE__).'/include/config.inc.php';
require_once dirname(__FILE__).'/include/triggers.inc.php';
require_once dirname(__FILE__).'/include/forms.inc.php';
$page['title'] = _('Trigger description');
$page['file'] = 'tr_comments.php';
$page['hist_arg'] = array('triggerid');
require_once dirname(__FILE__).'/include/page_header.php';
// VAR TYPE OPTIONAL FLAGS VALIDATION EXCEPTION
$fields = array(
'triggerid' => array(T_ZBX_INT, O_MAND, P_SYS, DB_ID, null),
'comments' => array(T_ZBX_STR, O_OPT, null, null, 'isset({save})'),
'save' => array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, null, null),
'cancel' => array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, null, null)
);
check_fields($fields);
if (!isset($_REQUEST['triggerid'])) {
fatal_error(_('No triggers defined.'));
}
/*
* Permissions
*/
$trigger = API::Trigger()->get(array(
'triggerids' => $_REQUEST['triggerid'],
'output' => API_OUTPUT_EXTEND,
'expandDescription' => true
));
if (!$trigger) {
access_deny();
}
$trigger = reset($trigger);
/*
* Actions
*/
if (isset($_REQUEST['save'])) {
DBstart();
$result = DBexecute(
'UPDATE triggers'.
' SET comments='.zbx_dbstr($_REQUEST['comments']).
' WHERE triggerid='.zbx_dbstr($_REQUEST['triggerid'])
);
$trigger['comments'] = $_REQUEST['comments'];
if ($result) {
add_audit(AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_TRIGGER,
_('Trigger').' ['.$_REQUEST['triggerid'].'] ['.$trigger['description'].'] '.
_('Comments').' ['.$_REQUEST['comments'].']'
);
}
$result = DBend($result);
show_messages($result, _('Description updated'), _('Cannot update description'));
}
elseif (isset($_REQUEST['cancel'])) {
jsRedirect('tr_status.php');
exit;
}
/*
* Display
*/
$triggerEditable = API::Trigger()->get(array(
'triggerids' => $_REQUEST['triggerid'],
'output' => array('triggerid'),
'editable' => true
));
$data = array(
'triggerid' => getRequest('triggerid'),
'trigger' => $trigger,
'isTriggerEditable' => !empty($triggerEditable),
'isCommentExist' => !empty($trigger['comments'])
);
// render view
$triggerCommentView = new CView('monitoring.triggerComment', $data);
$triggerCommentView->render();
$triggerCommentView->show();
require_once dirname(__FILE__).'/include/page_footer.php';
|