$scheduled_images = $focus->scheduled_images; $audited_report = $focus->audited_report; $dynamic_tables = $focus->dynamic_tables; $dynamic_sql = $focus->dynamic_sql; $sel_autorefresh = 0; $tmp_results_limit = explode('${dp}', $focus->results_limit); $results_limit['operator'] = !empty($focus->results_limit) ? $tmp_results_limit[0] : "all"; $results_limit['first_param'] = isset($tmp_results_limit[1]) ? $tmp_results_limit[1] : ""; $results_limit['second_param'] = isset($tmp_results_limit[2]) ? $tmp_results_limit[2] : ""; //***********************************// //**Get Module Field Current Values**// //***********************************// //****************************************// //***Get Non Visible Fields for Reports***// //****************************************// $fieldsToBeRemoved = asol_ReportsManagementFunctions::getNonVisibleFields($focus->report_module); //****************************************// //***Get Non Visible Fields for Reports***// //****************************************// //**************************// //***Is Domains Installed***// //**************************// if (asol_ReportsUtils::isDomainsInstalled()) { if ($return_action != "duplicate") { $DomainIdNameQuery = $db->query("SELECT asol_reports.asol_domain_id as domain_id, asol_domains.name as domain_name FROM asol_reports LEFT JOIN asol_domains ON asol_reports.asol_domain_id=asol_domains.id WHERE asol_reports.id='" . $focus->id . "'"); $DomainIdNameRow = $db->fetchByAssoc($DomainIdNameQuery); if ($current_user->is_admin && !empty($current_user->asol_domain_id) || !$current_user->is_admin) { if (in_array($_REQUEST['action'], array("DetailView", "EditView")) && isset($_REQUEST['update_domain']) && $_REQUEST['update_domain'] != $DomainIdNameRow['domain_id']) { header("Location: index.php?module=" . $_REQUEST['module'] . "&action=index&update_domain=" . $current_user->asol_domain_id); } if (in_array($_REQUEST['action'], array("DetailView", "EditView")) && $current_user->asol_default_domain != $DomainIdNameRow['domain_id']) {
public static function validateSqlRemovedFields(&$sql, $alternativeDb, $reportTable) { require_once "modules/asol_Reports/include_basic/manageReportsFunctions.php"; global $sugar_config; $hasReferencesRemovesField = false; if ($alternativeDb === false) { $fieldsToBeRemoved = asol_ReportsManagementFunctions::getNonVisibleFields($reportTable); } else { //***********************// //***AlineaSol Premium***// //***********************// $extraParams = array('dbIndex' => $alternativeDb, 'dbName' => null, 'reportTable' => null); $returnedPremiumFields = asol_ReportsUtils::managePremiumFeature("externalDatabasesReports", "reportFunctions.php", "getNonVisibleExternalDbFields", $extraParams); $fieldsToBeRemoved = $returnedPremiumFields !== false ? $returnedPremiumFields : array(); //***********************// //***AlineaSol Premium***// //***********************// } foreach ($fieldsToBeRemoved as $fieldToBeRemoved) { if (strpos($sql, $fieldToBeRemoved) !== false) { $hasReferencesRemovesField = true; asol_Report::$reported_error = 'Forbidden field has been referenced at SQL query: ' . $fieldToBeRemoved; break; } } if ($hasReferencesRemovesField) { $sql = ''; } }