2013-02-20 Miguel de Dios <miguel.dedios@artica.es>
* godmode/servers/recon_script.php, godmode/servers/plugin.php, godmode/snmpconsole/snmp_filters.php, godmode/massive/massive_delete_alerts.php, godmode/massive/massive_enable_disable_alerts.php, godmode/massive/massive_edit_agents.php, godmode/massive/massive_delete_modules.php, godmode/massive/massive_add_action_alerts.php, godmode/massive/massive_delete_action_alerts.php: improved the code style. * include/ajax/events.php, include/functions_events.php, operation/agentes/custom_fields.php: fixed the show admin custom fields for user without permisitions. Fixes: #3605278 git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@7683 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
parent
e6080d949e
commit
6537c96db3
|
@ -1,3 +1,21 @@
|
|||
2013-02-20 Miguel de Dios <miguel.dedios@artica.es>
|
||||
|
||||
* godmode/servers/recon_script.php, godmode/servers/plugin.php,
|
||||
godmode/snmpconsole/snmp_filters.php,
|
||||
godmode/massive/massive_delete_alerts.php,
|
||||
godmode/massive/massive_enable_disable_alerts.php,
|
||||
godmode/massive/massive_edit_agents.php,
|
||||
godmode/massive/massive_delete_modules.php,
|
||||
godmode/massive/massive_add_action_alerts.php,
|
||||
godmode/massive/massive_delete_action_alerts.php: improved the code
|
||||
style.
|
||||
|
||||
* include/ajax/events.php, include/functions_events.php,
|
||||
operation/agentes/custom_fields.php: fixed the show admin custom
|
||||
fields for user without permisitions.
|
||||
|
||||
Fixes: #3605278
|
||||
|
||||
2013-02-19 Ramon Novoa <rnovoa@artica.es>
|
||||
|
||||
* include/auth/ldap.php: Do not bind anonymously to check whether the
|
||||
|
|
|
@ -29,14 +29,14 @@ require_once ('include/functions_users.php');
|
|||
|
||||
if (is_ajax ()) {
|
||||
$get_alerts = (bool) get_parameter ('get_alerts');
|
||||
|
||||
|
||||
if ($get_alerts) {
|
||||
$id_agents = get_parameter ('id_agents');
|
||||
if (empty($id_agents)) {
|
||||
echo json_encode ('');
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(is_array($id_agents) && count($id_agents) == 1 && $id_agents[0] == '') {
|
||||
$id_agents = false;
|
||||
}
|
||||
|
@ -105,7 +105,7 @@ if ($add) {
|
|||
ui_print_result_message (false, '', __('Could not be added').". ".__('No action selected'));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
$groups = users_get_groups ();
|
||||
|
@ -148,7 +148,7 @@ $table->data[2][1] = html_print_select (array(), 'id_alert_templates[]', '', '',
|
|||
|
||||
$actions = alerts_get_alert_actions ();
|
||||
$table->data[3][0] = __('Action');
|
||||
$table->data[3][1] = html_print_select ($actions, 'action[]', '', '', '', '', true, true);
|
||||
$table->data[3][1] = html_print_select ($actions, 'action[]', '', '', '', '', true, true);
|
||||
$table->data[3][1] .= '<span><a href="#" class="show_advanced_actions">'.__('Advanced options').' » </a></span>';
|
||||
$table->data[3][1] .= '<span id="advanced_actions" class="advanced_actions invisible">';
|
||||
$table->data[3][1] .= __('Number of alerts match from').' ';
|
||||
|
@ -186,7 +186,7 @@ ui_require_jquery_file ('pandora.controls');
|
|||
<script type="text/javascript">
|
||||
$(document).ready (function () {
|
||||
update_alerts();
|
||||
|
||||
|
||||
var recursion;
|
||||
$("#checkbox-recursion").click(function (){
|
||||
recursion = this.checked ? 1 : 0;
|
||||
|
|
|
@ -29,7 +29,7 @@ require_once ('include/functions_users.php');
|
|||
|
||||
if (is_ajax ()) {
|
||||
$get_alerts = (bool) get_parameter ('get_alerts');
|
||||
|
||||
|
||||
if ($get_alerts) {
|
||||
$id_agents = get_parameter ('id_agents');
|
||||
if (empty($id_agents)) {
|
||||
|
@ -51,37 +51,39 @@ $recursion = get_parameter ('recursion');
|
|||
$delete = (bool) get_parameter_post ('delete');
|
||||
|
||||
if ($delete) {
|
||||
if(empty($id_agents) || $id_agents[0] == 0)
|
||||
ui_print_result_message (false, '', __('Could not be deleted').". ".__('No agents selected'));
|
||||
if (empty($id_agents) || $id_agents[0] == 0)
|
||||
ui_print_result_message (false, '',
|
||||
__('Could not be deleted. No agents selected'));
|
||||
else {
|
||||
$actions = get_parameter ('action');
|
||||
|
||||
if(!empty($actions)){
|
||||
if (!empty($actions)) {
|
||||
$agent_alerts = agents_get_alerts($id_agents);
|
||||
|
||||
$alerts_agent_modules = array();
|
||||
foreach($agent_alerts['simple'] as $agent_alert){
|
||||
foreach ($agent_alerts['simple'] as $agent_alert){
|
||||
if (in_array($agent_alert['id_alert_template'], $id_alert_templates)) {
|
||||
$alerts_agent_modules = array_merge($alerts_agent_modules, alerts_get_alerts_agent_module ($agent_alert['id_agent_module'], true, false, 'id'));
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($alerts_agent_modules)) {
|
||||
ui_print_result_message (false, '', __('Could not be deleted').". ".__('No alerts selected'));
|
||||
ui_print_result_message (false, '',
|
||||
__('Could not be deleted. No alerts selected'));
|
||||
}
|
||||
else {
|
||||
$results = true;
|
||||
$agent_module_actions = array();
|
||||
|
||||
foreach($alerts_agent_modules as $alert_agent_module){
|
||||
$agent_module_actions = alerts_get_alert_agent_module_actions ($alert_agent_module['id'], array('id','id_alert_action'));
|
||||
|
||||
foreach ($alerts_agent_modules as $alert_agent_module) {
|
||||
$agent_module_actions = alerts_get_alert_agent_module_actions ($alert_agent_module['id'], array('id','id_alert_action'));
|
||||
|
||||
foreach ($agent_module_actions as $agent_module_action){
|
||||
foreach($actions as $action) {
|
||||
if($agent_module_action['id_alert_action'] == $action) {
|
||||
foreach ($actions as $action) {
|
||||
if ($agent_module_action['id_alert_action'] == $action) {
|
||||
$result = alerts_delete_alert_agent_module_action ($agent_module_action['id']);
|
||||
|
||||
if($result === false)
|
||||
|
||||
if ($result === false)
|
||||
$results = false;
|
||||
}
|
||||
}
|
||||
|
@ -98,12 +100,15 @@ if ($delete) {
|
|||
'Agent: ' . json_encode($id_agents) . ' Alert templates: ' . json_encode($id_alert_templates) .
|
||||
' Actions: ' . implode(',',$actions));
|
||||
}
|
||||
|
||||
ui_print_result_message ($results, __('Successfully deleted'), __('Could not be deleted'));
|
||||
|
||||
ui_print_result_message ($results,
|
||||
__('Successfully deleted'),
|
||||
__('Could not be deleted'));
|
||||
}
|
||||
}
|
||||
else {
|
||||
ui_print_result_message (false, '', __('Could not be deleted').". ".__('No action selected'));
|
||||
ui_print_result_message (false, '',
|
||||
__('Could not be deleted. No action selected'));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -150,12 +155,17 @@ $table->data[2][1] = html_print_select (index_array ($alert_templates, 'id_alert
|
|||
|
||||
$actions = alerts_get_alert_actions ();
|
||||
$table->data[3][0] = __('Action');
|
||||
$table->data[3][1] = html_print_select ($actions, 'action[]', '', '', '', '', true, true);
|
||||
$table->data[3][1] = html_print_select ($actions, 'action[]', '', '',
|
||||
'', '', true, true);
|
||||
|
||||
echo '<form method="post" id="form_alert" action="index.php?sec=gmassive&sec2=godmode/massive/massive_operations&option=delete_action_alerts">';
|
||||
html_print_table ($table);
|
||||
|
||||
$sql = 'SELECT id_agente FROM tagente_modulo WHERE id_agente_modulo IN (SELECT id_agent_module FROM talert_template_modules)';
|
||||
$sql = 'SELECT id_agente
|
||||
FROM tagente_modulo
|
||||
WHERE id_agente_modulo IN (
|
||||
SELECT id_agent_module
|
||||
FROM talert_template_modules)';
|
||||
$agents_with_templates = db_get_all_rows_sql($sql);
|
||||
$agents_with_templates_json = array();
|
||||
foreach($agents_with_templates as $ag) {
|
||||
|
@ -171,16 +181,16 @@ html_print_submit_button (__('Delete'), 'go', false, 'class="sub delete"');
|
|||
echo '</div>';
|
||||
echo '</form>';
|
||||
|
||||
echo '<h3 class="error invisible" id="message"> </h3>';
|
||||
echo '<h3 class="error invisible" id="message"></h3>';
|
||||
|
||||
ui_require_jquery_file ('form');
|
||||
ui_require_jquery_file ('pandora.controls');
|
||||
ui_require_jquery_file('form');
|
||||
ui_require_jquery_file('pandora.controls');
|
||||
?>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready (function () {
|
||||
update_alerts();
|
||||
|
||||
|
||||
var recursion;
|
||||
$("#checkbox-recursion").click(function (){
|
||||
recursion = this.checked ? 1 : 0;
|
||||
|
@ -198,36 +208,36 @@ $(document).ready (function () {
|
|||
$("option", $select_template).remove ();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$("#id_agents").change (function () {
|
||||
update_alerts();
|
||||
});
|
||||
|
||||
|
||||
function update_alerts() {
|
||||
var idAgents = Array();
|
||||
jQuery.each ($("#id_agents option:selected"), function (i, val) {
|
||||
idAgents.push($(val).val());
|
||||
});
|
||||
$("#template_loading").show();
|
||||
|
||||
|
||||
var $select_template = $("#id_alert_templates").disable ();
|
||||
$("option", $select_template).remove ();
|
||||
|
||||
|
||||
jQuery.post ("ajax.php",
|
||||
{"page" : "godmode/massive/massive_delete_action_alerts",
|
||||
"get_alerts" : 1,
|
||||
"id_agents[]" : idAgents
|
||||
},
|
||||
function (data, status) {
|
||||
options = "";
|
||||
jQuery.each (data, function (id, value) {
|
||||
options += "<option value=\""+id+"\">"+value+"</option>";
|
||||
});
|
||||
$("#id_alert_templates").append (options);
|
||||
$("#template_loading").hide ();
|
||||
$select_template.enable ();
|
||||
},
|
||||
"json"
|
||||
{"page" : "godmode/massive/massive_delete_action_alerts",
|
||||
"get_alerts" : 1,
|
||||
"id_agents[]" : idAgents
|
||||
},
|
||||
function (data, status) {
|
||||
options = "";
|
||||
jQuery.each (data, function (id, value) {
|
||||
options += "<option value=\""+id+"\">"+value+"</option>";
|
||||
});
|
||||
$("#id_alert_templates").append (options);
|
||||
$("#template_loading").hide ();
|
||||
$select_template.enable ();
|
||||
},
|
||||
"json"
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -256,7 +256,7 @@ $(document).ready (function () {
|
|||
|
||||
$("#modules_selection_mode").change (function() {
|
||||
$("#id_agents").trigger('change');
|
||||
});
|
||||
});
|
||||
});
|
||||
/* ]]> */
|
||||
</script>
|
||||
|
|
|
@ -60,15 +60,15 @@ function process_manage_delete ($module_name, $id_agents) {
|
|||
}
|
||||
|
||||
db_process_sql_begin ();
|
||||
|
||||
|
||||
$module_name = (array)$module_name;
|
||||
|
||||
// We are selecting "any" agent for the selected modules
|
||||
if (($id_agents[0] == 0) and (is_array($id_agents)) and (count($id_agents) == 1))
|
||||
$id_agents = NULL;
|
||||
|
||||
$selection_delete_mode = get_parameter('selection_mode', 'modules');
|
||||
|
||||
$selection_delete_mode = get_parameter('selection_mode', 'modules');
|
||||
|
||||
// Selection mode by Agents
|
||||
if ($selection_delete_mode == 'agents') {
|
||||
// We are selecting "any" module for the selecteds agents
|
||||
|
@ -76,16 +76,16 @@ function process_manage_delete ($module_name, $id_agents) {
|
|||
$filter_for_module_deletion = false;
|
||||
else
|
||||
$filter_for_module_deletion = sprintf('nombre IN ("%s")', implode('","',$module_name));
|
||||
|
||||
|
||||
$modules = agents_get_modules ($id_agents, 'id_agente_modulo',
|
||||
$filter_for_module_deletion, true);
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
$modules = agents_get_modules ($id_agents, 'id_agente_modulo',
|
||||
sprintf('nombre IN ("%s")', implode('","',$module_name)), true);
|
||||
}
|
||||
|
||||
|
||||
$count_deleted_modules = count($modules);
|
||||
|
||||
$success = modules_delete_agent_module ($modules);
|
||||
|
@ -291,7 +291,7 @@ $table->data[4][0] = __('Agents');
|
|||
|
||||
$table->data[4][1] = html_print_select ($agents, 'id_agents[]',
|
||||
$agents_id, false, '', '', true, true, false, '', false, 'width:100%');
|
||||
|
||||
|
||||
$table->data[4][2] = __('When select agents');
|
||||
$table->data[4][2] .= '<br>';
|
||||
$table->data[4][2] .= html_print_select (array('common' => __('Show common modules'), 'all' => __('Show all modules')), 'modules_selection_mode',
|
||||
|
|
|
@ -315,7 +315,7 @@ $table->data[3][1] = '<div id="delete_configurations" style="display: none">'. _
|
|||
$table->data[3][1] .= '<span id="n_configurations"></span>';
|
||||
$table->data[3][1] .= ') '.html_print_checkbox_extended ("delete_conf", 1, 0, false, '', 'style="margin-right: 40px;"', true).'</div>';
|
||||
|
||||
$table->data[3][1] .= '<div id="not_available_configurations" style="display: none"><em>'.__('Not available').'</em></div>';
|
||||
$table->data[3][1] .= '<div id="not_available_configurations" style="display: none"><em>'.__('Not available').'</em></div>';
|
||||
|
||||
$listIcons = gis_get_array_list_icons();
|
||||
|
||||
|
@ -474,7 +474,7 @@ $(document).ready (function () {
|
|||
|
||||
function changeIcons() {
|
||||
icon = $("#icon_path :selected").val();
|
||||
|
||||
|
||||
$("#icon_without_status").attr("src", "images/spinner.png");
|
||||
$("#icon_default").attr("src", "images/spinner.png");
|
||||
$("#icon_ok").attr("src", "images/spinner.png");
|
||||
|
@ -489,11 +489,16 @@ function changeIcons() {
|
|||
$("#icon_warning").attr("style", "display:none;");
|
||||
}
|
||||
else {
|
||||
$("#icon_without_status").attr("src", "<?php echo $path; ?>" + icon + ".default.png");
|
||||
$("#icon_default").attr("src", "<?php echo $path; ?>" + icon + ".default.png");
|
||||
$("#icon_ok").attr("src", "<?php echo $path; ?>" + icon + ".ok.png");
|
||||
$("#icon_bad").attr("src", "<?php echo $path; ?>" + icon + ".bad.png");
|
||||
$("#icon_warning").attr("src", "<?php echo $path; ?>" + icon + ".warning.png");
|
||||
$("#icon_without_status").attr("src",
|
||||
"<?php echo $path; ?>" + icon + ".default.png");
|
||||
$("#icon_default").attr("src",
|
||||
"<?php echo $path; ?>" + icon + ".default.png");
|
||||
$("#icon_ok").attr("src",
|
||||
"<?php echo $path; ?>" + icon + ".ok.png");
|
||||
$("#icon_bad").attr("src",
|
||||
"<?php echo $path; ?>" + icon + ".bad.png");
|
||||
$("#icon_warning").attr("src",
|
||||
"<?php echo $path; ?>" + icon + ".warning.png");
|
||||
$("#icon_without_status").attr("style", "");
|
||||
$("#icon_default").attr("style", "");
|
||||
$("#icon_ok").attr("style", "");
|
||||
|
|
|
@ -95,7 +95,7 @@ switch ($action) {
|
|||
|
||||
ui_print_result_message ($result, __('Successfully disabled'), __('Could not be disabled'));
|
||||
|
||||
$info = 'Alert: ' . json_encode($id_enabled_alerts);
|
||||
$info = 'Alert: ' . json_encode($id_enabled_alerts);
|
||||
if ($result) {
|
||||
db_pandora_audit("Masive management", "Disable alert", false, false, $info);
|
||||
}
|
||||
|
|
|
@ -54,7 +54,8 @@ if ($view != "") {
|
|||
$form_plugin_type = $plugin ["plugin_type"];
|
||||
$macros = $plugin ["macros"];
|
||||
$parameters = $plugin ["parameters"];
|
||||
}
|
||||
}
|
||||
|
||||
if ($create != "") {
|
||||
$form_name = "";
|
||||
$form_description = "";
|
||||
|
@ -74,7 +75,7 @@ $sec = 'gservers';
|
|||
|
||||
if (($create != "") OR ($view != "")) {
|
||||
|
||||
if(defined('METACONSOLE')) {
|
||||
if (defined('METACONSOLE')) {
|
||||
components_meta_print_header();
|
||||
$sec = 'advanced';
|
||||
}
|
||||
|
@ -142,8 +143,8 @@ if (($create != "") OR ($view != "")) {
|
|||
// If we have plugin id (update mode) and this plugin used by any module or component
|
||||
// The command configuration will be locked
|
||||
if ($plugin_id > 0) {
|
||||
$modules_using_plugin = db_get_value_filter('count(*)','tagente_modulo', array('delete_pending' => 0, 'id_plugin' => $plugin_id));
|
||||
$components_using_plugin = db_get_value_filter('count(*)','tnetwork_component', array('id_plugin' => $plugin_id));
|
||||
$modules_using_plugin = db_get_value_filter('count(*)','tagente_modulo', array('delete_pending' => 0, 'id_plugin' => $plugin_id));
|
||||
$components_using_plugin = db_get_value_filter('count(*)','tnetwork_component', array('id_plugin' => $plugin_id));
|
||||
if(($components_using_plugin + $modules_using_plugin) == 0) {
|
||||
$locked = false;
|
||||
}
|
||||
|
@ -480,7 +481,7 @@ ui_require_javascript_file('pandora_modules');
|
|||
?>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
|
||||
$(document).ready(function() {
|
||||
function update_preview() {
|
||||
var command = $('#form_execute').val();
|
||||
|
@ -502,7 +503,7 @@ $(document).ready(function() {
|
|||
|
||||
$('#command_preview').html(command+' '+parameters);
|
||||
}
|
||||
|
||||
|
||||
update_preview();
|
||||
|
||||
$('.command_component').live( 'keyup', function() {
|
||||
|
@ -512,12 +513,12 @@ $(document).ready(function() {
|
|||
});
|
||||
|
||||
<?php
|
||||
if($locked) {
|
||||
?>
|
||||
$('.command_advanced_conf').click(function() {
|
||||
alert('<?php echo __("The plugin command cannot be updated because some modules or components are using the plugin."); ?>');
|
||||
});
|
||||
<?php
|
||||
if($locked) {
|
||||
?>
|
||||
$('.command_advanced_conf').click(function() {
|
||||
alert('<?php echo __("The plugin command cannot be updated because some modules or components are using the plugin."); ?>');
|
||||
});
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
|
|
|
@ -111,14 +111,14 @@ if (($create != "") OR ($view != "")){
|
|||
}
|
||||
else {
|
||||
ui_print_page_header (__('Recon scripts registered in Pandora FMS'), "", false, "", true);
|
||||
|
||||
|
||||
// Update reconscript
|
||||
if (isset($_GET["update_reconscript"])) { // if modified any parameter
|
||||
$id_recon_script = get_parameter ("update_reconscript", 0);
|
||||
$reconscript_name = get_parameter ("form_name", "");
|
||||
$reconscript_description = get_parameter ("form_description", "");
|
||||
$reconscript_script = get_parameter ("form_script", "");
|
||||
|
||||
|
||||
$sql_update ="UPDATE trecon_script SET
|
||||
name = '$reconscript_name',
|
||||
description = '$reconscript_description',
|
||||
|
@ -126,7 +126,7 @@ else {
|
|||
WHERE id_recon_script = $id_recon_script";
|
||||
$result = false;
|
||||
if ($reconscript_name != '' && $reconscript_script != '')
|
||||
$result = db_process_sql ($sql_update);
|
||||
$result = db_process_sql ($sql_update);
|
||||
if (! $result) {
|
||||
echo "<h3 class='error'>" . __('Problem updating') . "</h3>";
|
||||
}
|
||||
|
|
|
@ -94,7 +94,7 @@ if ($edit_filter > -2) {
|
|||
$table->data[0][1] = html_print_input_text ('description', $description, '', 60, 100, true);
|
||||
$table->data[1][0] = __('Filter');
|
||||
$table->data[1][1] = html_print_input_text ('filter', $filter, '', 60, 100, true);
|
||||
|
||||
|
||||
echo '<form action="index.php?sec=estado&sec2=godmode/snmpconsole/snmp_filters" method="post">';
|
||||
html_print_input_hidden ('update_filter', $edit_filter);
|
||||
html_print_table ($table);
|
||||
|
@ -125,7 +125,7 @@ else {
|
|||
$table->class= "databox";
|
||||
$table->align = array ();
|
||||
|
||||
$table->head[0] = __('Description');
|
||||
$table->head[0] = __('Description');
|
||||
$table->head[1] = __('Filter');
|
||||
$table->head[2] = __('Action');
|
||||
$table->size[2] = "50px";
|
||||
|
@ -146,7 +146,7 @@ else {
|
|||
html_print_table ($table);
|
||||
}
|
||||
|
||||
unset ($table);
|
||||
unset ($table);
|
||||
|
||||
echo '<div style="text-align:right; width:98%">';
|
||||
echo '<form name="agente" method="post" action="index.php?sec=estado&sec2=godmode/snmpconsole/snmp_filters&edit_filter=-1">';
|
||||
|
|
|
@ -158,35 +158,35 @@ if ($dialogue_event_response) {
|
|||
}
|
||||
}
|
||||
|
||||
if($add_comment) {
|
||||
if ($add_comment) {
|
||||
$comment = get_parameter ('comment');
|
||||
$event_id = get_parameter ('event_id');
|
||||
|
||||
|
||||
$return = events_comment ($event_id, $comment, 'Added comment', $meta, $history);
|
||||
|
||||
|
||||
if ($return)
|
||||
echo 'comment_ok';
|
||||
else
|
||||
echo 'comment_error';
|
||||
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if($change_status) {
|
||||
if ($change_status) {
|
||||
$event_ids = get_parameter ('event_ids');
|
||||
$new_status = get_parameter ('new_status');
|
||||
|
||||
$return = events_change_status (explode(',',$event_ids), $new_status, $meta, $history);
|
||||
|
||||
|
||||
if ($return)
|
||||
echo 'status_ok';
|
||||
else
|
||||
echo 'status_error';
|
||||
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if($change_owner) {
|
||||
if ($change_owner) {
|
||||
$new_owner = get_parameter ('new_owner');
|
||||
$event_id = get_parameter ('event_id');
|
||||
$similars = true;
|
||||
|
@ -194,23 +194,23 @@ if($change_owner) {
|
|||
if($new_owner == -1) {
|
||||
$new_owner = '';
|
||||
}
|
||||
|
||||
|
||||
$return = events_change_owner($event_id, $new_owner, true, $meta, $history);
|
||||
|
||||
|
||||
if ($return)
|
||||
echo 'owner_ok';
|
||||
else
|
||||
echo 'owner_error';
|
||||
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if($get_extended_event) {
|
||||
if ($get_extended_event) {
|
||||
global $config;
|
||||
|
||||
$event_id = get_parameter('event_id',false);
|
||||
|
||||
if($meta) {
|
||||
|
||||
if ($meta) {
|
||||
$event = events_meta_get_event($event_id, false, $history);
|
||||
}
|
||||
else {
|
||||
|
@ -219,13 +219,13 @@ if($get_extended_event) {
|
|||
|
||||
// Clean url from events and store in array
|
||||
$event['clean_tags'] = events_clean_tags($event['tags']);
|
||||
|
||||
|
||||
// If the event is not found, we abort
|
||||
if(empty($event)) {
|
||||
if (empty($event)) {
|
||||
ui_print_error_message('Event not found');
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
$dialog_page = get_parameter('dialog_page','general');
|
||||
$similar_ids = get_parameter('similar_ids', $event_id);
|
||||
$group_rep = get_parameter('group_rep',false);
|
||||
|
@ -233,27 +233,27 @@ if($get_extended_event) {
|
|||
$timestamp_first = get_parameter('timestamp_first', $event['utimestamp']);
|
||||
$timestamp_last = get_parameter('timestamp_last', $event['utimestamp']);
|
||||
$server_id = get_parameter('server_id', 0);
|
||||
|
||||
|
||||
$event['similar_ids'] = $similar_ids;
|
||||
$event['timestamp_first'] = $timestamp_first;
|
||||
$event['timestamp_last'] = $timestamp_last;
|
||||
$event['event_rep'] = $event_rep;
|
||||
|
||||
|
||||
// Check ACLs
|
||||
if (is_user_admin ($config["id_user"])) {
|
||||
//Do nothing if you're admin, you get full access
|
||||
}
|
||||
else if($config["id_user"] == $event['owner_user']) {
|
||||
else if ($config["id_user"] == $event['owner_user']) {
|
||||
//Do nothing if you're the owner user, you get access
|
||||
}
|
||||
else if($event['id_grupo'] == 0){
|
||||
else if ($event['id_grupo'] == 0) {
|
||||
//If the event has access to all groups, you get access
|
||||
}
|
||||
else {
|
||||
// Get your groups
|
||||
$groups = users_get_groups($config['id_user'], 'ER');
|
||||
|
||||
if(in_array ($event['id_grupo'], array_keys ($groups))) {
|
||||
if (in_array ($event['id_grupo'], array_keys ($groups))) {
|
||||
//If the event group is among the groups of the user, you get access
|
||||
}
|
||||
else {
|
||||
|
@ -265,21 +265,21 @@ if($get_extended_event) {
|
|||
|
||||
// Print group_rep in a hidden field to recover it from javascript
|
||||
html_print_input_hidden('group_rep',(int)$group_rep);
|
||||
|
||||
if($event === false) {
|
||||
|
||||
if ($event === false) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Tabs
|
||||
$tabs = "<ul style='background:#eeeeee;border:0px'>";
|
||||
$tabs .= "<li><a href='#extended_event_general_page' id='link_general'>".html_print_image('images/lightning_go.png',true).__('General')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_details_page' id='link_details'>".html_print_image('images/zoom.png',true).__('Details')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_custom_fields_page' id='link_custom_fields'>".html_print_image('images/note.png',true).__('Agent fields')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_comments_page' id='link_comments'>".html_print_image('images/pencil.png',true).__('Comments')."</a></li>";
|
||||
if (tags_check_acl ($config['id_user'], $event['id_grupo'], "EW", $event['clean_tags']) || tags_check_acl ($config['id_user'], $event['id_grupo'], "EM", $event['clean_tags'])) {
|
||||
$tabs .= "<li><a href='#extended_event_general_page' id='link_general'>".html_print_image('images/lightning_go.png',true).__('General')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_details_page' id='link_details'>".html_print_image('images/zoom.png',true).__('Details')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_custom_fields_page' id='link_custom_fields'>".html_print_image('images/note.png',true).__('Agent fields')."</a></li>";
|
||||
$tabs .= "<li><a href='#extended_event_comments_page' id='link_comments'>".html_print_image('images/pencil.png',true).__('Comments')."</a></li>";
|
||||
if (tags_check_acl ($config['id_user'], $event['id_grupo'], "EW", $event['clean_tags']) || tags_check_acl ($config['id_user'], $event['id_grupo'], "EM", $event['clean_tags'])) {
|
||||
$tabs .= "<li><a href='#extended_event_responses_page' id='link_responses'>".html_print_image('images/cog.png',true).__('Responses')."</a></li>";
|
||||
}
|
||||
$tabs .= "</ul>";
|
||||
$tabs .= "</ul>";
|
||||
|
||||
// Get criticity image
|
||||
switch ($event["criticity"]) {
|
||||
|
@ -307,7 +307,7 @@ if($get_extended_event) {
|
|||
break;
|
||||
}
|
||||
|
||||
if (tags_check_acl ($config['id_user'], $event['id_grupo'], "EW", $event['clean_tags']) || tags_check_acl ($config['id_user'], $event['id_grupo'], "EM", $event['clean_tags'])) {
|
||||
if (tags_check_acl ($config['id_user'], $event['id_grupo'], "EW", $event['clean_tags']) || tags_check_acl ($config['id_user'], $event['id_grupo'], "EM", $event['clean_tags'])) {
|
||||
$responses = events_page_responses($event);
|
||||
}
|
||||
else {
|
||||
|
@ -316,19 +316,19 @@ if($get_extended_event) {
|
|||
|
||||
$console_url = '';
|
||||
// If metaconsole switch to node to get details and custom fields
|
||||
if($meta) {
|
||||
if ($meta) {
|
||||
$server = metaconsole_get_connection_by_id ($server_id);
|
||||
metaconsole_connect($server);
|
||||
}
|
||||
else {
|
||||
$server = "";
|
||||
}
|
||||
|
||||
|
||||
$details = events_page_details($event, $server);
|
||||
|
||||
$custom_fields = events_page_custom_fields($event);
|
||||
|
||||
if($meta) {
|
||||
|
||||
if ($meta) {
|
||||
metaconsole_restore_db_force();
|
||||
}
|
||||
|
||||
|
@ -342,7 +342,7 @@ if($get_extended_event) {
|
|||
$notifications .= '<div id="notification_status_success" style="display:none">'.ui_print_success_message(__('Event status changed successfully'),'',true).'</div>';
|
||||
$notifications .= '<div id="notification_owner_error" style="display:none">'.ui_print_error_message(__('Error changing event owner'),'',true).'</div>';
|
||||
$notifications .= '<div id="notification_owner_success" style="display:none">'.ui_print_success_message(__('Event owner changed successfully'),'',true).'</div>';
|
||||
|
||||
|
||||
$loading = '<div id="response_loading" style="display:none">'.html_print_image('images/spinner.gif',true).'</div>';
|
||||
|
||||
$out = '<div id="tabs" style="height:95%; overflow: auto">'.
|
||||
|
@ -364,7 +364,7 @@ if($get_extended_event) {
|
|||
';
|
||||
|
||||
// Load the required tab
|
||||
switch($dialog_page) {
|
||||
switch ($dialog_page) {
|
||||
case "general":
|
||||
$js .= '$tabs.tabs( "option", "active", 0);';
|
||||
break;
|
||||
|
@ -389,13 +389,13 @@ if($get_extended_event) {
|
|||
echo $out.$js;
|
||||
}
|
||||
|
||||
if($get_events_details) {
|
||||
if ($get_events_details) {
|
||||
$event_ids = explode(',',get_parameter ('event_ids'));
|
||||
$events = db_get_all_rows_filter ('tevento',
|
||||
array ('id_evento' => $event_ids,
|
||||
'order' => 'utimestamp ASC'),
|
||||
array ('evento', 'utimestamp', 'estado', 'criticity'));
|
||||
|
||||
|
||||
$out = '<table class="eventtable" style="width:100%;height:100%;padding:0px 0px 0px 0px; border-spacing: 0px; margin: 0px 0px 0px 0px;">';
|
||||
$out .= '<tr style="font-size:0px; heigth: 0px; background: #ccc;"><td></td><td></td></tr>';
|
||||
foreach($events as $event) {
|
||||
|
@ -413,7 +413,7 @@ if($get_events_details) {
|
|||
$title = __('Event in process');
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
$out .= '<tr class="'.get_priority_class ($event['criticity']).'"><td class="'.get_priority_class ($event['criticity']).'">';
|
||||
$out .= '<img src="'.$img.'" alt="'.$title.'" title="'.$title.'">';
|
||||
$out .= '</td><td class="'.get_priority_class ($event['criticity']).'" style="font-size:7pt">';
|
||||
|
|
|
@ -1679,9 +1679,18 @@ function events_page_custom_fields ($event) {
|
|||
$table->style[1] = 'text-align: left;';
|
||||
$table->class = "databox alternate";
|
||||
|
||||
$fields = db_get_all_rows_filter('tagent_custom_fields');
|
||||
$all_customs_fields = (bool)check_acl($config["id_user"],
|
||||
$agent["id_grupo"], "AW");
|
||||
|
||||
if($event['id_agente'] == 0) {
|
||||
if ($all_customs_fields) {
|
||||
$fields = db_get_all_rows_filter('tagent_custom_fields');
|
||||
}
|
||||
else {
|
||||
$fields = db_get_all_rows_filter('tagent_custom_fields',
|
||||
array('display_on_front' => 1));
|
||||
}
|
||||
|
||||
if ($event['id_agente'] == 0) {
|
||||
$fields_data = array();
|
||||
}
|
||||
else {
|
||||
|
@ -1695,7 +1704,7 @@ function events_page_custom_fields ($event) {
|
|||
}
|
||||
}
|
||||
|
||||
foreach($fields as $field) {
|
||||
foreach ($fields as $field) {
|
||||
// Owner
|
||||
$data = array();
|
||||
$data[0] = $field['name'];
|
||||
|
|
|
@ -31,15 +31,23 @@ if ($id_agente === -1) {
|
|||
|
||||
if (! check_acl ($config["id_user"], $agent["id_grupo"], "AR")) {
|
||||
db_pandora_audit("ACL Violation",
|
||||
"Trying to access Agent General Information");
|
||||
"Trying to access Agent General Information");
|
||||
require_once ("general/noaccess.php");
|
||||
return;
|
||||
}
|
||||
|
||||
$all_customs_fields = (bool)check_acl($config["id_user"],
|
||||
$agent["id_grupo"], "AW");
|
||||
|
||||
$fields = db_get_all_fields_in_table('tagent_custom_fields');
|
||||
if ($all_customs_fields) {
|
||||
$fields = db_get_all_rows_filter('tagent_custom_fields');
|
||||
}
|
||||
else {
|
||||
$fields = db_get_all_rows_filter('tagent_custom_fields',
|
||||
array('display_on_front' => 1));
|
||||
}
|
||||
|
||||
if($fields === false) {
|
||||
if ($fields === false) {
|
||||
$fields = array();
|
||||
echo "<div class='nf'>". __("No fields defined"). "</div>";
|
||||
}
|
||||
|
@ -47,35 +55,39 @@ else {
|
|||
$table->width = '98%';
|
||||
$table->head = array ();
|
||||
$table->head[0] = __('Field');
|
||||
$table->head[1] = __('Display on front') . ui_print_help_tip (__('The fields with display on front enabled will be displayed into the agent details'), true);
|
||||
$table->head[1] = __('Display on front') .
|
||||
ui_print_help_tip (__('The fields with display on front enabled will be displayed into the agent details'), true);
|
||||
$table->head[2] = __('Description');
|
||||
$table->align = array ();
|
||||
$table->align[1] = 'center';
|
||||
$table->align[2] = 'center';
|
||||
$table->data = array ();
|
||||
|
||||
foreach ($fields as $field) {
|
||||
|
||||
foreach ($fields as $field) {
|
||||
|
||||
$data[0] = '<b>'.$field['name'].'</b>';
|
||||
|
||||
if($field['display_on_front']) {
|
||||
|
||||
if ($field['display_on_front']) {
|
||||
$data[1] = html_print_image('images/tick.png', true);
|
||||
}
|
||||
else {
|
||||
$data[1] = html_print_image('images/delete.png', true);
|
||||
}
|
||||
|
||||
$custom_value = db_get_value_filter('description', 'tagent_custom_data', array('id_field' => $field['id_field'], 'id_agent' => $id_agente));
|
||||
|
||||
if($custom_value === false || $custom_value == '') {
|
||||
$custom_value = db_get_value_filter('description',
|
||||
'tagent_custom_data', array(
|
||||
'id_field' => $field['id_field'],
|
||||
'id_agent' => $id_agente));
|
||||
|
||||
if ($custom_value === false || $custom_value == '') {
|
||||
$custom_value = '<i>-'.__('empty').'-</i>';
|
||||
}
|
||||
|
||||
|
||||
$data[2] = $custom_value;
|
||||
|
||||
|
||||
array_push ($table->data, $data);
|
||||
}
|
||||
|
||||
|
||||
html_print_table ($table);
|
||||
}
|
||||
?>
|
||||
|
|
Loading…
Reference in New Issue