function mactrack_device_type() { global $colors, $device_types_actions, $mactrack_device_types, $config, $item_rows; /* ================= input validation ================= */ input_validate_input_number(get_request_var_request("page")); input_validate_input_number(get_request_var_request("type_id")); input_validate_input_number(get_request_var_request("rows")); /* ==================================================== */ /* clean up the vendor string */ if (isset($_REQUEST["vendor"])) { $_REQUEST["vendor"] = sanitize_search_string(get_request_var("vendor")); } if (isset($_REQUEST["filter"])) { $_REQUEST["filter"] = sanitize_search_string(get_request_var("filter")); } /* clean up sort_column */ if (isset($_REQUEST["sort_column"])) { $_REQUEST["sort_column"] = sanitize_search_string(get_request_var("sort_column")); } /* clean up search string */ if (isset($_REQUEST["sort_direction"])) { $_REQUEST["sort_direction"] = sanitize_search_string(get_request_var("sort_direction")); } /* if the user pushed the 'clear' button */ if (isset($_REQUEST["clear_x"])) { kill_session_var("sess_mactrack_device_type_current_page"); kill_session_var("sess_mactrack_device_type_filter"); kill_session_var("sess_mactrack_device_type_rows"); kill_session_var("sess_mactrack_device_type_vendor"); kill_session_var("sess_mactrack_device_type_type_id"); kill_session_var("sess_mactrack_device_type_sort_column"); kill_session_var("sess_mactrack_device_type_sort_direction"); unset($_REQUEST["page"]); unset($_REQUEST["vendor"]); unset($_REQUEST["filter"]); unset($_REQUEST["type_id"]); unset($_REQUEST["rows"]); unset($_REQUEST["sort_column"]); unset($_REQUEST["sort_direction"]); } /* remember these search fields in session vars so we don't have to keep passing them around */ load_current_session_value("page", "sess_mactrack_device_type_current_page", "1"); load_current_session_value("vendor", "sess_mactrack_device_type_vendor", "All"); load_current_session_value("filter", "sess_mactrack_device_type_filter", ""); load_current_session_value("type_id", "sess_mactrack_device_type_type_id", "-1"); load_current_session_value("rows", "sess_mactrack_device_type_rows", "-1"); load_current_session_value("sort_column", "sess_mactrack_device_type_sort_column", "description"); load_current_session_value("sort_direction", "sess_mactrack_device_type_sort_direction", "ASC"); if ($_REQUEST["rows"] == -1) { $row_limit = read_config_option("num_rows_mactrack"); }elseif ($_REQUEST["rows"] == -2) { $row_limit = 999999; }else{ $row_limit = $_REQUEST["rows"]; } html_start_box("<strong>MacTrack Device Type Filters</strong>", "100%", $colors["header"], "3", "center", "mactrack_device_types.php?action=edit"); mactrack_device_type_filter(); html_end_box(); $sql_where = ""; $device_types = mactrack_get_device_types($sql_where, $row_limit); html_start_box("", "100%", $colors["header"], "3", "center", ""); $total_rows = db_fetch_cell("SELECT COUNT(mac_track_device_types.device_type_id) FROM mac_track_device_types" . $sql_where); /* generate page list */ $url_page_select = get_page_list($_REQUEST["page"], MAX_DISPLAY_PAGES, $row_limit, $total_rows, "mactrack_device_types.php?"); if (defined("CACTI_VERSION")) { /* generate page list navigation */ $nav = html_create_nav($_REQUEST["page"], MAX_DISPLAY_PAGES, $row_limit, $total_rows, 9, "mactrack_device_types.php?filter=" . $_REQUEST["filter"]); }else{ $nav = "<tr bgcolor='#" . $colors["header"] . "'> <td colspan='9'> <table width='100%' cellspacing='0' cellpadding='0' border='0'> <tr> <td align='left' class='textHeaderDark'> <strong><< "; if ($_REQUEST["page"] > 1) { $nav .= "<a class='linkOverDark' href='mactrack_device_types.php?page=" . ($_REQUEST["page"]-1) . "'>"; } $nav .= "Previous"; if ($_REQUEST["page"] > 1) { $nav .= "</a>"; } $nav .= "</strong> </td>\n <td align='center' class='textHeaderDark'> Showing Rows " . (($row_limit*($_REQUEST["page"]-1))+1) . " to " . ((($total_rows < $row_limit) || ($total_rows < ($row_limit*$_REQUEST["page"]))) ? $total_rows : ($row_limit*$_REQUEST["page"])) . " of $total_rows [$url_page_select] </td>\n <td align='right' class='textHeaderDark'> <strong>"; if (($_REQUEST["page"] * $row_limit) < $total_rows) { $nav .= "<a class='linkOverDark' href='mactrack_device_types.php?page=" . ($_REQUEST["page"]+1) . "'>"; } $nav .= "Next"; if (($_REQUEST["page"] * $row_limit) < $total_rows) { $nav .= "</a>"; } $nav .= " >></strong> </td>\n </tr> </table> </td> </tr>\n"; } if ($total_rows) { print $nav; } $display_text = array( "description" => array("Device Type Description", "ASC"), "vendor" => array("Devices", "DESC"), "device_type" => array("Device Type", "DESC"), "scanning_function" => array("Port Scanner", "ASC"), "ip_scanning_function" => array("IP Scanner", "ASC"), "sysDescr_match" => array("sysDescription Match", "DESC"), "sysObjectID_match" => array("Vendor OID Match", "DESC")); html_header_sort_checkbox($display_text, $_REQUEST["sort_column"], $_REQUEST["sort_direction"]); $i = 0; if (sizeof($device_types) > 0) { foreach ($device_types as $device_type) { form_alternate_row_color($colors["alternate"],$colors["light"],$i, 'line' . $device_type["device_type_id"]); $i++; form_selectable_cell('<a class="linkEditMain" href="mactrack_device_types.php?action=edit&device_type_id=' . $device_type["device_type_id"] . '">' . $device_type["description"] . '</a>', $device_type["device_type_id"]); form_selectable_cell($device_type["vendor"], $device_type["device_type_id"]); form_selectable_cell($mactrack_device_types[$device_type["device_type"]], $device_type["device_type_id"]); form_selectable_cell($device_type["scanning_function"], $device_type["device_type_id"]); form_selectable_cell($device_type["ip_scanning_function"], $device_type["device_type_id"]); form_selectable_cell($device_type["sysDescr_match"], $device_type["device_type_id"]); form_selectable_cell($device_type["sysObjectID_match"], $device_type["device_type_id"]); form_checkbox_cell($device_type["description"], $device_type["device_type_id"]); form_end_row(); } /* put the nav bar on the bottom as well */ print $nav; }else{ print "<tr><td colspan='10'><em>No MacTrack Device Types</em></td></tr>"; } html_end_box(false); /* draw the dropdown containing a list of available actions for this form */ mactrack_draw_actions_dropdown($device_types_actions); }
function mactrack_device_type() { global $device_types_actions, $mactrack_device_types, $config, $item_rows; mactrack_device_type_request_validation(); if (get_request_var('rows') == -1) { $row_limit = read_config_option('num_rows_table'); } elseif (get_request_var('rows') == -2) { $row_limit = 999999; } else { $row_limit = get_request_var('rows'); } html_start_box(__('MacTrack Device Type Filters'), '100%', '', '3', 'center', 'mactrack_device_types.php?action=edit'); mactrack_device_type_filter(); html_end_box(); $sql_where = ''; $device_types = mactrack_get_device_types($sql_where, $row_limit); $total_rows = db_fetch_cell("SELECT\n\t\tCOUNT(mac_track_device_types.device_type_id)\n\t\tFROM mac_track_device_types" . $sql_where); $nav = html_nav_bar('mactrack_device_types.php?filter=' . get_request_var('filter'), MAX_DISPLAY_PAGES, get_request_var('page'), $row_limit, $total_rows, 9, __('Device Types')); print $nav; html_start_box('', '100%', '', '3', 'center', ''); $display_text = array('description' => array(__('Device Type Description'), 'ASC'), 'vendor' => array(__('Devices'), 'DESC'), 'device_type' => array(__('Device Type'), 'DESC'), 'scanning_function' => array(__('Port Scanner'), 'ASC'), 'ip_scanning_function' => array(__('IP Scanner'), 'ASC'), 'sysDescr_match' => array(__('sysDescription Match'), 'DESC'), 'sysObjectID_match' => array(__('Vendor OID Match'), 'DESC')); html_header_sort_checkbox($display_text, get_request_var('sort_column'), get_request_var('sort_direction')); if (sizeof($device_types) > 0) { foreach ($device_types as $device_type) { form_alternate_row('line' . $device_type['device_type_id'], true); form_selectable_cell('<a class="linkEditMain" href="mactrack_device_types.php?action=edit&device_type_id=' . $device_type['device_type_id'] . '">' . $device_type['description'] . '</a>', $device_type['device_type_id']); form_selectable_cell($device_type['vendor'], $device_type['device_type_id']); form_selectable_cell($mactrack_device_types[$device_type['device_type']], $device_type['device_type_id']); form_selectable_cell($device_type['scanning_function'], $device_type['device_type_id']); form_selectable_cell($device_type['ip_scanning_function'], $device_type['device_type_id']); form_selectable_cell($device_type['sysDescr_match'], $device_type['device_type_id']); form_selectable_cell($device_type['sysObjectID_match'], $device_type['device_type_id']); form_checkbox_cell($device_type['description'], $device_type['device_type_id']); form_end_row(); } } else { print '<tr><td colspan="10"><em>' . __('No MacTrack Device Types') . '</em></td></tr>'; } html_end_box(false); if (sizeof($device_types)) { print $nav; } draw_actions_dropdown($device_types_actions); }