'.__('Successfully created').''; } else { echo '

'.__('Could not be created').'

'; } if (is_ajax ()) { return; } } if ($delete_layout) { process_sql_delete ('tlayout_data', array ('id_layout' => $id_layout)); $result = process_sql_delete ('tlayout', array ('id' => $id_layout)); if ($result) { echo '

'.__('Successfully deleted').'

'; } else { echo '

'.__('Not deleted. Error deleting data').'

'; } $id_layout = 0; } if ($update_layout) { $name = (string) get_parameter ('name'); $id_group = (int) get_parameter ('id_group', 1); $width = (int) get_parameter ('width', 0); $height = (int) get_parameter ('height', 0); $background = (string) get_parameter ('background'); $bg_info = array (0, 0); if (file_exists ('images/console/background/'.$background)) $bg_info = getimagesize ('images/console/background/'.$background); if (! $width) $width = $bg_info[0]; if (! $height) $height = $bg_info[1]; $values = array ('name' => $name, 'background' => $background, 'height' => $height, 'width' => $width, 'id_group' => $id_group); $result = process_sql_update ('tlayout', $values, array ('id' => $id_layout)); print_result_message ($result, __('Update layout successful'), __('Update layout failed')); if (is_ajax ()) { return; } } if ($get_background_info) { $file = (string) get_parameter ('background'); if (file_exists ('images/console/background/'.$file)){ $info = getimagesize ('images/console/background/'.$file); $info['width'] = $info[0]; $info['height'] = $info[1]; } if (is_ajax ()) { echo json_encode ($info); return; } } if ($get_layout_data) { $id_layout_data = (int) get_parameter ('id_layout_data'); $layout_data = get_db_row ('tlayout_data', 'id', $id_layout_data); if ($layout_data['id_agente_modulo']) $layout_data['id_agent'] = give_agent_id_from_module_id ($layout_data['id_agente_modulo']); if (is_ajax ()) { echo json_encode ($layout_data); return; } } if ($create_layout_data) { $layout_data_type = (int) get_parameter ("type"); $layout_data_label = (string) get_parameter ("label"); $layout_data_image = (string) get_parameter ("image"); $layout_data_id_agent = (int) get_parameter ("agent"); $layout_data_id_agent_module = (int) get_parameter ("module"); $layout_data_label_color = (string) get_parameter ("label_color"); $layout_data_parent_item = (int) get_parameter ("parent_item"); $layout_data_period = (int) get_parameter ("period"); $layout_data_map_linked = (int) get_parameter ("map_linked"); $layout_data_width = (int) get_parameter ("width"); $layout_data_height = (int) get_parameter ("height"); $values = array ('id_layout' => $id_layout, 'label' => $layout_data_label, 'id_layout_linked' => $layout_data_map_linked, 'label_color' => $layout_data_label_color, 'image' => $layout_data_image, 'type' => $layout_data_type, 'id_agent' => $layout_data_id_agent, 'id_agente_modulo' => $layout_data_id_agent_module, 'parent_item' => $layout_data_parent_item, 'period' => $layout_data_period * 3600, 'no_link_color' => 1, 'width' => $layout_data_width, 'height' => $layout_data_height); $result = process_sql_insert ('tlayout_data', $values); if ($result !== false) { echo '

'.__('Successfully created').'

'; } else { echo '

'.__('Could not be created').'

