diff --git a/app/xml_cdr/xml_cdr.php b/app/xml_cdr/xml_cdr.php index 63f10fd598..07bd2e49c0 100644 --- a/app/xml_cdr/xml_cdr.php +++ b/app/xml_cdr/xml_cdr.php @@ -466,20 +466,19 @@ echo "\n"; button::$collapse = false; - echo "
"; + echo "
"; if (permission_exists('xml_cdr_all') && $_REQUEST['show'] == 'all') { echo "\n"; } if (permission_exists('xml_cdr_search_advanced')) { - echo button::create(['type'=>'button','label'=>$text['button-advanced_search'],'icon'=>'bolt','link'=>"xml_cdr_search.php".($_REQUEST['show'] == 'all' ? '?show=all' : null),'style'=>'margin-right: 15px;']); + echo button::create(['type'=>'button','label'=>$text['button-advanced_search'],'icon'=>'tools','link'=>"xml_cdr_search.php".($_REQUEST['show'] == 'all' ? '?show=all' : null),'style'=>'margin-right: 15px;']); } echo button::create(['label'=>$text['button-reset'],'icon'=>$_SESSION['theme']['button_icon_reset'],'type'=>'button', 'link'=>'xml_cdr.php']); echo button::create(['label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search'],'type'=>'submit','name'=>'submit']); echo "
\n"; - echo "
".$text['description_search']."
\n"; + echo "
".$text['description_search']."
\n"; echo ""; - echo "

"; } //mod paging parameters for inclusion in column sort heading links diff --git a/app/xml_cdr/xml_cdr_search.php b/app/xml_cdr/xml_cdr_search.php index 94874ead7c..f4f5c3a649 100644 --- a/app/xml_cdr/xml_cdr_search.php +++ b/app/xml_cdr/xml_cdr_search.php @@ -67,226 +67,219 @@ echo "
\n"; } - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
".$text['title-advanced_search'].""; - echo " "; - echo " "; - echo "

"; - echo "
\n"; + echo "
\n"; + echo "
".$text['title-advanced_search']."
\n"; + echo "
\n"; + echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$_SESSION['theme']['button_icon_back'],'style'=>'margin-right: 15px;','link'=>'xml_cdr.php']); + echo button::create(['type'=>'submit','label'=>$text['button-search'],'icon'=>$_SESSION['theme']['button_icon_search']]); + echo "
\n"; + echo "
\n"; + echo "
\n"; echo "\n"; echo " \n"; echo " "; echo " "; + echo " "; + echo " "; + echo " \n"; + + echo "
\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - - echo " "; - echo " "; //source name - echo " "; - echo " "; - echo " "; - echo " "; //source number - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - if (permission_exists('xml_cdr_all')) { - echo " "; - echo " "; - echo " "; + echo " "; //source number + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + if (permission_exists('xml_cdr_all')) { + echo " "; + echo " "; + echo " "; + } + echo "
\n"; - echo " ".$text['label-direction']."\n"; - echo " \n"; - echo " \n"; - - if (permission_exists('xml_cdr_b_leg')){ - echo " \n"; - } - - echo "
".$text['label-caller_id_name']."
".$text['label-extension'].""; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
".$text['label-destination']."
".$text['label-context']."
".$text['label-start_range'].""; - echo "
\n"; - echo "
"; - echo " "; - echo " "; - echo "
\n"; - echo "
\n"; - echo "
".$text['label-answer_range'].""; - echo "
\n"; - echo "
"; - echo " "; - echo " "; - echo "
\n"; - echo "
\n"; - echo "
".$text['label-end_range'].""; - echo "
\n"; - echo "
"; - echo " "; - echo " "; - echo "
\n"; - echo "
\n"; - echo "
".$text['label-duration']." (".$text['label-seconds'].")\n"; - echo " \n"; - echo " \n"; - echo "
".$text['button-show_all']."\n"; - if (permission_exists('xml_cdr_all') && $_REQUEST['showall'] == "true") { - echo " "; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + + echo " "; + echo " "; //source name + echo " "; echo " "; - } - echo "
\n"; + echo " ".$text['label-direction']."\n"; + echo " \n"; + echo " "; + echo " \n"; } - echo " "; + if ($direction == "outbound") { + echo " \n"; + } + else { + echo " \n"; + } + if ($direction == "local") { + echo " \n"; + } + else { + echo " \n"; + } + echo " \n"; + + if (permission_exists('xml_cdr_b_leg')){ + echo " \n"; + } + + echo "
".$text['label-caller_id_name']."
"; + echo "
".$text['label-extension'].""; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
".$text['label-destination']."
".$text['label-context']."
".$text['label-start_range'].""; + echo "
\n"; + echo "
"; + echo " "; + echo " "; + echo "
\n"; + echo "
\n"; + echo "
".$text['label-answer_range'].""; + echo "
\n"; + echo "
"; + echo " "; + echo " "; + echo "
\n"; + echo "
\n"; + echo "
".$text['label-end_range'].""; + echo "
\n"; + echo "
"; + echo " "; + echo " "; + echo "
\n"; + echo "
\n"; + echo "
".$text['label-duration']." (".$text['label-seconds'].")\n"; + echo " \n"; + echo " \n"; + echo "
".$text['button-show_all']."\n"; + if (permission_exists('xml_cdr_all') && $_REQUEST['showall'] == "true") { + echo " "; + } + else { + echo " "; + } + echo " "; + echo "
"; echo "
\n"; - echo "\n"; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - echo " "; - if (is_array($_SESSION['cdr']['field'])) { - foreach ($_SESSION['cdr']['field'] as $field) { - $array = explode(",", $field); - $field_name = end($array); - $field_label = ucwords(str_replace("_", " ", $field_name)); - $field_label = str_replace("Sip", "SIP", $field_label); - if ($field_name != "destination_number") { - echo " "; - echo " "; - echo " "; - echo " "; + echo "
".$text['label-billsec']."
".$text['label-hangup_cause']."
".$text['label-uuid']."
".$text['label-bridge_uuid']."
".$text['label-accountcode']."
".$text['label-read_codec']."
".$text['label-write_codec']."
".$text['label-remote_media_ip']."
".$text['label-network_addr']."
".escape($field_label)."
\n"; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + echo " "; + if (is_array($_SESSION['cdr']['field'])) { + foreach ($_SESSION['cdr']['field'] as $field) { + $array = explode(",", $field); + $field_name = end($array); + $field_label = ucwords(str_replace("_", " ", $field_name)); + $field_label = str_replace("Sip", "SIP", $field_label); + if ($field_name != "destination_number") { + echo " "; + echo " "; + echo " "; + echo " "; + } } } - } - echo " "; - echo " "; - echo " "; - echo " \n"; - - echo " \n"; - echo " \n"; - echo " \n"; - echo "
".$text['label-billsec']."
".$text['label-hangup_cause']."
".$text['label-uuid']."
".$text['label-bridge_uuid']."
".$text['label-accountcode']."
".$text['label-read_codec']."
".$text['label-write_codec']."
".$text['label-remote_media_ip']."
".$text['label-network_addr']."
".escape($field_label)."
".$text['label-mos_score'].""; - echo " \n"; - echo " \n"; - echo "

