array( 'active' => false, 'text' => '' . html_print_image ("images/god3.png", true, array ("title" => __('User management'))) .''), 'profile' => array( 'active' => false, 'text' => '' . html_print_image ("images/profiles.png", true, array ("title" => __('Profile management'))) .'')); $buttons[$tab]['active'] = true; // Header ui_print_page_header (__('User management').' » '.__('Profiles defined in Pandora'), "images/god3.png", false, "", true, $buttons); $new_profile = (bool) get_parameter ('new_profile'); $create_profile = (bool) get_parameter ('create_profile'); $delete_profile = (bool) get_parameter ('delete_profile'); $update_profile = (bool) get_parameter ('update_profile'); $id_profile = (int) get_parameter ('id'); // Profile deletion if ($delete_profile) { // Delete profile $profile = db_get_row('tperfil', 'id_perfil', $id_profile); $sql = sprintf ('DELETE FROM tperfil WHERE id_perfil = %d', $id_profile); $ret = db_process_sql ($sql); if ($ret === false) { echo '

'.__('There was a problem deleting the profile').'

'; } else { db_pandora_audit("Profile management", "Delete profile ". $profile['name']); echo '

'.__('Successfully deleted').'

'; echo '« Back'; } //Delete profile from user data $sql = sprintf ('DELETE FROM tusuario_perfil WHERE id_perfil = %d', $id_profile); db_process_sql ($sql); $id_profile = 0; } // Update profile if ($update_profile) { $name = get_parameter ("name"); $incident_view = (bool) get_parameter ("incident_view"); $incident_edit = (bool) get_parameter ("incident_edit"); $incident_management = (bool) get_parameter ("incident_management"); $agent_view = (bool) get_parameter ("agent_view"); $agent_edit = (bool) get_parameter ("agent_edit"); $alert_edit = (bool) get_parameter ("alert_edit"); $user_management = (bool) get_parameter ("user_management"); $db_management = (bool) get_parameter ("db_management"); $alert_management = (bool) get_parameter ("alert_management"); $pandora_management = (bool) get_parameter ("pandora_management"); $sql = sprintf ('UPDATE tperfil SET name = "%s", incident_view = %d, incident_edit = %d, incident_management = %d, agent_view = %d, agent_edit = %d, alert_edit = %d, user_management = %d, db_management = %d, alert_management = %d, pandora_management = %d WHERE id_perfil = %d', $name, $incident_view, $incident_edit, $incident_management, $agent_view, $agent_edit, $alert_edit, $user_management, $db_management, $alert_management, $pandora_management, $id_profile); $ret = db_process_sql ($sql); if ($ret !== false) { $info = 'Name: ' . $name . ' Incident view: ' . $incident_view . ' Incident edit: ' . $incident_edit . ' Incident management: ' . $incident_management . ' Agent view: ' . $agent_view . ' Agent edit: ' . $agent_edit . ' Alert edit: ' . $alert_edit . ' User management: ' . $user_management . ' DB management: ' . $db_management . ' Alert management: ' . $alert_management . ' Pandora Management: ' . $pandora_management; db_pandora_audit("User management", "Update profile ". $name, false, false, $info); echo '

'.__('Successfully updated').'

'; echo '« Back'; } else { echo '

'; } $id_profile = 0; } // Create profile if ($create_profile) { $name = get_parameter ("name"); $incident_view = (bool) get_parameter ("incident_view"); $incident_edit = (bool) get_parameter ("incident_edit"); $incident_management = (bool) get_parameter ("incident_management"); $agent_view = (bool) get_parameter ("agent_view"); $agent_edit = (bool) get_parameter ("agent_edit"); $alert_edit = (bool) get_parameter ("alert_edit"); $user_management = (bool) get_parameter ("user_management"); $db_management = (bool) get_parameter ("db_management"); $alert_management = (bool) get_parameter ("alert_management"); $pandora_management = (bool) get_parameter ("pandora_management"); $values = array( 'name' => $name, 'incident_view' => $incident_view, 'incident_edit' => $incident_edit, 'incident_management' => $incident_management, 'agent_view' => $agent_view, 'agent_edit' => $agent_edit, 'alert_edit' => $alert_edit, 'user_management' => $user_management, 'db_management' => $db_management, 'alert_management' => $alert_management, 'pandora_management' => $pandora_management); $ret = db_process_sql_insert('tperfil', $values); if ($ret !== false) { echo '

'.__('Successfully created').'

