684 lines
17 KiB
JavaScript
684 lines
17 KiB
JavaScript
// Show the modal window of an event
|
|
function show_event_dialog(event_id, group_rep, dialog_page, result) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
if (dialog_page == undefined) {
|
|
dialog_page = "general";
|
|
}
|
|
|
|
var similar_ids = $("#hidden-similar_ids_" + event_id).val();
|
|
var timestamp_first = $("#hidden-timestamp_first_" + event_id).val();
|
|
var timestamp_last = $("#hidden-timestamp_last_" + event_id).val();
|
|
var user_comment = $("#hidden-user_comment_" + event_id).val();
|
|
var event_rep = $("#hidden-event_rep_" + event_id).val();
|
|
var server_id = $("#hidden-server_id_" + event_id).val();
|
|
var childrens_ids = $("#hidden-childrens_ids").val();
|
|
|
|
// Metaconsole mode flag
|
|
var meta = $("#hidden-meta").val();
|
|
|
|
// History mode flag
|
|
var history = $("#hidden-history").val();
|
|
|
|
jQuery.post(
|
|
ajax_file,
|
|
{
|
|
page: "include/ajax/events",
|
|
get_extended_event: 1,
|
|
group_rep: group_rep,
|
|
event_rep: event_rep,
|
|
dialog_page: dialog_page,
|
|
similar_ids: similar_ids,
|
|
timestamp_first: timestamp_first,
|
|
timestamp_last: timestamp_last,
|
|
user_comment: user_comment,
|
|
event_id: event_id,
|
|
server_id: server_id,
|
|
meta: meta,
|
|
childrens_ids: childrens_ids,
|
|
history: history
|
|
},
|
|
function(data, status) {
|
|
$("#event_details_window")
|
|
.hide()
|
|
.empty()
|
|
.append(data)
|
|
.dialog({
|
|
title: get_event_name(event_id, meta, history),
|
|
resizable: true,
|
|
draggable: true,
|
|
modal: true,
|
|
close: function() {
|
|
$("#refrcounter").countdown("resume");
|
|
$("div.vc-countdown").countdown("resume");
|
|
},
|
|
overlay: {
|
|
opacity: 0.5,
|
|
background: "black"
|
|
},
|
|
width: 725,
|
|
height: 530
|
|
})
|
|
.show();
|
|
|
|
$("#refrcounter").countdown("pause");
|
|
$("div.vc-countdown").countdown("pause");
|
|
|
|
switch (result) {
|
|
case "comment_ok":
|
|
$("#notification_comment_success").show();
|
|
break;
|
|
case "comment_error":
|
|
$("#notification_comment_error").show();
|
|
break;
|
|
case "status_ok":
|
|
$("#notification_status_success").show();
|
|
break;
|
|
case "status_error":
|
|
$("#notification_status_error").show();
|
|
break;
|
|
case "owner_ok":
|
|
$("#notification_owner_success").show();
|
|
break;
|
|
case "owner_error":
|
|
$("#notification_owner_error").show();
|
|
break;
|
|
}
|
|
|
|
forced_title_callback();
|
|
},
|
|
"html"
|
|
);
|
|
return false;
|
|
}
|
|
|
|
function show_save_filter_dialog() {
|
|
$('input:radio[name="filter_mode"]')
|
|
.filter('[value="new"]')
|
|
.trigger("click");
|
|
$("#save_filter_layer")
|
|
.dialog({
|
|
title: $("#save_filter_text").html(),
|
|
resizable: true,
|
|
draggable: true,
|
|
modal: true,
|
|
overlay: {
|
|
opacity: 0.5,
|
|
background: "black"
|
|
},
|
|
width: 688,
|
|
height: 200
|
|
})
|
|
.show();
|
|
return false;
|
|
}
|
|
|
|
function show_load_filter_dialog() {
|
|
$("#load_filter_layer")
|
|
.dialog({
|
|
title: $("#load_filter_text").html(),
|
|
resizable: true,
|
|
draggable: true,
|
|
modal: true,
|
|
overlay: {
|
|
opacity: 0.5,
|
|
background: "black"
|
|
},
|
|
width: 520,
|
|
height: 300
|
|
})
|
|
.show();
|
|
return false;
|
|
}
|
|
|
|
// Check the response type and open it in a modal dialog or new window
|
|
function execute_response(event_id, server_id) {
|
|
var response_id = $("#select_custom_response option:selected").val();
|
|
|
|
var response = get_response(response_id);
|
|
|
|
// If cannot get response abort it
|
|
if (response == null) {
|
|
return;
|
|
}
|
|
|
|
response["target"] = get_response_target(event_id, response_id, server_id);
|
|
|
|
switch (response["type"]) {
|
|
case "command":
|
|
show_response_dialog(event_id, response_id, response);
|
|
break;
|
|
case "url":
|
|
if (response["new_window"] == 1) {
|
|
window.open(response["target"], "_blank");
|
|
} else {
|
|
show_response_dialog(event_id, response_id, response);
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
//Show the modal window of an event response
|
|
function show_response_dialog(event_id, response_id, response) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("dialogue_event_response=1");
|
|
params.push("massive=0");
|
|
params.push("event_id=" + event_id);
|
|
params.push("target=" + response["target"]);
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
dataType: "html",
|
|
success: function(data) {
|
|
$("#event_response_window")
|
|
.hide()
|
|
.empty()
|
|
.append(data)
|
|
.dialog({
|
|
title: $("#select_custom_response option:selected").html(),
|
|
resizable: true,
|
|
draggable: true,
|
|
modal: false,
|
|
open: function(event, ui) {
|
|
perform_response(response["target"], response_id);
|
|
},
|
|
width: response["modal_width"],
|
|
height: response["modal_height"]
|
|
})
|
|
.show();
|
|
}
|
|
});
|
|
}
|
|
|
|
//Show the modal window of event responses when multiple events are selected
|
|
function show_massive_response_dialog(
|
|
event_id,
|
|
response_id,
|
|
response,
|
|
out_iterator,
|
|
end
|
|
) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("dialogue_event_response=1");
|
|
params.push("massive=1");
|
|
params.push("end=" + end);
|
|
params.push("out_iterator=" + out_iterator);
|
|
params.push("event_id=" + event_id);
|
|
params.push("target=" + response["target"]);
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
response_tg: response["target"],
|
|
response_id: response_id,
|
|
out_iterator: out_iterator,
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
dataType: "html",
|
|
success: function(data) {
|
|
if (out_iterator === 0) $("#event_response_window").empty();
|
|
|
|
$("#event_response_window")
|
|
.hide()
|
|
.append(data)
|
|
.dialog({
|
|
title: $("#select_custom_response option:selected").html(),
|
|
resizable: true,
|
|
draggable: true,
|
|
modal: false,
|
|
open: function(event, ui) {
|
|
$("#response_loading_dialog").hide();
|
|
$("#button-submit_event_response").show();
|
|
},
|
|
close: function(event, ui) {
|
|
$(".chk_val").prop("checked", false);
|
|
},
|
|
width: response["modal_width"],
|
|
height: response["modal_height"]
|
|
})
|
|
.show();
|
|
|
|
perform_response_massive(
|
|
this.response_tg,
|
|
this.response_id,
|
|
this.out_iterator
|
|
);
|
|
}
|
|
});
|
|
}
|
|
|
|
// Get an event response from db
|
|
function get_response(response_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var response = "";
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("get_response=1");
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: false,
|
|
timeout: 10000,
|
|
dataType: "json",
|
|
success: function(data) {
|
|
response = data;
|
|
}
|
|
});
|
|
|
|
return response;
|
|
}
|
|
|
|
// Get an event response params from db
|
|
function get_response_params(response_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var response_params;
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("get_response_params=1");
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: false,
|
|
timeout: 10000,
|
|
dataType: "json",
|
|
success: function(data) {
|
|
response_params = data;
|
|
}
|
|
});
|
|
|
|
return response_params;
|
|
}
|
|
|
|
// Get an event response description from db
|
|
function get_response_description(response_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var response_description = "";
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("get_response_description=1");
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: false,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
response_description = data;
|
|
}
|
|
});
|
|
|
|
return response_description;
|
|
}
|
|
|
|
// Get an event response description from db
|
|
function get_event_name(event_id, meta, history) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var name = "";
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("get_event_name=1");
|
|
params.push("event_id=" + event_id);
|
|
params.push("meta=" + meta);
|
|
params.push("history=" + history);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: false,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
name = data;
|
|
}
|
|
});
|
|
|
|
return name;
|
|
}
|
|
|
|
function add_row_param(id_table, param) {
|
|
$("#" + id_table).append(
|
|
'<tr class="params_rows"><td style="text-align:left; padding-left:40px;">' +
|
|
param +
|
|
'</td><td style="text-align:left"><input type="text" name="' +
|
|
param +
|
|
'" id="' +
|
|
param +
|
|
'"></td></tr>'
|
|
);
|
|
}
|
|
|
|
// Get an event response from db
|
|
function get_response_target(event_id, response_id, server_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var target = "";
|
|
|
|
// Replace the main macros
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("get_response_target=1");
|
|
params.push("event_id=" + event_id);
|
|
params.push("response_id=" + response_id);
|
|
params.push("server_id=" + server_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: false,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
target = data;
|
|
}
|
|
});
|
|
|
|
// Replace the custom params macros
|
|
var response_params = get_response_params(response_id);
|
|
|
|
if (response_params.length > 1 || response_params[0] != "") {
|
|
for (i = 0; i < response_params.length; i++) {
|
|
target = target.replace(
|
|
"_" + response_params[i] + "_",
|
|
$("#" + response_params[i]).val()
|
|
);
|
|
}
|
|
}
|
|
|
|
return target;
|
|
}
|
|
|
|
// Perform a response and put the output into a div
|
|
function perform_response(target, response_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
$("#re_exec_command").hide();
|
|
$("#response_loading_command").show();
|
|
$("#response_out").html("");
|
|
|
|
var finished = 0;
|
|
var time = Math.round(+new Date() / 1000);
|
|
var timeout = time + 10;
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("perform_event_response=1");
|
|
params.push("target=" + target);
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: true,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
var out = data.replace(/[\n|\r]/g, "<br>");
|
|
$("#response_out").html(out);
|
|
$("#response_loading_command").hide();
|
|
$("#re_exec_command").show();
|
|
}
|
|
});
|
|
|
|
return false;
|
|
}
|
|
|
|
// Perform a response and put the output into a div
|
|
function perform_response_massive(target, response_id, out_iterator) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
$("#re_exec_command").hide();
|
|
$("#response_loading_command_" + out_iterator).show();
|
|
$("#response_out_" + out_iterator).html("");
|
|
|
|
var finished = 0;
|
|
var time = Math.round(+new Date() / 1000);
|
|
var timeout = time + 10;
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("perform_event_response=1");
|
|
params.push("target=" + target);
|
|
params.push("response_id=" + response_id);
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: true,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
var out = data.replace(/[\n|\r]/g, "<br>");
|
|
$("#response_out_" + out_iterator).html(out);
|
|
$("#response_loading_command_" + out_iterator).hide();
|
|
$("#re_exec_command_" + out_iterator).show();
|
|
}
|
|
});
|
|
|
|
return false;
|
|
}
|
|
|
|
// Change the status of an event to new, in process or validated
|
|
function event_change_status(event_ids) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var new_status = $("#estado").val();
|
|
var event_id = $("#hidden-id_event").val();
|
|
var meta = $("#hidden-meta").val();
|
|
var history = $("#hidden-history").val();
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("change_status=1");
|
|
params.push("event_ids=" + event_ids);
|
|
params.push("new_status=" + new_status);
|
|
params.push("meta=" + meta);
|
|
params.push("history=" + history);
|
|
|
|
$("#button-status_button").attr("disabled", "disabled");
|
|
$("#response_loading").show();
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: true,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
$("#button-status_button").removeAttr("disabled");
|
|
$("#response_loading").hide();
|
|
show_event_dialog(
|
|
event_id,
|
|
$("#hidden-group_rep").val(),
|
|
"responses",
|
|
data
|
|
);
|
|
if (data == "status_ok") {
|
|
} else {
|
|
}
|
|
}
|
|
});
|
|
return false;
|
|
}
|
|
|
|
// Change te owner of an event to one user of empty
|
|
function event_change_owner() {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var event_id = $("#hidden-id_event").val();
|
|
var new_owner = $("#id_owner").val();
|
|
var meta = $("#hidden-meta").val();
|
|
var history = $("#hidden-history").val();
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("change_owner=1");
|
|
params.push("event_id=" + event_id);
|
|
params.push("new_owner=" + new_owner);
|
|
params.push("meta=" + meta);
|
|
params.push("history=" + history);
|
|
|
|
$("#button-owner_button").attr("disabled", "disabled");
|
|
$("#response_loading").show();
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: true,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
$("#button-owner_button").removeAttr("disabled");
|
|
$("#response_loading").hide();
|
|
|
|
show_event_dialog(
|
|
event_id,
|
|
$("#hidden-group_rep").val(),
|
|
"responses",
|
|
data
|
|
);
|
|
}
|
|
});
|
|
|
|
return false;
|
|
}
|
|
|
|
// Save a comment into an event
|
|
function event_comment() {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
|
|
var event_id = $("#hidden-id_event").val();
|
|
var comment = $("#textarea_comment").val();
|
|
var meta = $("#hidden-meta").val();
|
|
var history = $("#hidden-history").val();
|
|
|
|
if (comment == "") {
|
|
show_event_dialog(
|
|
event_id,
|
|
$("#hidden-group_rep").val(),
|
|
"comments",
|
|
"comment_error"
|
|
);
|
|
return false;
|
|
}
|
|
|
|
var params = [];
|
|
params.push("page=include/ajax/events");
|
|
params.push("add_comment=1");
|
|
params.push("event_id=" + event_id);
|
|
params.push("comment=" + comment);
|
|
params.push("meta=" + meta);
|
|
params.push("history=" + history);
|
|
|
|
$("#button-comment_button").attr("disabled", "disabled");
|
|
$("#response_loading").show();
|
|
|
|
jQuery.ajax({
|
|
data: params.join("&"),
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
async: true,
|
|
timeout: 10000,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
$("#button-comment_button").removeAttr("disabled");
|
|
$("#response_loading").show();
|
|
|
|
show_event_dialog(
|
|
event_id,
|
|
$("#hidden-group_rep").val(),
|
|
"comments",
|
|
data
|
|
);
|
|
}
|
|
});
|
|
|
|
return false;
|
|
}
|
|
|
|
//Show event list when fielter repetead is Group agents
|
|
function show_events_group_agent(id_insert, id_agent, server_id) {
|
|
var ajax_file = $("#hidden-ajax_file").val();
|
|
parameter = [];
|
|
parameter.push({ name: "id_agent", value: id_agent });
|
|
parameter.push({ name: "server_id", value: server_id });
|
|
parameter.push({ name: "event_type", value: $("#event_type").val() });
|
|
parameter.push({ name: "severity", value: $("#severity").val() });
|
|
parameter.push({ name: "status", value: $("#status").val() });
|
|
parameter.push({ name: "search", value: $("#text-search").val() });
|
|
parameter.push({
|
|
name: "id_agent_module",
|
|
value: $("input:hidden[name=module_search_hidden]").val()
|
|
});
|
|
parameter.push({
|
|
name: "event_view_hr",
|
|
value: $("#text-event_view_hr").val()
|
|
});
|
|
parameter.push({ name: "id_user_ack", value: $("#id_user_ack").val() });
|
|
parameter.push({
|
|
name: "tag_with",
|
|
value: Base64.decode($("#hidden-tag_with").val())
|
|
});
|
|
parameter.push({
|
|
name: "tag_without",
|
|
value: Base64.decode($("#hidden-tag_without").val())
|
|
});
|
|
parameter.push({
|
|
name: "filter_only_alert",
|
|
value: $("#filter_only_alert").val()
|
|
});
|
|
parameter.push({ name: "date_from", value: $("#text-date_from").val() });
|
|
parameter.push({ name: "date_to", value: $("#text-date_to").val() });
|
|
parameter.push({ name: "server_id_search", value: $("#server_id").val() });
|
|
parameter.push({
|
|
name: "page",
|
|
value: "include/ajax/events"
|
|
});
|
|
parameter.push({
|
|
name: "get_list_events_agents",
|
|
value: 1
|
|
});
|
|
|
|
jQuery.ajax({
|
|
type: "POST",
|
|
url: (action = ajax_file),
|
|
data: parameter,
|
|
dataType: "html",
|
|
success: function(data) {
|
|
$("#" + id_insert).html(data);
|
|
$("#" + id_insert).toggle();
|
|
}
|
|
});
|
|
}
|