\n"; - echo " \n"; - echo "
\n"; + echo "
".$text['label-mos_score'].""; + echo " \n"; + echo " \n"; + echo "
\n"; echo " "; echo " "; @@ -298,4 +291,4 @@ //include footer require_once "resources/footer.php"; -?> +?> \ No newline at end of file diff --git a/app/xml_cdr/xml_cdr_statistics.php b/app/xml_cdr/xml_cdr_statistics.php index 2b53956b33..c5f5c1eb7c 100644 --- a/app/xml_cdr/xml_cdr_statistics.php +++ b/app/xml_cdr/xml_cdr_statistics.php @@ -56,127 +56,118 @@ $search_url .= '&showall=true'; } if (strlen($_GET['direction']) > 0) { - $search_url .= '&direction='.escape($_GET['direction']); + $search_url .= '&direction='.urlencode($_GET['direction']); } if (strlen($_GET['leg']) > 0) { - $search_url .= '&leg='.escape($_GET['leg']); + $search_url .= '&leg='.urlencode($_GET['leg']); } if (strlen($_GET['caller_id_name']) > 0) { - $search_url .= '&caller_id_name='.escape($_GET['caller_id_name']); + $search_url .= '&caller_id_name='.urlencode($_GET['caller_id_name']); } if (strlen($_GET['caller_extension_uuid']) > 0) { - $search_url .= '&caller_extension_uuid='.escape($_GET['caller_extension_uuid']); + $search_url .= '&caller_extension_uuid='.urlencode($_GET['caller_extension_uuid']); } if (strlen($_GET['caller_id_number']) > 0) { - $search_url .= '&caller_id_number='.escape($_GET['caller_id_number']); + $search_url .= '&caller_id_number='.urlencode($_GET['caller_id_number']); } if (strlen($_GET['destination_number']) > 0) { - $search_url .= '&destination_number='.escape($_GET['destination_number']); + $search_url .= '&destination_number='.urlencode($_GET['destination_number']); } if (strlen($_GET['context']) > 0) { - $search_url .= '&context='.escape($_GET['context']); + $search_url .= '&context='.urlencode($_GET['context']); } if (strlen($_GET['start_stamp_begin']) > 0) { - $search_url .= '&start_stamp_begin='.escape($_GET['start_stamp_begin']); + $search_url .= '&start_stamp_begin='.urlencode($_GET['start_stamp_begin']); } if (strlen($_GET['start_stamp_end']) > 0) { - $search_url .= '&start_stamp_end='.escape($_GET['start_stamp_end']); + $search_url .= '&start_stamp_end='.urlencode($_GET['start_stamp_end']); } if (strlen($_GET['answer_stamp_begin']) > 0) { - $search_url .= '&answer_stamp_begin='.escape($_GET['answer_stamp_begin']); + $search_url .= '&answer_stamp_begin='.urlencode($_GET['answer_stamp_begin']); } if (strlen($_GET['answer_stamp_end']) > 0) { - $search_url .= '&answer_stamp_end='.escape($_GET['answer_stamp_end']); + $search_url .= '&answer_stamp_end='.urlencode($_GET['answer_stamp_end']); } if (strlen($_GET['end_stamp_begin']) > 0) { - $search_url .= '&end_stamp_begin='.escape($_GET['end_stamp_begin']); + $search_url .= '&end_stamp_begin='.urlencode($_GET['end_stamp_begin']); } if (strlen($_GET['end_stamp_end']) > 0) { - $search_url .= '&end_stamp_end='.escape($_GET['end_stamp_end']); + $search_url .= '&end_stamp_end='.urlencode($_GET['end_stamp_end']); } if (strlen($_GET['duration']) > 0) { - $search_url .= '&duration='.escape($_GET['duration']); + $search_url .= '&duration='.urlencode($_GET['duration']); } if (strlen($_GET['billsec']) > 0) { - $search_url .= '&billsec='.escape($_GET['billsec']); + $search_url .= '&billsec='.urlencode($_GET['billsec']); } if (strlen($_GET['hangup_cause']) > 0) { - $search_url .= '&hangup_cause='.escape($_GET['hangup_cause']); + $search_url .= '&hangup_cause='.urlencode($_GET['hangup_cause']); } if (strlen($_GET['uuid']) > 0) { - $search_url .= '&uuid='.escape($_GET['uuid']); + $search_url .= '&uuid='.urlencode($_GET['uuid']); } if (strlen($_GET['bleg_uuid']) > 0) { - $search_url .= '&bleg_uuid='.escape($_GET['bleg_uuid']); + $search_url .= '&bleg_uuid='.urlencode($_GET['bleg_uuid']); } if (strlen($_GET['accountcode']) > 0) { - $search_url .= '&accountcode='.escape($_GET['accountcode']); + $search_url .= '&accountcode='.urlencode($_GET['accountcode']); } if (strlen($_GET['read_codec']) > 0) { - $search_url .= '&read_codec='.escape($_GET['read_codec']); + $search_url .= '&read_codec='.urlencode($_GET['read_codec']); } if (strlen($_GET['write_codec']) > 0) { - $search_url .= '&write_codec='.escape($_GET['write_codec']); + $search_url .= '&write_codec='.urlencode($_GET['write_codec']); } if (strlen($_GET['remote_media_ip']) > 0) { - $search_url .= '&remote_media_ip='.escape($_GET['remote_media_ip']); + $search_url .= '&remote_media_ip='.urlencode($_GET['remote_media_ip']); } if (strlen($_GET['network_addr']) > 0) { - $search_url .= '&network_addr='.escape($_GET['network_addr']); + $search_url .= '&network_addr='.urlencode($_GET['network_addr']); } if (strlen($_GET['mos_comparison']) > 0) { - $search_url .= '&mos_comparison='.escape($_GET['mos_comparison']); + $search_url .= '&mos_comparison='.urlencode($_GET['mos_comparison']); } if (strlen($_GET['mos_score']) > 0) { - $search_url .= '&mos_score='.escape($_GET['mos_score']); + $search_url .= '&mos_score='.urlencode($_GET['mos_score']); } -//page title and description - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo "\n"; - echo "
".$text['title-call-statistics']."\n"; - echo " \n"; +//show the content + echo "
\n"; + echo "
".$text['title-call-statistics']."
\n"; + echo "
\n"; + if (substr_count($_SERVER['HTTP_REFERER'], 'app/xml_cdr/xml_cdr.php') != 0) { + echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$_SESSION['theme']['button_icon_back'],'style'=>'margin-right: 15px;','link'=>'xml_cdr.php']); + } if (permission_exists('xml_cdr_search_advanced')) { - echo " \n"; + echo button::create(['type'=>'button','label'=>$text['button-advanced_search'],'icon'=>'tools','link'=>'xml_cdr_search.php?type=advanced'.$search_url]); } - if (permission_exists('xml_cdr_all')) { - if ($_GET['showall'] != 'true') { - echo "\n"; - } + if (permission_exists('xml_cdr_all') && $_GET['showall'] != 'true') { + echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'xml_cdr_statistics.php?showall=true'.$search_url]); } - echo " \n"; - echo " \n"; - echo "
\n"; - echo " ".$text['label-call-statistics-description']." \n"; - echo "
\n"; - echo "
\n"; - echo "
\n"; + echo button::create(['type'=>'button','label'=>$text['button-extension_summary'],'icon'=>'list','link'=>'xml_cdr_extension_summary.php']); + echo button::create(['type'=>'button','label'=>$text['button-download_csv'],'icon'=>$_SESSION['theme']['button_icon_download'],'link'=>'xml_cdr_statistics_csv.php?type=csv'.$search_url]); + echo "
\n"; + echo "
\n"; + echo "\n"; -//set the style - $c = 0; - $row_style["0"] = "row_style0"; - $row_style["1"] = "row_style1"; + echo $text['label-call-statistics-description']."\n"; + echo "