'; echo '« Back'; $info = 'Name: ' . $name . ' Incident view: ' . $incident_view . ' Incident edit: ' . $incident_edit . ' Incident management: ' . $incident_management . ' Agent view: ' . $agent_view . ' Agent edit: ' . $agent_edit . ' Alert edit: ' . $alert_edit . ' User management: ' . $user_management . ' DB management: ' . $db_management . ' Alert management: ' . $alert_management . ' Pandora Management: ' . $pandora_management; db_pandora_audit("User management", "Created profile ". $name, false, false, $info); } else { echo '

'.__('There was a problem creating this profile').'

'; } $id_profile = 0; } // Edit profile if ($id_profile || $new_profile) { if ($new_profile) { $name = ''; $incident_view = 0; $incident_edit = 0; $incident_management = 0; $agent_view = 0; $agent_edit = 0; $alert_edit = 0; $user_management = 0; $db_management = 0; $alert_management = 0; $pandora_management = 0; $page_title = __('Create profile'); } else { $profile = db_get_row ('tperfil', 'id_perfil', $id_profile); if ($profile === false) { echo '

'.__('There was a problem loading profile').'

'; echo ''; echo '
 
'; echo ''; echo ''; echo ''; exit; } $name = $profile["name"]; $incident_view = (bool) $profile["incident_view"]; $incident_edit = (bool) $profile["incident_edit"]; $incident_management = (bool) $profile["incident_management"]; $agent_view = (bool) $profile["agent_view"]; $agent_edit = (bool) $profile["agent_edit"]; $alert_edit = (bool) $profile["alert_edit"]; $user_management = (bool) $profile["user_management"]; $db_management = (bool) $profile["db_management"]; $alert_management = (bool) $profile["alert_management"]; $pandora_management = (bool) $profile["pandora_management"]; $id_audit = db_pandora_audit("User management", "Edit profile ". $name); enterprise_include_once('include/functions_audit.php'); $info = 'Name: ' . $name . ' Incident view: ' . $incident_view . ' Incident edit: ' . $incident_edit . ' Incident management: ' . $incident_management . ' Agent view: ' . $agent_view . ' Agent edit: ' . $agent_edit . ' Alert edit: ' . $alert_edit . ' User management: ' . $user_management . ' DB management: ' . $db_management . ' Alert management: ' . $alert_management . ' Pandora Management: ' . $pandora_management; enterprise_hook('audit_pandora_enterprise', array($id_audit, $info)); $page_title = __('Update profile'); } $table->width = '98%'; $table->class = 'databox'; $table->size = array (); $table->style = array (); $table->style[0] = 'font-weight: bold'; $table->data = array (); $table->data[0][0] = __('Profile name'); $table->data[0][1] = html_print_input_text ('name', $name, '', 30, 60, true); $table->data[1][0] = __('View incidents'); $table->data[1][1] = html_print_checkbox ('incident_view', 1, $incident_view, true); $table->data[2][0] = __('Edit incidents'); $table->data[2][1] = html_print_checkbox ('incident_edit', 1, $incident_edit, true); $table->data[3][0] = __('Manage incidents'); $table->data[3][1] = html_print_checkbox ('incident_management', 1, $incident_management, true); $table->data[4][0] = __('View agents'); $table->data[4][1] = html_print_checkbox ('agent_view', 1, $agent_view, true); $table->data[5][0] = __('Edit agents'); $table->data[5][1] = html_print_checkbox ('agent_edit', 1, $agent_edit, true); $table->data[6][0] = __('Edit alerts'); $table->data[6][1] = html_print_checkbox ('alert_edit', 1, $alert_edit, true); $table->data[7][0] = __('Manage alerts'); $table->data[7][1] = html_print_checkbox ('alert_management', 1, $alert_management, true); $table->data[8][0] = __('Manage users'); $table->data[8][1] = html_print_checkbox ('user_management', 1, $user_management, true); $table->data[9][0] = __('Manage Database'); $table->data[9][1] = html_print_checkbox ('db_management', 1, $db_management, true); $table->data[10][0] = __('Pandora management'); $table->data[10][1] = html_print_checkbox ('pandora_management', 1, $pandora_management, true); echo '
'; html_print_table ($table); echo '
'; if ($new_profile) { html_print_submit_button (__('Add'), "crt", false, 'class="sub wand"'); html_print_input_hidden ('create_profile', 1); } else { html_print_input_hidden ('id', $id_profile); html_print_input_hidden ('update_profile', 1); html_print_submit_button (__('Update'), "upd", false, 'class="sub upd"'); } echo "
"; } ?>