private function get_report_column_types($report_id) { $col_types = array(); $report = Reports::getReport($report_id); $model = $report->getObjectType(); $manager = new $model(); $columns = ReportColumns::getAllReportColumns($report_id); foreach ($columns as $col) { $cp_id = $col->getCustomPropertyId(); if ($cp_id == 0) { $col_types[$col->getFieldName()] = $manager->getColumnType($col->getFieldName()); } else { $cp = CustomProperties::getCustomProperty($cp_id); if ($cp) { $col_types[$cp->getName()] = $cp->getOgType(); } } } return $col_types; }
} if (!empty($_REQUEST['page_range'])) { $page_range = $_REQUEST['page_range']; } else { $page_range = PAGING_RANGE; } $db = Database::obtain(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); $db->connect(); $r = new Reports('unknown', BASE_DOMAIN); if (empty($_REQUEST['uid'])) { $reports = $r->get_reports($page_start, $page_range); $reports_count = $r->count_reports(); } else { //get one report from search results $uid = $_REQUEST['uid']; $reports = $r->getReport($uid); } $pager_count = $reports_count; //total records for query $pager_range = PAGING_RANGE; //total currently displayed $pager_end = $page_start + $pager_range; $pager_pos = $page_start; $next_pos = $pager_range + 1; $back_pos = $pager_pos; $next_button = ""; $back_button = ""; $display_range = PAGING_RANGE; if ($pager_pos + $pager_range < $pager_count) { $next_button = "<a href=\"\" id=\"next_button\" ><span class=\"glyphicon glyphicon-menu-right\" style=\"font-weight: bold;\"></span>"; }
break; case PGSQL_EMPTY_QUERY: break; default: break; } } } // We need to store the query in a session for editing purposes // We avoid GPC vars to avoid truncating long queries // If we came from a report, we need to look up the query if (isset($_REQUEST['subject']) && $_REQUEST['subject'] == 'report') { global $data, $misc; include_once './classes/Reports.php'; $reportsdb = new Reports($status); $report = $reportsdb->getReport($_REQUEST['reportid']); $_SESSION['sqlquery'] = $report->fields['report_sql']; } elseif (isset($_REQUEST['subject']) && $_REQUEST['subject'] == 'history') { // Or maybe we came from the history popup $_SESSION['sqlquery'] = $_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']][$_GET['queryid']]['query']; } elseif (isset($_POST['query'])) { // Or maybe we came from an sql form $_SESSION['sqlquery'] = $_POST['query']; } else { echo "could not find the query!!"; } // Pagination maybe set by a get link that has it as FALSE, // if that's the case, unset the variable. if (isset($_REQUEST['paginate']) && $_REQUEST['paginate'] == 'f') { unset($_REQUEST['paginate']); unset($_POST['paginate']);