} $star = ''; if (!empty($args['reporter']->saved_report->id)) { $star = SugarFavorites::generateStar(SugarFavorites::isUserFavorite('Reports', $args['reporter']->saved_report->id), 'Reports', $args['reporter']->saved_report->id); } if (!empty($args['reporter']->name)) { $params[] = "{$args['reporter']->name} {$star}"; } //Override the create url $createURL = 'index.php?module=Reports&report_module=&action=index&page=report&Create+Custom+Report=Create+Custom+Report'; echo getClassicModuleTitle("Reports", $params, true, '', $createURL); // show report interface if (isset($_REQUEST['page']) && $_REQUEST['page'] == 'report') { checkSavedReportACL($args['reporter'], $args); if (isset($_REQUEST['run_query']) && $_REQUEST['run_query'] == 1) { reportResults($args['reporter'], $args); } else { reportCriteriaWithResult($args['reporter'], $args); } if (!empty($_REQUEST['expanded_combo_summary_divs'])) { $expandDivs = explode(" ", $_REQUEST['expanded_combo_summary_divs']); foreach ($expandDivs as $divId) { str_replace(" ", "", $divId); if ($divId != "") { echo "<script>expandCollapseComboSummaryDiv('" . $divId . "')</script>"; } // if } // foreach } // if
continue; } if (empty($testedChars[$char])) { $total++; if (testInvariant($normalizer, $char, $desc)) { $success++; } else { $failure++; } if ($total % 100 == 0) { print "{$total} "; } } } fclose($in); $ok = reportResults($total, $success, $failure) && $ok; if ($ok) { print "TEST SUCCEEDED!\n"; exit(0); } else { print "TEST FAILED!\n"; exit(-1); } ## ------ function reportResults(&$total, &$success, &$failure) { $percSucc = intval($success * 100 / $total); $percFail = intval($failure * 100 / $total); print "\n"; print "{$success} tests successful ({$percSucc}%)\n"; print "{$failure} tests failed ({$percFail}%)\n\n";
function template_reports_report(&$reporter, &$args) { global $current_user; global $current_language; global $mod_strings, $app_strings; global $sugar_config, $sugar_version; $sort_by = ''; $sort_dir = ''; $summary_sort_by = ''; $summary_sort_dir = ''; $report_type = ''; $smarty = new Sugar_Smarty(); if (isset($reporter->report_def['order_by'][0]['name']) && isset($reporter->report_def['order_by'][0]['table_key'])) { $sort_by = $reporter->report_def['order_by'][0]['table_key'] . ":" . $reporter->report_def['order_by'][0]['name']; } // if if (isset($reporter->report_def['order_by'][0]['sort_dir'])) { $sort_dir = $reporter->report_def['order_by'][0]['sort_dir']; } // if if (!empty($reporter->report_def['summary_order_by'][0]['group_function']) && $reporter->report_def['summary_order_by'][0]['group_function'] == 'count') { $summary_sort_by = $reporter->report_def['summary_order_by'][0]['table_key'] . ":" . 'count'; } else { if (isset($reporter->report_def['summary_order_by'][0]['name'])) { $summary_sort_by = $reporter->report_def['summary_order_by'][0]['table_key'] . ":" . $reporter->report_def['summary_order_by'][0]['name']; if (!empty($reporter->report_def['summary_order_by'][0]['group_function'])) { $summary_sort_by .= ":" . $reporter->report_def['summary_order_by'][0]['group_function']; } else { if (!empty($reporter->report_def['summary_order_by'][0]['column__function'])) { $summary_sort_by .= ":" . $reporter->report_def['summary_order_by'][0]['column_function']; } } // else if } } // else if if (isset($reporter->report_def['summary_order_by'][0]['sort_dir'])) { $summary_sort_dir = $reporter->report_def['summary_order_by'][0]['sort_dir']; } // if if (isset($reporter->report_def['report_type'])) { $report_type = $reporter->report_def['report_type']; } // if $issetSaveResults = false; $isSaveResults = false; if (isset($args['save_result'])) { $issetSaveResults = true; $smarty->assign('save_report_as_str', $_REQUEST['save_report_as']); if ($args['save_result']) { $isSaveResults = true; } // if } // if $smarty->assign('mod_strings', $mod_strings); $smarty->assign('app_strings', $app_strings); $smarty->assign('current_language', $current_language); $smarty->assign('sugar_config', $sugar_config); $smarty->assign('sugar_version', $sugar_version); $smarty->assign('issetSaveResults', $issetSaveResults); $smarty->assign('isSaveResults', $isSaveResults); $smarty->assign('report_type', $report_type); $form_header = get_form_header($mod_strings['LBL_TITLE'] . ": " . $args['reporter']->saved_report->name, "", false); $smarty->assign('form_header', $form_header); $smarty->assign('report_offset', $reporter->report_offset); $smarty->assign('sort_by', $sort_by); $smarty->assign('sort_dir', $sort_dir); $smarty->assign('summary_sort_by', $summary_sort_by); $smarty->assign('summary_sort_dir', $summary_sort_dir); if (isset($_REQUEST['save_as']) && $_REQUEST['save_as'] == 'true') { $report_id = ''; } else { if (isset($reporter->saved_report->id)) { $report_id = $reporter->saved_report->id; } elseif (!empty($_REQUEST['record'])) { $report_id = $_REQUEST['record']; } else { $report_id = ''; } } // else $smarty->assign('report_id', $report_id); $smarty->assign('to_pdf', isset($_REQUEST['to_pdf']) ? $_REQUEST['to_pdf'] : ""); $smarty->assign('to_csv', isset($_REQUEST['to_csv']) ? $_REQUEST['to_csv'] : ""); if (!empty($args['reporter']->saved_report)) { $context = array("bean" => $args['reporter']->saved_report); } else { $context = array(); } $report_edit_access = SugarACL::checkAccess('Reports', 'edit', $context); $smarty->assign('report_edit_access', $report_edit_access); $report_delete_access = SugarACL::checkAccess('Reports', 'delete', $context); $smarty->assign('report_delete_access', $report_delete_access); $report_export_access = SugarACL::checkAccess('Reports', 'export', $context); $smarty->assign('report_export_access', $report_export_access); $smarty->assign('form_submit', empty($_REQUEST['form_submit']) ? false : $_REQUEST['form_submit']); $global_json = getJSONobj(); global $ACLAllowedModules; $ACLAllowedModules = getACLAllowedModules(); $smarty->assign('ACLAllowedModules', $global_json->encode(array_keys($ACLAllowedModules))); require_once 'include/tabs.php'; $tabs = array(); array_push($tabs, array('title' => $mod_strings['LBL_1_REPORT_ON'], 'link' => 'module_join_tab', 'key' => 'module_join_tab')); array_push($tabs, array('title' => $mod_strings['LBL_2_FILTER'], 'link' => 'filters_tab', 'key' => 'filters_tab')); //array_push($tabs,array('title'=>$mod_strings['LBL_3_GROUP'],'link'=>'group_by_tab','key'=>'group_by_tab')); //array_push($tabs,array('title'=>$mod_strings['LBL_3_CHOOSE'],'link'=>'columns_tab','key'=>'columns_tab')); if ($args['reporter']->report_type == 'tabular') { array_push($tabs, array('title' => $mod_strings['LBL_3_GROUP'], 'hidden' => true, 'link' => 'group_by_tab', 'key' => 'group_by_tab')); array_push($tabs, array('title' => $mod_strings['LBL_3_CHOOSE'], 'link' => 'columns_tab', 'key' => 'columns_tab')); array_push($tabs, array('title' => $mod_strings['LBL_5_CHART_OPTIONS'], 'hidden' => true, 'link' => 'chart_options_tab', 'key' => 'chart_options_tab')); } else { array_push($tabs, array('title' => $mod_strings['LBL_3_GROUP'], 'link' => 'group_by_tab', 'key' => 'group_by_tab')); array_push($tabs, array('title' => $mod_strings['LBL_4_CHOOSE'], 'link' => 'columns_tab', 'key' => 'columns_tab')); array_push($tabs, array('title' => $mod_strings['LBL_5_CHART_OPTIONS'], 'link' => 'chart_options_tab', 'key' => 'chart_options_tab')); } $current_key = 'module_join_tab'; $tab_panel = new SugarWidgetTabs($tabs, $current_key, 'showReportTab'); $smarty->assign('tab_panel_display', $tab_panel->display()); template_reports_tables($smarty, $args); if ($reporter->report_type == 'summary') { $summary_display = ''; if ($reporter->show_columns) { $column_display = ''; } else { $column_display = 'none'; } // else } else { $summary_display = 'none'; $column_display = ''; } // else $summary_join_selector = ' <div style="padding-bottom:2px">' . $mod_strings['LBL_MODULE'] . ': <select onChange="viewJoinChanged(this);" id="view_join_summary" name="view_join_summary"></select></div>'; $chooser_args_summary = array('id' => 'summary_table', 'title' => $mod_strings['LBL_CHOOSE_SUMMARIES'] . ':', 'left_name' => 'display_summary', 'right_name' => 'hidden_summary', 'left_label' => $mod_strings['LBL_DISPLAY_SUMMARIES'], 'right_label' => $summary_join_selector, 'display' => $summary_display, 'onmoveleft' => 'reload_columns(\'join\')', 'onmoveright' => 'reload_columns(\'join\')'); $join_selector = ' <div style="padding-bottom:2px">' . $mod_strings['LBL_MODULE'] . ': <select onChange="viewJoinChanged(this);" id="view_join" name="view_join"></select></div>'; $chooser_args = array('id' => 'columns_table', 'title' => $mod_strings['LBL_CHOOSE_COLUMNS'] . ':', 'left_name' => 'display_columns', 'right_name' => 'hidden_columns', 'left_label' => $mod_strings['LBL_DISPLAY_COLUMNS'], 'right_label' => $join_selector, 'display' => $column_display, 'topleftcontent' => $join_selector, 'onmoveleft' => 'reload_columns(\'join\')', 'onmoveright' => 'reload_columns(\'join\')'); $smarty->assign('template_grups_choosers1', template_groups_chooser($chooser_args_summary)); if ($summary_display == 'none') { $smarty->assign('summary_display_style', "display:none"); } // if if ($reporter->show_columns) { $smarty->assign('show_columns_reports', true); } // if $smarty->assign('column_display', $column_display); $smarty->assign('template_grups_choosers2', template_groups_chooser($chooser_args)); template_reports_filters($smarty, $args); $smarty->assign('reporter_report_type', $args['reporter']->report_type); template_reports_group_by($smarty, $args); template_reports_chart_options($smarty, $args); $smarty->assign('md5_current_user_id', md5($current_user->id)); $smarty->assign('args_image_path', $args['IMAGE_PATH']); template_reports_request_vars_js($smarty, $reporter, $args); $smarty->assign('cache_path', sugar_cached('')); // Set fiscal start date $admin = BeanFactory::getBean('Administration'); $config = $admin->getConfigForModule('Forecasts', 'base'); if (!empty($config['is_setup']) && !empty($config['timeperiod_start_date'])) { $smarty->assign("fiscalStartDate", $config['timeperiod_start_date']); } $smarty->assign('ENTROPY', mt_rand()); echo $smarty->fetch("modules/Reports/templates/_template_reports_report.tpl"); ob_start(); ?> <script language="javascript"> if(typeof YAHOO != 'undefined') YAHOO.util.Event.addListener(window, 'load', load_page); </script> <?php reportResults($reporter, $args); /* $do_chart = false; $dbStart = microtime(); if ($reporter->report_type == 'summary' && ! empty($reporter->report_def['summary_columns'])) { if ($reporter->show_columns && !empty($reporter->report_def['display_columns']) && !empty($reporter->report_def['group_defs'])) { template_summary_combo_view($reporter,$args); $do_chart = true; } else if($reporter->show_columns && !empty($reporter->report_def['display_columns']) && empty($reporter->report_def['group_defs'])) { template_detail_and_total_list_view($reporter,$args); } else if (!empty($reporter->report_def['group_defs'])) { template_summary_list_view($reporter,$args); $do_chart = true; } else { template_total_view($reporter,$args); } // else } else if (!empty($reporter->report_def['display_columns'])) { template_list_view($reporter,$args); } // else if if ($reporter->report_def['chart_type']== 'none') { $do_chart = false; } echo "time = " . microtime_diff($dbStart, microtime())."s "; ?> </div> <?php $contents = ob_get_contents(); ob_end_clean(); if ($do_chart) { template_chart($reporter); } // if print $contents; */ }