'; } if (is_ajax ()) { return; } } if ($update_layout_data_coords) { $id_layout_data = (int) get_parameter ('id_layout_data'); $layout_data_x = (int) get_parameter ("coord_x"); $layout_data_y = (int) get_parameter ("coord_y"); $sql = sprintf ('UPDATE tlayout_data SET pos_x = %d, pos_y = %d WHERE id = %d', $layout_data_x, $layout_data_y, $id_layout_data); process_sql_update ('tlayout_data', array ('pos_x' => $layout_data_x, 'pos_y' => $layout_data_y), array ('id' => $id_layout_data)); if (is_ajax ()) { return; } } if ($delete_layout_data) { $ids_layout_data = (array) get_parameter ('ids_layout_data'); foreach ($ids_layout_data as $id_layout_data) { process_sql_update ('tlayout_data', array ('parent_item' => 0), array ('parent_item' => $id_layout_data)); $sql = sprintf ('DELETE FROM tlayout_data WHERE id = %d', $id_layout_data); process_sql_delete ('tlayout_data', array ('id' => $id_layout_data)); } if (is_ajax ()) { return; } } if ($update_layout_data) { $id_layout_data = (int) get_parameter ('id_layout_data'); $layout_data_type = (int) get_parameter ("type"); $layout_data_label = (string) get_parameter ("label"); $layout_data_image = (string) get_parameter ("image"); $layout_data_id_agent = (int) get_parameter ("agent"); $layout_data_id_agent_module = (int) get_parameter ("module"); $layout_data_label_color = (string) get_parameter ("label_color"); $layout_data_parent_item = (int) get_parameter ("parent_item"); $layout_data_period = (int) get_parameter ("period"); $layout_data_map_linked = (int) get_parameter ("map_linked"); $layout_data_width = (int) get_parameter ("width"); $layout_data_height = (int) get_parameter ("height"); $values = array (); $values['image'] = $layout_data_image; $values['label'] = $layout_data_label; $values['label_color'] = $layout_data_label_color; $values['id_agent'] = $layout_data_id_agent; $values['id_agente_modulo'] = $layout_data_id_agent_module; $values['type'] = $layout_data_type; $values['parent_item'] = $layout_data_parent_item; $values['period'] = $layout_data_period; $values['id_layout_linked'] = $layout_data_map_linked; $values['height'] = $layout_data_height; $values['width'] = $layout_data_width; $result = process_sql_update ('tlayout_data', $values, array ('id' => $id_layout_data)); if ($result !== false) { echo '

'.__('Updated successfully').'

'; } else { echo '

'.__('Not updated. Error updating data').'

'; } } if ($id_layout) { $layout = get_db_row ('tlayout', 'id', $id_layout); $name = $layout['name']; $background = $layout['background']; $id_group = $layout['id_group']; $width = $layout['width']; $height = $layout['height']; } echo "

".__('Reporting')." » ".__('Map builder'); print_help_icon ("map_builder"); echo "

"; if (! $edit_layout && ! $id_layout) { $table->width = '500px'; $table->data = array (); $table->head = array (); $table->head[0] = __('Map name'); $table->head[1] = __('Group'); $table->head[2] = __('Items'); $table->head[3] = __('Wizard'); $table->head[4] = __('Delete'); $table->align = array (); $table->align[3] = 'center'; $table->align[4] = 'center'; $maps = get_db_all_rows_in_table ('tlayout','name'); if (!$maps) { echo '
'.('No maps defined').'
'; } else { foreach ($maps as $map) { if (give_acl ($config['id_user'], $map['id_group'], "AW")){ $data = array (); $data[0] = ''.$map['name'].''; $data[1] = print_group_icon ($map['id_group'], true).' '; $data[1] .= get_group_name ($map['id_group']); $data[2] = get_db_sql ("SELECT COUNT(*) FROM tlayout_data WHERE id_layout = ".$map['id']); $data[3] = ''.print_image ("images/pill.png", true).''; $data[4] = ''.print_image ("images/cross.png", true).''; array_push ($table->data, $data); } } print_table ($table); } echo '
'; echo '
'; print_input_hidden ('edit_layout', 1); print_submit_button (__('Create'), '', false, 'class="sub wand"'); echo '
'; echo '
'; } else { $backgrounds_list = list_files ('images/console/background/', "jpg", 1, 0); $backgrounds_list = array_merge ($backgrounds_list, list_files ('images/console/background/', "png", 1, 0)); $groups = get_user_groups ($config['id_user']); $table->width = '340px'; $table->data = array (); $table->data[0][0] = __('Name'); $table->data[0][1] = print_input_text ('name', $name, '', 15, 50, true); if ($id_layout){ $table->data[0][1] .= '  '.print_image ("images/pill.png", true).''; $table->data[0][1] .= '  '.print_image ("images/eye.png", true).''; } $table->data[1][0] = __('Group'); $table->data[1][1] = print_select ($groups, 'id_group', $id_group, '', '', '', true); $table->data[2][0] = __('Background'); $table->data[2][1] = print_select ($backgrounds_list, 'background', $background, '', 'None', '', true); if ($id_layout) { $table->data[3][0] = __('Width'); $table->data[3][1] = print_input_text ('width', $width, '', 3, 5, true); $table->data[4][0] = __('Height'); $table->data[4][1] = print_input_text ('height', $height, '', 3, 5, true); } echo '
'; print_table ($table); echo '
'; if ($id_layout) { print_submit_button (__('Update'), 'update_layout', false, 'class="sub upd"'); print_input_hidden ('update_layout', 1); print_input_hidden ('id_layout', $id_layout); } else { print_submit_button (__('Create'), 'create_layout', false, 'class="sub wand"'); print_input_hidden ('create_layout', 1); } echo '
'; echo '
'; if ($id_layout) { /* Show visual map preview */ echo '

