Portions created by the Initial Developer are Copyright (C) 2008-2020 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane Luis Daniel Lucio Quiroz */ //includes require_once "root.php"; require_once "resources/require.php"; require_once "resources/check_auth.php"; //permisisions if (permission_exists('xml_cdr_view')) { //access granted } else { echo "access denied"; exit; } //add multi-lingual support $language = new text; $text = $language->get(); //retrieve submitted data $quick_select = $_REQUEST['quick_select']; $start_stamp_begin = $_REQUEST['start_stamp_begin']; $start_stamp_end = $_REQUEST['start_stamp_end']; $include_internal = $_REQUEST['include_internal']; $quick_select = sizeof($_REQUEST) == 0 ? 3 : $quick_select; //set default //get the summary $cdr = new xml_cdr; $cdr->domain_uuid = $_SESSION['domain_uuid']; $cdr->quick_select = $quick_select; $cdr->start_stamp_begin = $start_stamp_begin; $cdr->start_stamp_end = $start_stamp_end; $cdr->include_internal = $include_internal; $summary = $cdr->user_summary(); //set the http header if ($_REQUEST['type'] == "csv") { //set the headers header('Content-type: application/octet-binary'); header('Content-Disposition: attachment; filename=user-summary.csv'); //show the column names on the first line $z = 0; 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; 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-extension_summary']; require_once "resources/header.php"; //css grid adjustment echo "\n"; //show the content echo "
\n"; echo "
".$text['title-extension_summary']."
\n"; echo "
\n"; if (permission_exists('xml_cdr_extension_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'=>'xml_cdr_extension_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'=>'xml_cdr_extension_summary.php?'.(strlen($_SERVER["QUERY_STRING"]) > 0 ? $_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'=>'xml_cdr_extension_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 " ".$text['label-preset']."\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"; echo " ".$text['label-include_internal']."\n"; echo "
\n"; echo "
\n"; echo " \n"; echo "
\n"; echo "
\n"; echo "
\n"; if (permission_exists('xml_cdr_extension_summary_all') && $_GET['show'] == 'all') { echo ""; } echo "
"; } //show the results echo "\n"; echo " \n"; if ($_GET['show'] === "all" && permission_exists('xml_cdr_extension_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 " \n"; echo " \n"; echo " \n"; echo " \n"; if (is_array($summary)) { foreach ($summary as $key => $row) { echo "\n"; if ($_GET['show'] === "all" && permission_exists('xml_cdr_extension_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 " \n"; echo " \n"; echo " \n"; echo "\n"; } } echo "
".$text['label-domain']."".$text['label-extension']."".$text['label-number_alias']."".$text['label-answered']."".$text['label-missed']."".$text['label-no_answer']."".$text['label-busy']."".$text['label-aloc']."".$text['label-inbound_calls']."".$text['label-inbound_duration']."".$text['label-outbound_calls']."".$text['label-outbound_duration']."".$text['label-description']."
".escape($row['domain_name'])."".escape($row['extension'])."".escape($row['number_alias'])." ".escape($row['answered'])." ".escape($row['missed'])." ".escape($row['no_answer'])." ".escape($row['busy'])." ".format_hours($row['aloc'])." ". escape($row['inbound_calls'])." ".(($row['inbound_duration'] != '0') ? format_hours($row['inbound_duration']) : '0:00:00')."".(($row['outbound_calls'] != '') ? escape($row['outbound_calls']) : "0")." ".(($row['outbound_duration'] != '') ? format_hours($row['outbound_duration']) : '0:00:00')."".escape($row['description'])." 
\n"; echo "
\n"; //show the footer require_once "resources/footer.php"; ?>