\n"; + + ?> -?>
- \n"; + echo "
+
-
+

@@ -224,10 +215,10 @@ // insert checkboxes var choiceContainer = $("#choices"); $.each(datasets, function(key, val) { - choiceContainer.append('
' + + choiceContainer.append('
 ' + ''); + + val.label + ''); }); choiceContainer.find("input").on('click', plotAccordingToChoices); @@ -265,27 +256,28 @@ plotAccordingToChoices(); }); + \n"; - 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 " \n"; echo "\n"; $i = 0; foreach ($stats as $row) { - echo "\n"; + echo "\n"; if ($i <= $hours) { - echo " \n"; + echo " \n"; } else if ($i == $hours+1) { echo "

\n"; @@ -295,44 +287,43 @@ 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 " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo "\n"; - echo "\n"; + echo "\n"; } if ($i > $hours) { - echo " \n"; + echo " \n"; } if ($i <= $hours) { - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; } else { - 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 " \n"; + echo " \n"; + echo " \n"; + echo " \n"; echo "\n"; - $c = $c ? 0 : 1; $i++; } echo "
".$text['table-hours']."".$text['table-date']."".$text['table-time']."".$text['table-time']."Volume".$text['table-minutes']."".$text['table-calls-per-minute']."".$text['table-missed']."".$text['table-missed']."ASRALOC
".($i+1)."".($i+1)."
".$text['table-days']."".$text['table-date']."".$text['table-time']."
".$text['table-days']."".$text['table-date']."".$text['table-time']."Volume".$text['table-minutes']."".$text['table-calls-per-minute']."".$text['table-missed']."".$text['table-calls-per-minute']."".$text['table-missed']."ASRALOC
" . floor(escape($row['hours'])/24) . "" . floor(escape($row['hours'])/24) . "".date('j M', $row['start_epoch'])."".date('H:i', $row['start_epoch'])." - ".date('H:i', $row['stop_epoch'])." ".date('j M', $row['start_epoch'])."".date('H:i', $row['start_epoch'])." - ".date('H:i', $row['stop_epoch'])." ".date('j M', $row['start_epoch'])." ".date('H:i', $row['start_epoch'])." - ".date('j M H:i', $row['stop_epoch'])." ".date('j M', $row['start_epoch'])." ".date('H:i', $row['start_epoch'])." - ".date('j M H:i', $row['stop_epoch'])." ".escape($row['volume'])." ".(round(escape($row['minutes']),2))." ".(round(escape($row['avg_min']),2))." / ".(round(escape($row['cpm_ans']),2))." ".escape($row['missed'])." ".(round(escape($row['asr']),2))." ".(round(escape($row['aloc']),2))." ".escape($row['volume'])." ".(round(escape($row['minutes']),2))." ".(round(escape($row['avg_min']),2))." / ".(round(escape($row['cpm_ans']),2))." ".escape($row['missed'])." ".(round(escape($row['asr']),2))." ".(round(escape($row['aloc']),2))." 
\n"; echo "

"; -//show the footer +//include the footer require_once "resources/footer.php"; -?> +?> \ No newline at end of file diff --git a/app/xml_cdr/xml_cdr_statistics_inc.php b/app/xml_cdr/xml_cdr_statistics_inc.php index faba7178b7..6d48f28174 100644 --- a/app/xml_cdr/xml_cdr_statistics_inc.php +++ b/app/xml_cdr/xml_cdr_statistics_inc.php @@ -333,7 +333,7 @@ $sql_where = ' where '; // concatenate the 'ands's array, add to where clause - if (sizeof($sql_where_ands) > 0) { + if (is_array($sql_where_ands) && @sizeof($sql_where_ands) > 0) { $sql_where .= implode(" and ", $sql_where_ands)." and "; }