'.__('preview').'

'; print_pandora_visual_map ($id_layout, false, true); $images_list = array (); $all_images = list_files ('images/console/icons/', "png", 1, 0); foreach ($all_images as $image_file) { if (strpos ($image_file, "_bad")) continue; if (strpos ($image_file, "_ok")) continue; if (strpos ($image_file, "_warning")) continue; $image_file = substr ($image_file, 0, strlen ($image_file) - 4); $images_list[$image_file] = $image_file; } echo '
'; /* Layout data trash */ echo '
'; echo '
'; echo '

'.__('Map element trash').'

'; echo __('Drag an element here to delete from the map'); echo ' '; print_input_hidden ('delete_layout_data', 1); print_input_hidden ('id_layout', $id_layout); echo '
'; print_submit_button (__('Delete'), 'delete_buttons', true, 'class="sub delete"'); echo '
'; echo '
'; echo '
'; /* Layout_data editor form */ $intervals = array (); $intervals[3600] = "1 ".__('hour'); $intervals[7200] = "2 ".__('hours'); $intervals[10800] = "3 ".__('hours'); $intervals[21600] = "6 ".__('hours'); $intervals[43200] = "12 ".__('hours'); $intervals[86400] = __('Last day'); $intervals[172800] = "2 ". __('days'); $intervals[1209600] = __('Last week'); $intervals[2419200] = "15 ".__('days'); $intervals[4838400] = __('Last month'); $intervals[9676800] = "2 ".__('months'); $intervals[29030400] = "6 ".__('months'); $agents = get_group_agents ($id_group); echo '
'; echo '

'.__('Map element editor').'

'; echo __('Drag an element here to edit the properties'); $table->data = array (); $table->id = 'table_layout_data'; $table->rowstyle = array (); $table->data[0][0] = __('Label'); $table->data[0][1] = print_input_text ('label', '', '', 20, 200, true); $table->data[1][0] = __('Label color'); $table->data[1][1] = print_input_text ('label_color', '#000000', '', 7, 7, true); $table->data[2][0] = __('Type'); $table->data[2][1] = print_select (get_layout_data_types (), 'type', '', '', '', 0, true, false, false); // Dont want to be sorted ! $table->data[3][0] = __('Height'); $table->data[3][1] = print_input_text ('height', '', '', 5, 5, true); $table->data[4][0] = __('Width'); $table->data[4][1] = print_input_text ('width', '', '', 5, 5, true); $table->data[5][0] = __('Agent'); $table->data[5][1] = print_select ($agents, 'agent', '', '', '--', 0, true); $table->data[6][0] = __('Module'); $table->data[6][1] = print_select (array (), 'module', '', '', '--', 0, true); $table->data[7][0] = __('Period'); $table->data[7][1] = print_select ($intervals, 'period', '', '', '--', 0, true); $table->data[8][0] = __('Image'); $table->data[8][1] = print_select ($images_list, 'image', '', '', 'None', '', true); $table->data[8][1] .= '
'; $table->data[9][0] = __('Parent'); $table->data[9][1] = print_select_from_sql ('SELECT id, label FROM tlayout_data WHERE id_layout = '.$id_layout, 'parent_item', '', '', 'None', '', true); $table->data[10][0] = __('Map linked'); $table->data[10][1] = print_select_from_sql ('SELECT id, name FROM tlayout WHERE id != '.$id_layout, 'map_linked', '', '', 'None', '', true); echo '
'; print_table ($table); print_input_hidden ('create_layout_data', 1); print_input_hidden ('update_layout_data', 0); print_input_hidden ('id_layout', $id_layout); print_input_hidden ('id_layout_data', 0); echo '
'; print_submit_button (__('Create'), 'create_layout_data_button', false, 'class="sub wand"'); echo '
'; echo '
'; echo '
'; echo '
'; } } require_css_file ('color-picker'); require_jquery_file ('ui.core'); require_jquery_file ('ui.draggable'); require_jquery_file ('ui.droppable'); require_jquery_file ('colorpicker'); require_jquery_file ('pandora.controls'); require_javascript_file ('wz_jsgraphics'); require_javascript_file ('pandora_visual_console'); ?>