Portions created by the Initial Developer are Copyright (C) 2023-2024 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ //includes files require_once dirname(__DIR__, 2) . "/resources/require.php"; require_once "resources/check_auth.php"; //require_once "resources/paging.php"; //check permissions if (permission_exists('destination_view')) { //access granted } else { echo "access denied"; exit; } //add multi-lingual support $language = new text; $text = $language->get(); //retrieve submitted data if (!empty($_REQUEST)) { $quick_select = $_REQUEST['quick_select'] ?? ''; if (empty($quick_select)) { $start_stamp_begin = $_REQUEST['start_stamp_begin'] ?? ''; $start_stamp_end = $_REQUEST['start_stamp_end'] ?? ''; } //$include_internal = $_REQUEST['include_internal']; } else { $quick_select = 3; //set default } //get the summary $destination = new destinations; $destination->domain_uuid = $_SESSION['domain_uuid']; if (!empty($quick_select)) { $destination->quick_select = $quick_select; } else { $destination->start_stamp_begin = $start_stamp_begin ?? ''; $destination->start_stamp_end = $start_stamp_end ?? ''; } //$destination->include_internal = $include_internal ?? null; $summary = $destination->destination_summary(); //set the http header if (!empty($_REQUEST['type']) && $_REQUEST['type'] == "csv") { //set the headers header('Content-type: application/octet-binary'); header('Content-Disposition: attachment; filename=destination-summary.csv'); //show the column names on the first line $z = 0; if (!empty($summary) && is_array($summary)) { foreach ($summary[1] as $key => $val) { if ($z == 0) { echo '"'.$key.'"'; } else { echo ',"'.$key.'"'; } $z++; } echo "\n"; } //add the values to the csv $x = 0; if (!empty($summary) && is_array($summary)) { foreach ($summary as $users) { $z = 0; foreach ($users as $key => $val) { if ($z == 0) { echo '"'.$summary[$x][$key].'"'; } else { echo ',"'.$summary[$x][$key].'"'; } $z++; } echo "\n"; $x++; } } exit; } //include the header $document['title'] = $text['title-destination_summary']; require_once "resources/header.php"; //css grid adjustment echo "\n"; //show the content echo "
\n"; echo "
".$text['title-destination_summary']."
\n"; echo "
\n"; if (permission_exists('destination_summary_all') && $_GET['show'] != 'all') { echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'collapse'=>'hide-sm-dn','link'=>'destination_summary.php?show=all']); } echo button::create(['type'=>'button','label'=>$text['button-download_csv'],'icon'=>$_SESSION['theme']['button_icon_download'],'collapse'=>'hide-sm-dn','link'=>'destination_summary.php?'.(!empty($_SERVER["QUERY_STRING"]) ? $_SERVER["QUERY_STRING"].'&' : null).'type=csv']); echo button::create(['type'=>'button','label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'collapse'=>'hide-xs','style'=>'margin-left: 15px;','link'=>'destination_summary.php']); echo button::create(['type'=>'button','label'=>$text['button-update'],'icon'=>$_SESSION['theme']['button_icon_save'],'id'=>'btn_save','collapse'=>'hide-xs','onclick'=>"document.getElementById('frm').submit();"]); echo "
\n"; echo "
\n"; echo "
\n"; if (permission_exists('xml_cdr_search')) { echo "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; echo " ".$text['label-preset']."\n"; echo "
\n"; echo "
\n"; echo " \n"; echo "
\n"; echo "
\n"; //echo "
\n"; //echo "
\n"; //echo " ".$text['label-include_internal']."\n"; //echo "
\n"; //echo "
\n"; //echo " \n"; //echo "
\n"; //echo "
\n"; echo "
\n"; echo "
\n"; echo " ".$text['label-start_date_time']."\n"; echo "
\n"; echo "
\n"; echo " \n"; echo "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; echo " ".$text['label-end_date_time']."\n"; echo "
\n"; echo "
\n"; echo " \n"; echo "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; if (!empty($_GET['show']) && $_GET['show'] == 'all' && permission_exists('destination_summary_all')) { echo ""; } echo "
"; } //show the results echo "
\n"; echo "\n"; echo " \n"; if (!empty($_GET['show']) && $_GET['show'] === "all" && permission_exists('destination_summary_all')) { echo " \n"; } echo " \n"; if (permission_exists('number_alias')) { echo " \n"; } echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; if (!empty($summary) && is_array($summary)) { foreach ($summary as $key => $row) { echo "\n"; if (!empty($_GET['show']) && $_GET['show'] === "all" && permission_exists('destination_summary_all')) { echo " \n"; } echo " \n"; if (permission_exists('number_alias')) { echo " \n"; } echo " \n"; echo " \n"; echo " \n"; //echo " \n"; echo " \n"; echo " \n"; echo "\n"; } } echo "
".$text['label-domain']."".$text['label-destination_number']."".$text['label-number_alias']."".$text['label-answered']."".$text['label-unique_callers']."".$text['label-total_calls']."".$text['label-duration']."".$text['label-description']."
".escape($row['domain_name'])."".escape($row['destination_number'])."".escape($row['number_alias'])." ".escape($row['answered_calls'])." ".escape($row['unique_callers'])." ".escape($row['total_calls'])." ".(($row['outbound_calls'] != '') ? escape($row['outbound_calls']) : "0")." ".(($row['total_seconds'] != '') ? format_hours($row['total_seconds']) : '0:00:00')."".escape($row['destination_description'])." 
\n"; echo "
\n"; echo "
\n"; //show the footer require_once "resources/footer.php"; ?>