Added more mobile device-specific reports
Reformatted some scripts for mobile devices git-svn-id: svn://192.168.202.10@3202 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,11 +1,12 @@
|
||||
<?php
|
||||
# AST_rt_whiteboard_rpt_mobile.php
|
||||
#
|
||||
# Copyright (C) 2019 Matt Florell <vicidial@gmail.com>, Joe Johnson <joej@vicidial.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <joej@vicidial.com> LICENSE: AGPLv2
|
||||
#
|
||||
# Mobile version of real-time report that allows users to create a customized, graphical display of various data sets
|
||||
#
|
||||
# 190227-1259 - Initial build
|
||||
# 200309-1819 - Modifications for display formatting
|
||||
#
|
||||
|
||||
$startMS = microtime();
|
||||
@@ -585,8 +586,8 @@ $MAIN.="<FORM ACTION=\"$PHP_SELF\" METHOD=GET name=vicidial_report id=vicidial_r
|
||||
|
||||
$MAIN.="<span id='report_control_panel' style='display:block'>";
|
||||
$MAIN.="<TABLE CELLPADDING=3 CELLSPACING=3 border='0' class=\"panel_td\" style='width:95vw'><TR>";
|
||||
$MAIN.="<TD VALIGN='TOP' class='mobile_whiteboard_td_sm' align='center' colspan='2'><FONT class='embossed android_whiteboard_small'>"._QXZ("Report Type").":</font> $NWB#rt_whiteboard_report-report_type$NWE";
|
||||
$MAIN.="<SELECT NAME=report_type ID=report_type class='form_field_android sm_shadow round_corners mobile_whiteboard_select' onChange=HighlightRelatedFields(this.value)>\n";
|
||||
$MAIN.="<TD VALIGN='TOP' class='mobile_whiteboard_td_sm' align='center' colspan='2'><FONT class='android_standard'>"._QXZ("Report Type").":</font> $NWB#rt_whiteboard_report-report_type$NWE";
|
||||
$MAIN.="<SELECT NAME=report_type ID=report_type class='form_field_whiteboard_android sm_shadow round_corners' onChange=HighlightRelatedFields(this.value)>\n";
|
||||
$MAIN.="<option value='' selected>-- "._QXZ("Select a report")." --</option>";
|
||||
$MAIN.="<option value='status_performance_total'>"._QXZ("Disposition Totals")."</option>";
|
||||
$MAIN.="<option value='agent_performance_total'>"._QXZ("Agent Performance Totals")."</option>";
|
||||
@@ -603,7 +604,7 @@ $MAIN.="</SELECT>\n";
|
||||
$MAIN.="</TD>\n";
|
||||
$MAIN.="</TR>\n";
|
||||
|
||||
$MAIN.="<TR><TD VALIGN=TOP class='mobile_whiteboard_td_sm'> <FONT class='embossed android_whiteboard_small'>"._QXZ("Campaigns").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<TR><TD VALIGN=TOP class='mobile_whiteboard_td_sm'> <FONT class='android_standard'>"._QXZ("Campaigns").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME=campaigns ID=campaigns multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
#if (preg_match('/\-\-ALL\-\-/',$campaign_string))
|
||||
# {$MAIN.="<option value=\"--ALL--\" selected>-- "._QXZ("ALL CAMPAIGNS")." --</option>\n";}
|
||||
@@ -629,7 +630,7 @@ $MAIN.="</SELECT>\n";
|
||||
$MAIN.="</TD>\n";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP ALIGN='LEFT' class='mobile_whiteboard_td_lg'>";
|
||||
$MAIN.="<FONT class='embossed android_whiteboard_small'>"._QXZ("Status flags").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<FONT class='android_standard'>"._QXZ("Status flags").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME='status_flags' ID='status_flags' multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
$MAIN.="<option value='--ALL--'>"._QXZ("ALL FLAGS")."</option>\n";
|
||||
$MAIN.="<option value='selectable'>"._QXZ("AGENT SELECTABLE")."</option>\n";
|
||||
@@ -654,7 +655,7 @@ $MAIN.="</TR>\n";
|
||||
|
||||
$MAIN.="<TR>";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='embossed android_whiteboard_small'>"._QXZ("In-groups").": $NWB#rt_whiteboard_report-parameters$NWE</font><BR>";
|
||||
$MAIN.="<TD VALIGN=TOP ALIGN='LEFT' class='mobile_whiteboard_td_lg'><FONT class='android_standard'>"._QXZ("In-groups").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME=groups ID=groups multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
if (preg_match('/\-\-ALL\-\-/',$groups_string))
|
||||
{$MAIN.="<option value=\"--ALL--\" selected>-- "._QXZ("ALL IN-GROUPS")." --</option>\n";}
|
||||
@@ -670,7 +671,7 @@ while ($groups_to_print > $o)
|
||||
$MAIN.="</SELECT>\n";
|
||||
$MAIN.="</TD>\n";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='embossed android_whiteboard_small'>"._QXZ("DIDs").": $NWB#rt_whiteboard_report-parameters$NWE</font><BR>";
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='android_standard'>"._QXZ("DIDs").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME=dids ID=dids multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
if (preg_match('/\-\-ALL\-\-/',$dids_string))
|
||||
{$MAIN.="<option value=\"--ALL--\" selected>-- "._QXZ("ALL DIDS")." --</option>\n";}
|
||||
@@ -688,7 +689,7 @@ $MAIN.="</TD>\n";
|
||||
$MAIN.="</TR>";
|
||||
|
||||
$MAIN.="<TR>";
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='embossed android_whiteboard_small'>"._QXZ("User Groups").": $NWB#rt_whiteboard_report-parameters$NWE</font><BR>";
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='android_standard'>"._QXZ("User Groups").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME='user_groups' ID='user_groups' multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
if (preg_match('/\-\-ALL\-\-/',$user_groups_string))
|
||||
{$MAIN.="<option value=\"--ALL--\" selected>-- "._QXZ("ALL USER GROUPS")." --</option>\n";}
|
||||
@@ -704,7 +705,7 @@ while ($user_groups_to_print > $o)
|
||||
$MAIN.="</SELECT>\n";
|
||||
$MAIN.="</TD>\n";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='embossed android_whiteboard_small'>"._QXZ("Users").": $NWB#rt_whiteboard_report-parameters$NWE</font><BR>";
|
||||
$MAIN.="<TD VALIGN=TOP class='mobile_whiteboard_td_sm'><FONT class='android_standard'>"._QXZ("Users").":</font> $NWB#rt_whiteboard_report-parameters$NWE<BR>";
|
||||
$MAIN.="<SELECT NAME='users' ID='users' multiple class='form_field_android sm_shadow round_corners mobile_whiteboard_select'>\n";
|
||||
if (preg_match('/\-\-ALL\-\-/',$users_string))
|
||||
{$MAIN.="<option value=\"--ALL--\" selected>-- "._QXZ("ALL USERS")." --</option>\n";}
|
||||
@@ -722,9 +723,9 @@ $MAIN.="</TD>\n";
|
||||
$MAIN.="</TR>\n";
|
||||
|
||||
$MAIN.="<TR>\n";
|
||||
$MAIN.="<TD VALIGN=MIDDLE ALIGN='LEFT' nowrap class='mobile_whiteboard_td_lg'> <FONT class='embossed android_whiteboard_small'>"._QXZ("Start date/time").":</font> $NWB#rt_whiteboard_report-start_date$NWE";
|
||||
$MAIN.="<INPUT TYPE=hidden NAME=DB VALUE=\"$DB\"><BR>\n";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_date ID=query_date SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\" class='form_field_android sm_shadow round_corners'>";
|
||||
$MAIN.="<TD VALIGN=MIDDLE ALIGN='left' nowrap class='mobile_whiteboard_td_lg' colspan='2'> <FONT class='android_standard'>"._QXZ("Start date/time").":</font> $NWB#rt_whiteboard_report-start_date$NWE";
|
||||
$MAIN.="<INPUT TYPE=hidden NAME=DB VALUE=\"$DB\">\n";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_date ID=query_date SIZE=11 MAXLENGTH=10 VALUE=\"$query_date\" class='form_field_android sm_shadow round_corners'>";
|
||||
/*
|
||||
$MAIN.="<script language=\"JavaScript\">\n";
|
||||
$MAIN.="function openNewWindow(url)\n";
|
||||
@@ -741,26 +742,19 @@ $MAIN.="o_cal.a_tpl.yearscroll = false;\n";
|
||||
$MAIN.="// o_cal.a_tpl.weekstart = 1; // Monday week start\n";
|
||||
$MAIN.="</script>\n";
|
||||
*/
|
||||
$MAIN.=" <INPUT TYPE=TEXT NAME=query_time ID=query_time SIZE=8 MAXLENGTH=8 VALUE=\"$query_time\" class='form_field_android sm_shadow round_corners'>";
|
||||
$MAIN.=" <INPUT TYPE=TEXT NAME=query_time ID=query_time SIZE=9 MAXLENGTH=8 VALUE=\"$query_time\" class='form_field_android sm_shadow round_corners'><BR>";
|
||||
|
||||
$MAIN.="<BR><BR>";
|
||||
$MAIN.="<FONT class='embossed android_whiteboard_small'>"._QXZ("OR Past")." <input type='text' class='form_field_android sm_shadow round_corners' size='2' maxlength='2' name='hourly_display' id='hourly_display' value=''> "._QXZ("hours")."</font> $NWB#rt_whiteboard_report-show_results$NWE";
|
||||
$MAIN.="</TD>\n";
|
||||
|
||||
$MAIN.="<TD VALIGN='TOP' ALIGN='left' class='mobile_whiteboard_td_lg'>";
|
||||
$MAIN.="<table border='0' cellpadding='2' cellspacing='0' class='mobile_whiteboard_td_lg'>";
|
||||
$MAIN.="<tr>";
|
||||
$MAIN.="<td align='right' VALIGN='TOP' class='panel_td'><FONT class='embossed android_whiteboard_small'>"._QXZ("Target per unit").": <input type='text' size='2' maxlength='5' name='target_per_agent' id='target_per_agent' value='$target_per_agent' class='form_field_android sm_shadow round_corners'> $NWB#rt_whiteboard_report-target_per_unit$NWE</font></td>";
|
||||
$MAIN.="<td align='left' VALIGN='TOP' class='panel_td'></td>";
|
||||
$MAIN.="</tr><tr>";
|
||||
$MAIN.="<td align='right' VALIGN='TOP' class='panel_td'><FONT class='embossed android_whiteboard_small'>"._QXZ("Target sales").": <input type='text' size='2' maxlength='5' name='target_gross' id='target_gross' value='$target_gross' class='form_field_android sm_shadow round_corners'> $NWB#rt_whiteboard_report-target_gross_sales$NWE</font></td>";
|
||||
$MAIN.="<td align='left' VALIGN='TOP' class='panel_td'></td>";
|
||||
$MAIN.="</tr></table>";
|
||||
$MAIN.=" <FONT class='android_standard'>"._QXZ("OR Past")." <input type='text' class='form_field_android sm_shadow round_corners' size='2' maxlength='2' name='hourly_display' id='hourly_display' value=''> "._QXZ("hours")."</font> $NWB#rt_whiteboard_report-show_results$NWE";
|
||||
$MAIN.="</TD>\n";
|
||||
$MAIN.="</TR>\n";
|
||||
|
||||
$MAIN.="<TR>";
|
||||
$MAIN.="<TD align='center' colspan='2'><INPUT TYPE=button NAME='run_report' class='green_btn_mobile sm_shadow round_corners mobile_whiteboard_button' VALUE='"._QXZ("RUN REPORT")."' onClick='StartRefresh()'></TD>";
|
||||
$MAIN.="<td align='right' VALIGN='TOP' class='panel_td'><FONT class='android_standard'>"._QXZ("Target per unit").": <input type='text' size='2' maxlength='5' name='target_per_agent' id='target_per_agent' value='$target_per_agent' class='form_field_android sm_shadow round_corners'> $NWB#rt_whiteboard_report-target_per_unit$NWE</font></td>";
|
||||
$MAIN.="<td align='left' VALIGN='TOP' class='panel_td'><FONT class='android_standard'>"._QXZ("Target sales").": <input type='text' size='2' maxlength='5' name='target_gross' id='target_gross' value='$target_gross' class='form_field_android sm_shadow round_corners'> $NWB#rt_whiteboard_report-target_gross_sales$NWE</font></td>";
|
||||
$MAIN.="</TR>\n";
|
||||
|
||||
$MAIN.="<TR>";
|
||||
$MAIN.="<TD align='center' colspan='2'><BR><BR><INPUT TYPE=button NAME='run_report' class='green_btn_anywidth_lg sm_shadow round_corners' style='width: 35vw; max-width:320px;' VALUE='"._QXZ("RUN REPORT")."' onClick='StartRefresh()'></TD>";
|
||||
# $MAIN.="<TD align='center'><INPUT TYPE=button NAME='goto_reports' ID='goto_reports' class='red_btn_mobile sm_shadow round_corners mobile_whiteboard_button' VALUE='"._QXZ("REPORTS")."'></TD>";
|
||||
$MAIN.="</TR></TABLE></span>\n";
|
||||
|
||||
@@ -769,28 +763,63 @@ $MAIN.="</TR></TABLE></span>\n";
|
||||
|
||||
|
||||
$MAIN.="<span id='report_display_panel' style='display:none'>";
|
||||
$MAIN.="<TABLE CELLPADDING=0 border='0' CELLSPACING=3 BGCOLOR='#".$SSframe_background."' style='width:95vw' class=\"panel_td\"><TR>";
|
||||
$MAIN.="<TABLE CELLPADDING=0 border='0' CELLSPACING=3 BGCOLOR='#".$SSframe_background."' style='width:98vw' class=\"panel_td\"><TR>";
|
||||
|
||||
$MAIN.="<TD ALIGN=right valign='top' class='embossed android_whiteboard_small'>";
|
||||
$MAIN.="<input type='button' id='stop_report' name='stop_report' class='red_btn_mobile_lg sm_shadow round_corners' value='<<< "._QXZ("CONTROL PANEL")."' onClick='StopRefresh()'>";
|
||||
$MAIN.="<TD ALIGN=left class='android_whiteboard_small'>";
|
||||
$MAIN.="<input type='button' id='stop_report' name='stop_report' class='red_btn_anywidth sm_shadow round_corners' style='width: 20vw; max-width:200px;' value='<< "._QXZ("BACK")."' onClick='StopRefresh()'>";
|
||||
$MAIN.="</TD>";
|
||||
|
||||
$MAIN.="<TD ALIGN=center width='*' class='embossed android_whiteboard_small'>";
|
||||
|
||||
$MAIN.="<TD ALIGN=right class='android_whiteboard_small'>";
|
||||
|
||||
$MAIN.="<INPUT TYPE=hidden NAME=query_date2 ID=query_date2 VALUE=\"$query_date\">";
|
||||
$MAIN.="<INPUT TYPE=hidden NAME=query_time2 ID=query_time2 VALUE=\"$query_time\">";
|
||||
$MAIN.="<INPUT TYPE='hidden' name='hourly_display2' id='hourly_display2' value=''>";
|
||||
|
||||
$MAIN.=_QXZ("Refresh rate").": ";
|
||||
$MAIN.="<select name='refresh_rate' id='refresh_rate' class='form_field_android sm_shadow round_corners'>";
|
||||
$MAIN.="<option value='5'>5 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='10'>10 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='15'>15 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<select name='refresh_rate' id='refresh_rate' class='form_field_android sm_shadow round_corners' style='width:17vw;max-width:170px;'>";
|
||||
$MAIN.="<option value='5'>5 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='10'>10 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='15'>15 "._QXZ("sec")."</option>";
|
||||
# $MAIN.="<option value='20'>20 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='30' selected>30 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='45'>45 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='60'>60 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='120'>2 "._QXZ("minutes")."</option>";
|
||||
$MAIN.="<option value='300'>5 "._QXZ("minutes")."</option>";
|
||||
$MAIN.="<option value='30' selected>30 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='45'>45 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='60'>60 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='120'>2 "._QXZ("min")."</option>";
|
||||
$MAIN.="<option value='300'>5 "._QXZ("min")."</option>";
|
||||
$MAIN.="</select>";
|
||||
$MAIN.="<BR>";
|
||||
$MAIN.=_QXZ("Start date/time").": ";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_date2 ID=query_date2 SIZE=10 MAXLENGTH=10 VALUE=\"$query_date\" class='form_field_android sm_shadow round_corners'>";
|
||||
|
||||
$MAIN.=" <input type='button' id='adjust_report' name='adjust_report' class='green_btn_anywidth sm_shadow round_corners' style='width: 20vw; max-width:200px;' value='"._QXZ("ADJUST")."'>";
|
||||
$MAIN.="</TD>";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP align='left' rowspan=2 class='android_whiteboard_small autosize_12'><BR><BR><BR>"; #
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row1'>"._QXZ("Total Calls").":<BR><span id='total_calls_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row2'>"._QXZ("Total Sales").":<BR><span id='total_sales_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row3'>"._QXZ("Total Conv Rate").":<BR><span id='total_conv_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row4'>"._QXZ("Total Time").":<BR><span id='total_time_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row5'>"._QXZ("Total CPH").":<BR><span id='total_cph_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='autosize_10 border2px round_corners sm_shadow std_row1'>"._QXZ("Total SPH").":<BR><span id='total_sph_div'></span> </div>";
|
||||
$MAIN.="</TD>";
|
||||
$MAIN.="</TR>";
|
||||
|
||||
/*
|
||||
$MAIN.="<TR>";
|
||||
$MAIN.="<TD ALIGN=center width='*' class='android_whiteboard_small'>";
|
||||
$MAIN.=_QXZ("Refresh").": ";
|
||||
$MAIN.="<select name='refresh_rate' id='refresh_rate' class='form_field_android sm_shadow round_corners' style='width:20vw;max-width:200px;'>";
|
||||
$MAIN.="<option value='5'>5 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='10'>10 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='15'>15 "._QXZ("sec")."</option>";
|
||||
# $MAIN.="<option value='20'>20 "._QXZ("seconds")."</option>";
|
||||
$MAIN.="<option value='30' selected>30 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='45'>45 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='60'>60 "._QXZ("sec")."</option>";
|
||||
$MAIN.="<option value='120'>2 "._QXZ("min")."</option>";
|
||||
$MAIN.="<option value='300'>5 "._QXZ("min")."</option>";
|
||||
$MAIN.="</select>";
|
||||
$MAIN.=" ";
|
||||
$MAIN.=_QXZ("Start date/time").":";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_date2 ID=query_date2 SIZE=11 MAXLENGTH=10 VALUE=\"$query_date\" class='form_field_android sm_shadow round_corners'>";
|
||||
$MAIN.="<script language=\"JavaScript\">\n";
|
||||
$MAIN.="function openNewWindow(url)\n";
|
||||
$MAIN.=" {\n";
|
||||
@@ -805,38 +834,27 @@ $MAIN.="});\n";
|
||||
$MAIN.="o_cal.a_tpl.yearscroll = false;\n";
|
||||
$MAIN.="// o_cal.a_tpl.weekstart = 1; // Monday week start\n";
|
||||
$MAIN.="</script>\n";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_time2 ID=query_time2 SIZE=10 MAXLENGTH=8 VALUE=\"$query_time\" class='form_field_android sm_shadow round_corners'>";
|
||||
$MAIN.="<INPUT TYPE=TEXT NAME=query_time2 ID=query_time2 SIZE=9 MAXLENGTH=8 VALUE=\"$query_time\" class='form_field_android sm_shadow round_corners'>";
|
||||
|
||||
$MAIN.="<BR>"._QXZ("OR")." "._QXZ("Show results for the past")." <input type='text' class='form_field_android sm_shadow round_corners' size='2' maxlength='2' name='hourly_display2' id='hourly_display2' value=''> "._QXZ("hours");
|
||||
$MAIN.="<BR> "._QXZ("OR Past")." <input type='text' class='form_field_android sm_shadow round_corners' size='2' maxlength='2' name='hourly_display2' id='hourly_display2' value=''> "._QXZ("hours");
|
||||
$MAIN.="</TD>";
|
||||
|
||||
$MAIN.="<TD ALIGN=left valign='top' class='embossed android_whiteboard_small'>";
|
||||
$MAIN.="<input type='button' id='adjust_report' name='adjust_report' class='green_btn_mobile_lg sm_shadow round_corners' value='"._QXZ("ADJUST RATE/TIME")."'>";
|
||||
$MAIN.="</TD>";
|
||||
|
||||
$MAIN.="<TD VALIGN=TOP align='left' rowspan=3 class='embossed android_whiteboard_small autosize_12'><BR><BR><BR>"; #
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row1'>"._QXZ("Total Calls").":<BR><span id='total_calls_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row2'>"._QXZ("Total Sales").":<BR><span id='total_sales_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row3'>"._QXZ("Total Conv Rate").":<BR><span id='total_conv_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row4'>"._QXZ("Total Time").":<BR><span id='total_time_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row5'>"._QXZ("Total CPH").":<BR><span id='total_cph_div'></span> </div><BR>";
|
||||
$MAIN.="<div class='embossed autosize_10 border2px round_corners sm_shadow std_row1'>"._QXZ("Total SPH").":<BR><span id='total_sph_div'></span> </div>";
|
||||
$MAIN.="</TD>";
|
||||
$MAIN.="</TR>";
|
||||
*/
|
||||
|
||||
$MAIN.="<TR>";
|
||||
$MAIN.="<TD VALIGN=TOP align='center' colspan='3'>";
|
||||
$MAIN.="<TD VALIGN=TOP align='center' colspan='2'>";
|
||||
###### DISPLAY SPANS ####
|
||||
$MAIN.="<span id='top_10_display' style='display:none'>";
|
||||
$MAIN.="</span>";
|
||||
|
||||
$MAIN.="<div align='center' id='loading_display' style='display:none'>";
|
||||
$MAIN.="<BR><BR><BR><BR><BR><div align='center' class='embossed border2px round_corners sm_shadow' style='background-color:#FFF;width:250px;height:125px'><BR><BR>"._QXZ("LOADING. PLEASE WAIT...")."<BR><BR><img src='/vicidial/images/loader.gif' width='220' height='19'></div>";
|
||||
$MAIN.="<BR><BR><BR><BR><BR><div align='center' class='border2px round_corners sm_shadow' style='background-color:#FFF;width:250px;height:125px'><BR><BR>"._QXZ("LOADING. PLEASE WAIT...")."<BR><BR><img src='/vicidial/images/loader.gif' width='220' height='19'></div>";
|
||||
$MAIN.="</div>";
|
||||
|
||||
$MAIN.="<div id='graph_display' style='display:block; height: 75vh; width: 80vw'>";
|
||||
$MAIN.="<canvas id='MainReportCanvas' height='50vh'></canvas>";
|
||||
$MAIN.="<p align='center'><input type='button' class='green_btn_mobile sm_shadow round_corners' style='width:25vw; max-width:250px' value='"._QXZ("SHOW TOP 10 PERFORMERS")."' onClick=\"ToggleVisibility('top_10_display'); ToggleVisibility('graph_display'); document.getElementById('graph_or_chart').value='chart'\"></p>";
|
||||
$MAIN.="<p align='center'><input type='button' class='green_btn_anywidth sm_shadow round_corners' style='width:30vw; max-width:300px' value='"._QXZ("SHOW TOP 10")."' onClick=\"ToggleVisibility('top_10_display'); ToggleVisibility('graph_display'); document.getElementById('graph_or_chart').value='chart'\"></p>";
|
||||
$MAIN.="</div>";
|
||||
##########################
|
||||
$MAIN.="</TD>";
|
||||
@@ -858,7 +876,7 @@ $MAIN.="</FORM>";
|
||||
|
||||
|
||||
$MAIN.="</BODY>";
|
||||
$MAIN.="<script language=\"JavaScript\" src=\"vicidial_whiteboard_functions.php?mobile=1\"></script>\n";
|
||||
$MAIN.="<script language=\"JavaScript\" src=\"vicidial_whiteboard_functions_mobile.php\"></script>\n";
|
||||
$MAIN.="</HTML>";
|
||||
|
||||
header("Content-type: text/html; charset=utf-8");
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,10 +6,11 @@
|
||||
# CHANGES
|
||||
# 190205-1702 - First Build
|
||||
# 200210-1618 - Added links to more mobile-compatible reports
|
||||
# 200309-1819 - Modifications for display formatting
|
||||
#
|
||||
|
||||
$admin_version = '2.14-2a';
|
||||
$build = '200210-1618';
|
||||
$admin_version = '2.14-3a';
|
||||
$build = '200309-1819';
|
||||
|
||||
$startMS = microtime();
|
||||
|
||||
@@ -713,7 +714,7 @@ echo "<link rel=\"stylesheet\" href=\"calendar.css\">\n";
|
||||
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"vicidial_stylesheet.php\">\n";
|
||||
echo "<STYLE type=\"text/css\">\n";
|
||||
echo "<!--\n";
|
||||
echo " .admin_stats_table {width: 85vw; max-width: 700px; }\n";
|
||||
echo " .admin_stats_table {width: 95vw; max-width: 950px; }\n";
|
||||
echo "-->\n";
|
||||
echo "</STYLE>\n";
|
||||
|
||||
@@ -747,7 +748,7 @@ $android_header=1;
|
||||
require("admin_header.php");
|
||||
|
||||
|
||||
echo "<TABLE CELLPADDING=0 CELLSPACING=0 BGCOLOR='#$SSframe_background' width='100%' style='height:100vh'><TR><TD>";
|
||||
echo "<TABLE CELLPADDING=0 CELLSPACING=0 BGCOLOR='#$SSframe_background' width='100%' style='height:100vh' valign='top'><TR><TD>";
|
||||
|
||||
######################
|
||||
# ADD=999990 - new main landing page with system stats
|
||||
@@ -844,14 +845,14 @@ if ($ADD==999990)
|
||||
}
|
||||
}
|
||||
|
||||
echo "<BR><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
|
||||
echo "<BR><FONT CLASS=\"android_standard\">";
|
||||
|
||||
echo "<center>";
|
||||
|
||||
if ($LOGview_reports==1)
|
||||
{
|
||||
echo "<TABLE class='admin_stats_table' valign='top'><TR><TD>\n";
|
||||
echo "<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
|
||||
echo "<FONT CLASS=\"android_standard bold\">";
|
||||
|
||||
### Report link ###
|
||||
echo "<B><a href='#' id='ReportLink' onClick='ToggleReports()'>SHOW REPORTS</a></B>";
|
||||
@@ -860,47 +861,47 @@ if ($ADD==999990)
|
||||
echo "<div id='ReportStorageDiv' style='display:none'>";
|
||||
echo "<BR><B>"._QXZ("Real-Time Reports")."</B><BR>\n";
|
||||
echo "<UL>\n";
|
||||
echo "<LI><a href=\"#HourlyCampaignCounts\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Hourly Campaign Counts")."</a></FONT></LI>\n";
|
||||
echo "<LI><a href=\"#SystemSummary\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("System Summary")."</a></FONT></LI>\n";
|
||||
echo "<LI><a href=\"#HourlyCampaignCounts\"><FONT CLASS=\"android_standard\">"._QXZ("Hourly Campaign Counts")."</a></FONT></LI>\n";
|
||||
echo "<LI><a href=\"#SystemSummary\"><FONT CLASS=\"android_standard\">"._QXZ("System Summary")."</a></FONT></LI>\n";
|
||||
if ( (preg_match("/Agent Sales Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"agent_sales_report_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Agent Sales Report")."</a></FONT></LI>\n";}
|
||||
{echo "<LI><a href=\"agent_sales_report_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Agent Sales Report")."</a></FONT></LI>\n";}
|
||||
if ( (preg_match("/Real-Time Main Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"realtime_report_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Real-Time Main Report")."</a></FONT></LI>\n";}
|
||||
# echo "<BR> Real-Time SIP: <a href=\"AST_timeonVDADall.php?SIPmonitorLINK=1\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Listen")."</a></FONT> - <a href=\"AST_timeonVDADall.php?SIPmonitorLINK=2\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Barge")."</a></FONT>\n";
|
||||
# echo "<BR> Real-Time IAX: <a href=\"AST_timeonVDADall.php?IAXmonitorLINK=1\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Listen")."</a></FONT> - <a href=\"AST_timeonVDADall.php?IAXmonitorLINK=2\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Barge")."</a></FONT><BR><BR>\n";
|
||||
{echo "<LI><a href=\"realtime_report_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Real-Time Main Report")."</a></FONT></LI>\n";}
|
||||
# echo "<BR> Real-Time SIP: <a href=\"AST_timeonVDADall.php?SIPmonitorLINK=1\"><FONT CLASS=\"android_standard\">"._QXZ("Listen")."</a></FONT> - <a href=\"AST_timeonVDADall.php?SIPmonitorLINK=2\"><FONT CLASS=\"android_standard\">"._QXZ("Barge")."</a></FONT>\n";
|
||||
# echo "<BR> Real-Time IAX: <a href=\"AST_timeonVDADall.php?IAXmonitorLINK=1\"><FONT CLASS=\"android_standard\">"._QXZ("Listen")."</a></FONT> - <a href=\"AST_timeonVDADall.php?IAXmonitorLINK=2\"><FONT CLASS=\"android_standard\">"._QXZ("Barge")."</a></FONT><BR><BR>\n";
|
||||
if ( (preg_match("/Real-Time Campaign Summary/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"AST_timeonVDADallSUMMARY_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Real-Time Campaign Summary")."</a></FONT></LI>\n";}
|
||||
{echo "<LI><a href=\"AST_timeonVDADallSUMMARY_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Real-Time Campaign Summary")."</a></FONT></LI>\n";}
|
||||
if ( (preg_match("/Real-Time Whiteboard Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"AST_rt_whiteboard_rpt_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Real-Time Whiteboard Report")."</a></FONT></LI>\n";}
|
||||
{echo "<LI><a href=\"AST_rt_whiteboard_rpt_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Real-Time Whiteboard Report")."</a></FONT></LI>\n";}
|
||||
echo "</UL><BR>\n";
|
||||
|
||||
|
||||
echo "<B>"._QXZ("Agent Reports")."</B><BR>\n";
|
||||
echo "<UL>\n";
|
||||
# if ( (preg_match("/Agent Time Detail/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_agent_time_detail.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Agent Time Detail")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_agent_time_detail.php\"><FONT CLASS=\"android_standard\">"._QXZ("Agent Time Detail")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/Agent Status Detail/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_agent_status_detail.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Agent Status Detail")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_agent_status_detail.php\"><FONT CLASS=\"android_standard\">"._QXZ("Agent Status Detail")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/Agent Inbound Status Summary/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo " - <a href=\"AST_agent_inbound_status.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Inbound Summary")."</a></FONT>\n";}
|
||||
# {echo " - <a href=\"AST_agent_inbound_status.php\"><FONT CLASS=\"android_standard\">"._QXZ("Inbound Summary")."</a></FONT>\n";}
|
||||
if ( (preg_match("/Agent Performance Detail/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"AST_agent_performance_detail_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Agent Performance Detail")."</a></FONT></LI>\n";}
|
||||
{echo "<LI><a href=\"AST_agent_performance_detail_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Agent Performance Detail")."</a></FONT></LI>\n";}
|
||||
if ( (preg_match("/Team Performance Detail/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
{echo "<LI><a href=\"AST_team_performance_detail_mobile.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Team Performance Detail")."</a></FONT></LI>\n";}
|
||||
{echo "<LI><a href=\"AST_team_performance_detail_mobile.php\"><FONT CLASS=\"android_standard\">"._QXZ("Team Performance Detail")."</a></FONT></LI>\n";}
|
||||
# if ( (preg_match("/Performance Comparison Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_performance_comparison_report.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Performance Comparison Report")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_performance_comparison_report.php\"><FONT CLASS=\"android_standard\">"._QXZ("Performance Comparison Report")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/Single Agent Daily$/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_agent_days_detail.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Single Agent Daily")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_agent_days_detail.php\"><FONT CLASS=\"android_standard\">"._QXZ("Single Agent Daily")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/Single Agent Daily Time/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo " - <a href=\"AST_agent_days_time.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("Time")."</a></FONT>\n";}
|
||||
# {echo " - <a href=\"AST_agent_days_time.php\"><FONT CLASS=\"android_standard\">"._QXZ("Time")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/User Group Login Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_usergroup_login_report.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("User Group Login Report")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_usergroup_login_report.php\"><FONT CLASS=\"android_standard\">"._QXZ("User Group Login Report")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/User Group Hourly Report/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_user_group_hourly_detail.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("User Group Hourly Report")."</a></FONT> - <a href=\"AST_user_group_hourly_detail_v2.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("v2")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_user_group_hourly_detail.php\"><FONT CLASS=\"android_standard\">"._QXZ("User Group Hourly Report")."</a></FONT> - <a href=\"AST_user_group_hourly_detail_v2.php\"><FONT CLASS=\"android_standard\">"._QXZ("v2")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/User Stats/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"user_stats.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("User Stats")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"user_stats.php\"><FONT CLASS=\"android_standard\">"._QXZ("User Stats")."</a></FONT>\n";}
|
||||
# if ( (preg_match("/User Time Sheet/",$LOGallowed_reports)) or (preg_match("/ALL REPORTS/",$LOGallowed_reports)) )
|
||||
# {echo "<LI><a href=\"AST_agent_time_sheet.php\"><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK size=2>"._QXZ("User Time Sheet")."</a></FONT>\n";}
|
||||
# {echo "<LI><a href=\"AST_agent_time_sheet.php\"><FONT CLASS=\"android_standard\">"._QXZ("User Time Sheet")."</a></FONT>\n";}
|
||||
echo "</UL>\n";
|
||||
echo "</div>";
|
||||
|
||||
@@ -911,14 +912,14 @@ if ($ADD==999990)
|
||||
echo "<TABLE class='admin_stats_table' cellpadding=6 cellspacing=0>\n";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_users.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Agents Logged In")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Agents Logged In")."</font></td>";
|
||||
echo "<td width=3 rowspan=2> </td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_agentsincalls.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Agents In Calls")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Agents In Calls")."</font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$agent_total</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$agent_incall</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$agent_total</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$agent_incall</font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td height=3 colspan=5> </td>";
|
||||
@@ -926,14 +927,14 @@ if ($ADD==999990)
|
||||
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_agentspaused.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Agents Paused")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Agents Paused")."</font></td>";
|
||||
echo "<td width=3 rowspan=2> </td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_agentswaiting.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Agents Waiting")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Agents Waiting")."</font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$agent_paused</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$agent_waiting</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$agent_paused</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$agent_waiting</font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td height=3 colspan=5> </td>";
|
||||
@@ -941,14 +942,14 @@ if ($ADD==999990)
|
||||
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_calls.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Active Calls")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Active Calls")."</font></td>";
|
||||
echo "<td width=3 rowspan=2> </td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background' rowspan=2><a href=\"realtime_report_mobile.php?report_display_type=HTML\"><img src=\"images/icon_ringing.png\" width=42 height=42 border=0></a></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:11;color:white;font-weight:bold;\">"._QXZ("Calls Ringing")."</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_small bold\" color=\"white\">"._QXZ("Calls Ringing")."</font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr"; if ($SSadmin_row_click > 0) {echo " onclick=\"window.document.location='realtime_report_mobile.php?report_display_type=HTML';\"";} echo ">";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$agent_incall</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font style=\"font-family:HELVETICA;font-size:18;color:white;font-weight:bold;\">$ringing_calls</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$agent_incall</font></td>";
|
||||
echo "<td align='center' valign='middle' bgcolor='#$SSmenu_background'><font CLASS=\"android_large\" color=\"white\">$ringing_calls</font></td>";
|
||||
echo "</tr>";
|
||||
echo "</TABLE>";
|
||||
echo "<br><br>";
|
||||
@@ -956,7 +957,7 @@ if ($ADD==999990)
|
||||
echo "<a name='HourlyCampaignCounts'>";
|
||||
echo "<TABLE align='center' class='admin_stats_table' cellspacing=2>\n";
|
||||
echo "<tr><td>";
|
||||
echo "<canvas id='campaign_hour_chart'></canvas>"; # style='width: 40vw; max-width: 350px;'
|
||||
echo "<canvas id='campaign_hour_chart' style='height: 40vh; max-height: 500px'></canvas>"; # style='width: 40vw; max-width: 350px;'
|
||||
echo "</td></tr>";
|
||||
echo "</table>";
|
||||
|
||||
@@ -965,20 +966,20 @@ if ($ADD==999990)
|
||||
echo "<a name='SystemSummary'>";
|
||||
echo "<TABLE class='admin_stats_table' cellspacing=2>\n";
|
||||
echo "<tr>";
|
||||
echo "<td align='left' colspan='4'><font style=\"font-family:HELVETICA;font-size:16;color:black;font-weight:bold;\">"._QXZ("System Summary").":</font></td>";
|
||||
echo "<td align='left' colspan='4'><font CLASS=\"android_standard bold\">"._QXZ("System Summary").":</font></td>";
|
||||
echo "</tr>";
|
||||
|
||||
echo "<tr bgcolor=black>";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> "._QXZ("Records")." </font></td>";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> "._QXZ("Active")." </font></td>";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> "._QXZ("Inactive")." </font></td>";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> "._QXZ("Total")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> "._QXZ("Records")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> "._QXZ("Active")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> "._QXZ("Inactive")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> "._QXZ("Total")." </font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><a href='$PHP_SELF?ADD=0A' STYLE=\"text-decoration:none;\"><font color=black>"._QXZ("Users").": </a></td><td align=center><b>".($users["Y"]+0)."</b></td><td align=center><b>".($users["N"]+0)."</b></td><td align=center><b>".($users["Y"]+$users["N"]+0)."</b></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><a href='$PHP_SELF?ADD=10' STYLE=\"text-decoration:none;\"><font color=black>"._QXZ("Campaigns").": </a></td><td align=center><b>".($campaigns["Y"]+0)."</b></td><td align=center><b>".($campaigns["N"]+0)."</b></td><td align=center><b>".($campaigns["Y"]+$campaigns["N"]+0)."</b></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><a href='$PHP_SELF?ADD=100' STYLE=\"text-decoration:none;\"><font color=black>"._QXZ("Lists").": </a></td><td align=center><b>".($lists["Y"]+0)."</b></td><td align=center><b>".($lists["N"]+0)."</b></td><td align=center><b>".($lists["Y"]+$lists["N"]+0)."</b></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><a href='$PHP_SELF?ADD=1000' STYLE=\"text-decoration:none;\"><font color=black>"._QXZ("In-Groups").": </a></td><td align=center><b>".($ingroups["Y"]+0)."</b></td><td align=center><b>".($ingroups["N"]+0)."</b></td><td align=center><b>".($ingroups["Y"]+$ingroups["N"]+0)."</b></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><a href='$PHP_SELF?ADD=1300' STYLE=\"text-decoration:none;\"><font color=black>"._QXZ("DIDs").": </a></td><td align=center><b>".($dids["Y"]+0)."</b></td><td align=center><b>".($dids["N"]+0)."</b></td><td align=center><b>".($dids["Y"]+$dids["N"]+0)."</b></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><font class=\"android_standard\">"._QXZ("Users").": </font></td><td align=center><font class=\"android_standard bold\">".($users["Y"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($users["N"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($users["Y"]+$users["N"]+0)."</font></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><font class=\"android_standard\">"._QXZ("Campaigns").": </font></td><td align=center><font class=\"android_standard bold\">".($campaigns["Y"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($campaigns["N"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($campaigns["Y"]+$campaigns["N"]+0)."</font></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><font class=\"android_standard\">"._QXZ("Lists").": </font></td><td align=center><font class=\"android_standard bold\">".($lists["Y"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($lists["N"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($lists["Y"]+$lists["N"]+0)."</font></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><font class=\"android_standard\">"._QXZ("In-Groups").": </font></td><td align=center><font class=\"android_standard bold\">".($ingroups["Y"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($ingroups["N"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($ingroups["Y"]+$ingroups["N"]+0)."</font></td></tr>\n";
|
||||
echo "<tr bgcolor=#$SSstd_row4_background><td align=right><font class=\"android_standard\">"._QXZ("DIDs").": </font></td><td align=center><font class=\"android_standard bold\">".($dids["Y"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($dids["N"]+0)."</font></td><td align=center><font class=\"android_standard bold\">".($dids["Y"]+$dids["N"]+0)."</font></td></tr>\n";
|
||||
|
||||
// New voicemailbox code
|
||||
$stmt="(SELECT voicemail_id,count(*),messages,old_messages,'vm','vm' from vicidial_voicemail where on_login_report='Y' $LOGadmin_viewable_groupsSQL group by voicemail_id) UNION (SELECT voicemail_id,count(*),messages,old_messages,extension,server_ip from phones where on_login_report='Y' $LOGadmin_viewable_groupsSQL group by voicemail_id) order by voicemail_id;";
|
||||
@@ -991,10 +992,10 @@ if ($ADD==999990)
|
||||
echo "<td align='left' colspan='4'> </td>"; # Padding
|
||||
echo "</tr>";
|
||||
echo "<tr bgcolor=black>";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> Voicemail Box </font></td>\n";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> New </font></td>\n";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> Old </font></td>\n";
|
||||
echo "<td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> Total </font></td>\n";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> Voicemail Box </font></td>\n";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> New </font></td>\n";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> Old </font></td>\n";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=\"white\"> Total </font></td>\n";
|
||||
echo "</tr>\n";
|
||||
|
||||
while($row=mysqli_fetch_array($rslt))
|
||||
@@ -1002,15 +1003,15 @@ if ($ADD==999990)
|
||||
echo "<tr bgcolor='#$SSstd_row2_background'>\n";
|
||||
if ($row[4] == 'vm')
|
||||
{
|
||||
echo "<td align='right'><a href='$PHP_SELF?ADD=371111111111&voicemail_id=$row[0]' STYLE=\"text-decoration:none;\"><font color=black>$row[0]:</a></font></td>\n";
|
||||
echo "<td align='right'><font class=\"android_standard\">$row[0]:</font></font></td>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<td align='right'><a href='$PHP_SELF?ADD=31111111111&extension=$row[4]&server_ip=$row[5]' STYLE=\"text-decoration:none;\"><font color=black>$row[0]:</a></font></td>\n";
|
||||
echo "<td align='right'><font class=\"android_standard\">$row[0]:</font></td>\n";
|
||||
}
|
||||
echo "<td align='center'>$row[2]</font></td>\n";
|
||||
echo "<td align='center'>$row[3]</font></td>\n";
|
||||
echo "<td align='center'>".($row[2]+$row[3])."</font></td>\n";
|
||||
echo "<td align='center'><font class=\"android_standard\">$row[2]</font></td>\n";
|
||||
echo "<td align='center'><font class=\"android_standard\">$row[3]</font></td>\n";
|
||||
echo "<td align='center'><font class=\"android_standard\">".($row[2]+$row[3])."</font></td>\n";
|
||||
echo "</tr>\n";
|
||||
}
|
||||
}
|
||||
@@ -1043,17 +1044,17 @@ if ($ADD==999990)
|
||||
$stmt="SELECT * from vicidial_daily_max_stats where stats_date='$today' and stats_flag='OPEN' and stats_type='TOTAL' $LOGallowed_campaignsSQL order by stats_date, campaign_id asc";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
echo "<center><TABLE class='admin_stats_table' cellspacing=0 cellpadding=1>\n";
|
||||
echo "<center><TABLE class='admin_stats_table' cellspacing=2 cellpadding=1>\n";
|
||||
echo "<tr>";
|
||||
echo "<td align='left' colspan='4'><font style=\"font-family:HELVETICA;font-size:12;color:black;font-weight:bold;\">"._QXZ("Total Stats for Today").":</font></td>";
|
||||
echo "<td align='left' colspan='4'><font CLASS=\"android_standard bold\">"._QXZ("Total Stats for Today").":</font></td>";
|
||||
# echo "<td align='right'><font size=1><a href='$PHP_SELF?query_date=$thirtydays&end_date=$today&max_system_stats_submit=ADJUST+DATE+RANGE&ADD=999992&stage=TOTAL'>["._QXZ("view max stats")."]</a></font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr bgcolor=black>";
|
||||
# echo "<td><font size=1 color=white align=left><B>CAMPAIGN ID</B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Inbound Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Outbound Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Maximum Agents")." </B></font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Inbound Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Outbound Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Maximum Agents")." </font></td>";
|
||||
|
||||
if (mysqli_num_rows($rslt)>0)
|
||||
{
|
||||
@@ -1061,17 +1062,17 @@ if ($ADD==999990)
|
||||
{
|
||||
echo "<tr bgcolor='#$SSstd_row2_background'>";
|
||||
# echo "<td align='left'><font size=1>".$row["campaign_id"]."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($total_calls+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($total_inbound+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($total_outbound+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($row["max_agents"]+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($total_calls+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($total_inbound+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($total_outbound+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($row["max_agents"]+0)."</font></td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<tr bgcolor='#$SSstd_row2_background'>";
|
||||
echo "<td align='center' colspan='4'><font size=1>*** "._QXZ("NO ACTIVITY FOR")." $today ***</font></td>";
|
||||
echo "<td align='center' colspan='4'><font CLASS=\"android_standard bold\">*** "._QXZ("NO ACTIVITY FOR")." $today ***</font></td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
echo "</TABLE></center>\n";
|
||||
@@ -1093,17 +1094,17 @@ if ($ADD==999990)
|
||||
}
|
||||
}
|
||||
|
||||
echo "<center><TABLE class='admin_stats_table' cellspacing=0 cellpadding=1>\n";
|
||||
echo "<center><TABLE class='admin_stats_table' cellspacing=2 cellpadding=1>\n";
|
||||
echo "<tr>";
|
||||
echo "<td align='left' colspan='4'><font style=\"font-family:HELVETICA;font-size:12;color:black;font-weight:bold;\">"._QXZ("Total Stats for Yesterday").":</font></td>";
|
||||
echo "<td align='left' colspan='4'><font CLASS=\"android_standard bold\">"._QXZ("Total Stats for Yesterday").":</font></td>";
|
||||
# echo "<td align='right'><font size=1><a href='$PHP_SELF?query_date=$thirtydays&end_date=$today&max_system_stats_submit=ADJUST+DATE+RANGE&ADD=999992&stage=TOTAL'>["._QXZ("view max stats")."]</a></font></td>";
|
||||
echo "</tr>";
|
||||
echo "<tr bgcolor=black>";
|
||||
# echo "<td><font size=1 color=white align=left><B>CAMPAIGN ID</B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Inbound Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Total Outbound Calls")." </B></font></td>";
|
||||
echo "<td><font size=1 color=white><B> "._QXZ("Maximum Agents")." </B></font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Inbound Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Total Outbound Calls")." </font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard\" color=white>"._QXZ("Maximum Agents")." </font></td>";
|
||||
|
||||
$stmt="SELECT * from vicidial_daily_max_stats where stats_date='$yesterday' and stats_type='TOTAL' $LOGallowed_campaignsSQL order by stats_date, campaign_id asc";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
@@ -1114,17 +1115,17 @@ if ($ADD==999990)
|
||||
{
|
||||
echo "<tr bgcolor='#$SSstd_row2_background'>";
|
||||
#echo "<td align='left'><font size=1>".$row["campaign_id"]."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($row["total_calls"]+0)." / ".($total_calls+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($total_inbound+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($total_outbound+0)."</font></td>";
|
||||
echo "<td align='center'><font size=1>".($row["max_agents"]+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($row["total_calls"]+0)." / ".($total_calls+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($total_inbound+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($total_outbound+0)."</font></td>";
|
||||
echo "<td align='center'><font CLASS=\"android_standard bold\">".($row["max_agents"]+0)."</font></td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<tr bgcolor='#$SSstd_row2_background'>";
|
||||
echo "<td align='center' colspan='4'><font size=1>*** "._QXZ("NO ACTIVITY FOR")." $today ***</font></td>";
|
||||
echo "<td align='center' colspan='4'><font CLASS=\"android_standard bold\">*** "._QXZ("NO ACTIVITY FOR")." $today ***</font></td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
|
||||
@@ -1132,8 +1133,7 @@ if ($ADD==999990)
|
||||
}
|
||||
else
|
||||
{
|
||||
$section_width=640;
|
||||
echo "<BR><FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2>";
|
||||
echo "<BR><FONT CLASS=\"android_standard\">";
|
||||
echo "<center><TABLE class='admin_stats_table' cellspacing=2>\n";
|
||||
echo "<tr>";
|
||||
echo "<td align='left' colspan='4'>"._QXZ("Welcome")."</td>";
|
||||
@@ -1373,11 +1373,11 @@ function LoadHourlyCharts() {
|
||||
else
|
||||
{
|
||||
var ctx = document.getElementById('campaign_hour_chart').getContext('2d');
|
||||
document.getElementById('campaign_hour_chart').height=40;
|
||||
document.getElementById('campaign_hour_chart').height=400;
|
||||
ctx.font = "bold 14px Arial";
|
||||
ctx.textAlign = "center";
|
||||
ctx.fillText("<?php echo "*** "._QXZ("NO HOURLY CAMPAIGN COUNTS")." ***"; ?>", document.getElementById('campaign_hour_chart').width/2, document.getElementById('campaign_hour_chart').height/2);
|
||||
// document.getElementById('campaign_hour_chart').innerHTML="<TABLE class='admin_stats_table' cellspacing=2><tr bgcolor=black><td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> </font></td></table>";
|
||||
ctx.fillText("<?php echo "*** "._QXZ("NO HOURLY CAMPAIGN COUNTS")." ***"; ?>", document.getElementById('campaign_hour_chart').width/2, document.getElementById('campaign_hour_chart').height/4);
|
||||
// document.getElementById('campaign_hour_chart').innerHTML="<TABLE class='admin_stats_table' cellspacing=2><tr bgcolor=black><td align='center'><font CLASS=\"android_standard\"> </font></td></table>";
|
||||
}
|
||||
<?php
|
||||
if ($voodoo)
|
||||
@@ -1435,7 +1435,7 @@ if ($voodoo)
|
||||
ctx2.font = "bold 14px Arial";
|
||||
ctx2.textAlign = "center";
|
||||
ctx2.fillText("<?php echo "*** "._QXZ("NO HOURLY INGROUP COUNTS")." ***"; ?>", document.getElementById('ingroup_hour_chart').width/2, document.getElementById('ingroup_hour_chart').height/2);
|
||||
// document.getElementById('ingroup_hour_chart').innerHTML="<TABLE class='admin_stats_table' cellspacing=2><tr bgcolor=black><td align='center'><font style=\"font-family:HELVETICA;font-size:14;color:white;font-weight:bold;\"> <?php echo "*** "._QXZ("NO HOURLY INGROUP COUNTS")." ***"; ?> </font></td></table>";
|
||||
// document.getElementById('ingroup_hour_chart').innerHTML="<TABLE class='admin_stats_table' cellspacing=2><tr bgcolor=black><td align='center'><font CLASS=\"android_standard\"> <?php echo "*** "._QXZ("NO HOURLY INGROUP COUNTS")." ***"; ?> </font></td></table>";
|
||||
}
|
||||
|
||||
<?php } ?>
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
<?php
|
||||
# agent_sales_report_mobile.php
|
||||
|
||||
#
|
||||
# Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# Streamlined report for displaying sale-only statistics in a format easily readable on a mobile device
|
||||
#
|
||||
# CHANGELOG:
|
||||
# 200309-1819 - First Build
|
||||
#
|
||||
|
||||
$startMS = microtime();
|
||||
|
||||
@@ -282,7 +289,10 @@ while ($i < $campaigns_to_print)
|
||||
$row=mysqli_fetch_row($rslt);
|
||||
$groups[$i] =$row[0];
|
||||
if (preg_match('/\-ALL/',$group_string) )
|
||||
{$group[$i] = $groups[$i];}
|
||||
{
|
||||
$group[$i] = $groups[$i];
|
||||
$all_groups=1;
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
|
||||
@@ -327,6 +337,7 @@ else
|
||||
$group_SQL_str=$group_SQL;
|
||||
$group_SQL = "and campaign_id IN($group_SQL)";
|
||||
}
|
||||
if (preg_match('/\-\-ALL\-\-/',$group_string) || $all_groups) {$groupQS="&group[]=--ALL--"; $group_string="--ALL--";}
|
||||
|
||||
$i=0;
|
||||
$user_group_string='|';
|
||||
@@ -346,6 +357,7 @@ else
|
||||
$user_group_SQL = preg_replace('/,$/i', '',$user_group_SQL);
|
||||
$user_group_SQL = "and user_group IN($user_group_SQL)";
|
||||
}
|
||||
if ($all_user_groups) {$user_groupQS="&user_group[]=--ALL--"; $user_group_string="--ALL--";}
|
||||
|
||||
$rpt_params="SUBMIT=".$SUBMIT."&DB=".$DB."&query_date_D=".$query_date_D."&query_date_T=".$query_date_T."&report_display_type=".$report_display_type."&refresh_rate=".$refresh_rate."&top_agents=".$top_agents."&sort_by=".$sort_by.$user_groupQS.$groupQS;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
# realtime_report_mobile.php
|
||||
#
|
||||
# Copyright (C) 2019 Matt Florell <vicidial@gmail.com>, Joe Johnson <joej@vicidial.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <joej@vicidial.com> LICENSE: AGPLv2
|
||||
#
|
||||
# streamlined mobile version of live real-time stats for the VICIDIAL Auto-Dialer all servers
|
||||
#
|
||||
@@ -13,12 +13,13 @@
|
||||
# CHANGELOG:
|
||||
# 190206-1616 - First Build
|
||||
# 190228-1535 - Minor pre-release changes
|
||||
# 200309-1819 - Modifications for display formatting
|
||||
#
|
||||
|
||||
$startMS = microtime();
|
||||
|
||||
$version = '2.14-2';
|
||||
$build = '190228-1535';
|
||||
$version = '2.14-3';
|
||||
$build = '200309-1819';
|
||||
|
||||
header ("Content-type: text/html; charset=utf-8");
|
||||
|
||||
@@ -124,6 +125,7 @@ $webphone_bufw = '250';
|
||||
$webphone_bufh = '1';
|
||||
$webphone_pad = '10';
|
||||
$webphone_clpos = "<BR> <a href=\"#\" onclick=\"hideDiv('webphone_content');\">"._QXZ("webphone")." -</a>";
|
||||
$TOTALdisplays=0;
|
||||
|
||||
if (file_exists('options.php'))
|
||||
{
|
||||
@@ -154,6 +156,7 @@ if (!isset($UGdisplay))
|
||||
{
|
||||
if (!isset($RS_UGdisplay)) {$UGdisplay=0;}
|
||||
else {$UGdisplay = $RS_UGdisplay;}
|
||||
$TOTALdisplay+=$UGdisplay;
|
||||
}
|
||||
if (!isset($UidORname))
|
||||
{
|
||||
@@ -169,21 +172,25 @@ if (!isset($SERVdisplay))
|
||||
{
|
||||
if (!isset($RS_SERVdisplay)) {$SERVdisplay=0;}
|
||||
else {$SERVdisplay = $RS_SERVdisplay;}
|
||||
$TOTALdisplay+=$SERVdisplay;
|
||||
}
|
||||
if (!isset($CALLSdisplay))
|
||||
{
|
||||
if (!isset($RS_CALLSdisplay)) {$CALLSdisplay=1;}
|
||||
else {$CALLSdisplay = $RS_CALLSdisplay;}
|
||||
$TOTALdisplay+=$CALLSdisplay;
|
||||
}
|
||||
if (!isset($PHONEdisplay))
|
||||
{
|
||||
if (!isset($RS_PHONEdisplay)) {$PHONEdisplay=0;}
|
||||
else {$PHONEdisplay = $RS_PHONEdisplay;}
|
||||
$TOTALdisplay+=$PHONEdisplay;
|
||||
}
|
||||
if (!isset($CUSTPHONEdisplay))
|
||||
{
|
||||
if (!isset($RS_CUSTPHONEdisplay)) {$CUSTPHONEdisplay=0;}
|
||||
else {$CUSTPHONEdisplay = $RS_CUSTPHONEdisplay;}
|
||||
$TOTALdisplay+=$CUSTPHONEdisplay;
|
||||
}
|
||||
if (!isset($PAUSEcodes))
|
||||
{
|
||||
@@ -283,6 +290,8 @@ $AGENTtimeSTATS = preg_replace('/[^-_0-9a-zA-Z]/', '', $AGENTtimeSTATS);
|
||||
$INGROUPcolorOVERRIDE = preg_replace('/[^-_0-9a-zA-Z]/', '', $INGROUPcolorOVERRIDE);
|
||||
$droppedOFtotal = preg_replace('/[^-_0-9a-zA-Z]/', '', $droppedOFtotal);
|
||||
|
||||
$TOTALdisplay+=$ALLINGROUPstats;
|
||||
|
||||
$stmt="SELECT selected_language from vicidial_users where user='$PHP_AUTH_USER';";
|
||||
if ($DB) {echo "|$stmt|\n";}
|
||||
$rslt=mysql_to_mysqli($stmt, $link);
|
||||
@@ -666,8 +675,10 @@ $NFB = '<b><font size=6 face="courier">';
|
||||
$NFE = '</font></b>';
|
||||
$F=''; $FG=''; $B=''; $BG='';
|
||||
|
||||
$select_list = "<TABLE class='realtime_settings_table' CELLPADDING=5 BGCOLOR='#D9E6FE'><TR><TD VALIGN=TOP><font class='top_settings_header'>"._QXZ("Select Campaigns").": </font><BR>";
|
||||
$select_list .= "<SELECT class='top_settings_input' SIZE=8 NAME=groups[] ID=groups[] multiple>";
|
||||
$select_list = "<TABLE class='realtime_settings_table' CELLPADDING=5 BGCOLOR='#D9E6FE' border='0'><TR><TD VALIGN=TOP>";
|
||||
$select_list .= "<font class='top_settings_header bold'><a href='#' onclick=\\\"hideDiv('campaign_select_list');\\\">"._QXZ("Close Panel")."</a></font><BR><BR>"; #*
|
||||
$select_list .= "<font class='top_settings_header'>"._QXZ("Select Campaigns").": </font><BR>";
|
||||
$select_list .= "<SELECT class='form_field_android_small' NAME=groups[] ID=groups[] multiple>";
|
||||
$o=0;
|
||||
while ($groups_to_print > $o)
|
||||
{
|
||||
@@ -680,8 +691,8 @@ while ($groups_to_print > $o)
|
||||
$select_list .= "</SELECT>";
|
||||
$select_list .= "<BR><font class='top_settings_val'>("._QXZ("To select more than 1 campaign, hold down the Ctrl key and click").")</font>";
|
||||
|
||||
$select_list .= "<BR><BR><font class='top_settings_val'>"._QXZ("Select User Groups").": </font><BR>";
|
||||
$select_list .= "<SELECT class='top_settings_input' SIZE=8 NAME=user_group_filter[] ID=user_group_filter[] multiple>";
|
||||
$select_list .= "<BR><BR><font class='top_settings_header'>"._QXZ("Select User Groups").": </font><BR>";
|
||||
$select_list .= "<SELECT class='form_field_android_small' NAME=user_group_filter[] ID=user_group_filter[] multiple>";
|
||||
$o=0;
|
||||
while ($o < $usergroups_to_print)
|
||||
{
|
||||
@@ -698,12 +709,12 @@ while ($o < $usergroups_to_print)
|
||||
}
|
||||
$select_list .= "</SELECT>";
|
||||
|
||||
$select_list .= "</TD><TD VALIGN=TOP ALIGN=CENTER><font class='top_settings_header'>";
|
||||
$select_list .= "<a href='#' onclick=\\\"hideDiv('campaign_select_list');\\\">"._QXZ("Close Panel")."</a></font><BR><BR>";
|
||||
$select_list .= "<TABLE CELLPADDING=2 CELLSPACING=2 BORDER=0>";
|
||||
#$select_list .= "</TD><TD VALIGN=TOP ALIGN=CENTER><font class='top_settings_header'>";
|
||||
#*
|
||||
$select_list .= "<BR><BR><TABLE CELLPADDING=2 CELLSPACING=2 BORDER=0>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Screen Refresh Rate").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=RR ID=RR>";
|
||||
$select_list .= _QXZ("Screen Refresh Rate").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=RR ID=RR>";
|
||||
$select_list .= "<option value='4'"; if ($RR < 5) {$select_list .= " selected";} $select_list .= ">4 "._QXZ("seconds")."</option>";
|
||||
$select_list .= "<option value='10'"; if ( ($RR >= 5) and ($RR <=10) ) {$select_list .= " selected";} $select_list .= ">10 "._QXZ("seconds")."</option>";
|
||||
$select_list .= "<option value='20'"; if ( ($RR >= 11) and ($RR <=20) ) {$select_list .= " selected";} $select_list .= ">20 "._QXZ("seconds")."</option>";
|
||||
@@ -722,7 +733,7 @@ $select_list .= "<option value='63072000'"; if ($RR >= 7201) {$select_list .=
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Inbound").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=with_inbound ID=with_inbound>";
|
||||
$select_list .= _QXZ("Inbound").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=with_inbound ID=with_inbound>";
|
||||
$select_list .= "<option value='N'";
|
||||
if ($with_inbound=='N') {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("No")."</option>";
|
||||
@@ -735,7 +746,7 @@ $select_list .= ">"._QXZ("Only")."</option>";
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Monitor").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=monitor_active ID=monitor_active>";
|
||||
$select_list .= _QXZ("Monitor").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=monitor_active ID=monitor_active>";
|
||||
$select_list .= "<option value=''";
|
||||
if (strlen($monitor_active) < 2) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NONE")."</option>";
|
||||
@@ -758,7 +769,7 @@ $select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Phone").": </font></TD><TD align=left>";
|
||||
$select_list .= "<INPUT class='top_settings_input' type=text size=10 maxlength=20 NAME=monitor_phone ID=monitor_phone VALUE='$monitor_phone'>";
|
||||
$select_list .= "<INPUT class='form_field_android_small' type=text size=10 maxlength=20 NAME=monitor_phone ID=monitor_phone VALUE='$monitor_phone'>";
|
||||
$select_list .= "</TD></TR>";
|
||||
$select_list .= "<TR><TD align=center COLSPAN=2> </TD></TR>";
|
||||
|
||||
@@ -766,7 +777,7 @@ if ($UGdisplay > 0)
|
||||
{
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Select User Group").": </font></TD><TD align=left>";
|
||||
$select_list .= "<SELECT class='top_settings_input' SIZE=1 NAME=usergroup ID=usergroup>";
|
||||
$select_list .= "<SELECT class='form_field_android_small' SIZE=1 NAME=usergroup ID=usergroup>";
|
||||
$select_list .= "<option value=''>"._QXZ("ALL USER GROUPS")."</option>";
|
||||
$o=0;
|
||||
while ($usergroups_to_print > $o)
|
||||
@@ -779,7 +790,7 @@ if ($UGdisplay > 0)
|
||||
}
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Dialable Leads Alert").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=NOLEADSalert ID=NOLEADSalert>";
|
||||
$select_list .= _QXZ("Dialable Leads Alert").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=NOLEADSalert ID=NOLEADSalert>";
|
||||
$select_list .= "<option value=''";
|
||||
if (strlen($NOLEADSalert) < 2) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -789,7 +800,7 @@ $select_list .= ">"._QXZ("YES")."</option>";
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Show Drop In-Group Row").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=DROPINGROUPstats ID=DROPINGROUPstats>";
|
||||
$select_list .= _QXZ("Show Drop In-Group Row").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=DROPINGROUPstats ID=DROPINGROUPstats>";
|
||||
$select_list .= "<option value='0'";
|
||||
if ($DROPINGROUPstats < 1) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -799,7 +810,7 @@ $select_list .= ">"._QXZ("YES")."</option>";
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Show Carrier Stats").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=CARRIERstats ID=CARRIERstats>";
|
||||
$select_list .= _QXZ("Show Carrier Stats").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=CARRIERstats ID=CARRIERstats>";
|
||||
$select_list .= "<option value='0'";
|
||||
if ($CARRIERstats < 1) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -822,7 +833,7 @@ if ($presets_enabled_count > 0)
|
||||
if ($presets_enabled > 0)
|
||||
{
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Show Presets Stats").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=PRESETstats ID=PRESETstats>";
|
||||
$select_list .= _QXZ("Show Presets Stats").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=PRESETstats ID=PRESETstats>";
|
||||
$select_list .= "<option value='0'";
|
||||
if ($PRESETstats < 1) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -837,7 +848,7 @@ else
|
||||
}
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("Agent Time Stats").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=AGENTtimeSTATS ID=AGENTtimeSTATS>";
|
||||
$select_list .= _QXZ("Agent Time Stats").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=AGENTtimeSTATS ID=AGENTtimeSTATS>";
|
||||
$select_list .= "<option value='0'";
|
||||
if ($AGENTtimeSTATS < 1) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -847,7 +858,7 @@ $select_list .= ">"._QXZ("YES")."</option>";
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right><font class='top_settings_header'>";
|
||||
$select_list .= _QXZ("In-group color override").": </font></TD><TD align=left><SELECT class='top_settings_input' SIZE=1 NAME=INGROUPcolorOVERRIDE ID=INGROUPcolorOVERRIDE>";
|
||||
$select_list .= _QXZ("In-group color override").": </font></TD><TD align=left><SELECT class='form_field_android_small' SIZE=1 NAME=INGROUPcolorOVERRIDE ID=INGROUPcolorOVERRIDE>";
|
||||
$select_list .= "<option value='0'";
|
||||
if ($INGROUPcolorOVERRIDE < 1) {$select_list .= " selected";}
|
||||
$select_list .= ">"._QXZ("NO")."</option>";
|
||||
@@ -856,16 +867,14 @@ $select_list .= "<option value='1'";
|
||||
$select_list .= ">"._QXZ("YES")."</option>";
|
||||
$select_list .= "</SELECT></TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=right> </TD></TR>";
|
||||
$select_list .= "<TR><TD align=right colspan='2'> </TD></TR>";
|
||||
|
||||
$select_list .= "<TR><TD align=center colspan='2'><INPUT class='red_btn_mobile_sm' type=button VALUE=SUBMIT onclick=\\\"update_variables('form_submit','');\\\"></TD></TR>";
|
||||
|
||||
$select_list .= "</TABLE><BR>";
|
||||
$select_list .= "<INPUT type=hidden name=droppedOFtotal value='$droppedOFtotal'>";
|
||||
$select_list .= "<INPUT class='top_settings_input' type=button VALUE=SUBMIT onclick=\\\"update_variables('form_submit','');\\\"><FONT FACE='ARIAL,HELVETICA' COLOR=BLACK SIZE=2> ";
|
||||
$select_list .= "</TD></TR>";
|
||||
$select_list .= "<TR><TD ALIGN=CENTER>";
|
||||
$select_list .= "<font class='top_settings_val'> </font>";
|
||||
$select_list .= "</TD>";
|
||||
$select_list .= "<TR>";
|
||||
$select_list .= "<TD NOWRAP align=right>";
|
||||
$select_list .= "<font class='top_settings_val'>"._QXZ("VERSION").": $version "._QXZ("BUILD").": $build</font>";
|
||||
$select_list .= "</TD></TR></TABLE>";
|
||||
@@ -988,7 +997,7 @@ if (strlen($monitor_phone)>1)
|
||||
##### END code for embedded webphone for monitoring #####
|
||||
|
||||
|
||||
|
||||
require("screen_colors.php");
|
||||
?>
|
||||
|
||||
<HTML>
|
||||
@@ -1332,15 +1341,18 @@ function gather_realtime_content()
|
||||
}
|
||||
}
|
||||
@end @*/
|
||||
|
||||
var RTdisplay_type=document.getElementById("RTDisplayInfo").value;
|
||||
|
||||
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
|
||||
{
|
||||
xmlhttp = new XMLHttpRequest();
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
RTupdate_query = "RTajax=1&mobile_device=1&DB=" + DB + "" + groupQS + usergroupQS + "&adastats=" + adastats + "&SIPmonitorLINK=" + SIPmonitorLINK + "&IAXmonitorLINK=" + IAXmonitorLINK + "&usergroup=" + usergroup + "&UGdisplay=" + UGdisplay + "&UidORname=" + UidORname + "&orderby=" + orderby + "&SERVdisplay=" + SERVdisplay + "&CALLSdisplay=" + CALLSdisplay + "&PHONEdisplay=" + PHONEdisplay + "&CUSTPHONEdisplay=" + CUSTPHONEdisplay + "&with_inbound=" + with_inbound + "&monitor_active=" + monitor_active + "&monitor_phone=" + monitor_phone + "&ALLINGROUPstats=" + ALLINGROUPstats + "&DROPINGROUPstats=" + DROPINGROUPstats + "&NOLEADSalert=" + NOLEADSalert + "&CARRIERstats=" + CARRIERstats + "&PRESETstats=" + PRESETstats + "&AGENTtimeSTATS=" + AGENTtimeSTATS + "&INGROUPcolorOVERRIDE=" + INGROUPcolorOVERRIDE + "&droppedOFtotal=" + droppedOFtotal + "&report_display_type=" + report_display_type + "";
|
||||
RTupdate_query = "RTajax=1&mobile_device=1&RTdisplay_type=" + RTdisplay_type + "&DB=" + DB + "" + groupQS + usergroupQS + "&adastats=" + adastats + "&SIPmonitorLINK=" + SIPmonitorLINK + "&IAXmonitorLINK=" + IAXmonitorLINK + "&usergroup=" + usergroup + "&UGdisplay=" + UGdisplay + "&UidORname=" + UidORname + "&orderby=" + orderby + "&SERVdisplay=" + SERVdisplay + "&CALLSdisplay=" + CALLSdisplay + "&PHONEdisplay=" + PHONEdisplay + "&CUSTPHONEdisplay=" + CUSTPHONEdisplay + "&with_inbound=" + with_inbound + "&monitor_active=" + monitor_active + "&monitor_phone=" + monitor_phone + "&ALLINGROUPstats=" + ALLINGROUPstats + "&DROPINGROUPstats=" + DROPINGROUPstats + "&NOLEADSalert=" + NOLEADSalert + "&CARRIERstats=" + CARRIERstats + "&PRESETstats=" + PRESETstats + "&AGENTtimeSTATS=" + AGENTtimeSTATS + "&INGROUPcolorOVERRIDE=" + INGROUPcolorOVERRIDE + "&droppedOFtotal=" + droppedOFtotal + "&report_display_type=" + report_display_type + "";
|
||||
|
||||
xmlhttp.open('POST', 'AST_timeonVDADall.php');
|
||||
xmlhttp.open('POST', 'AST_timeonVDADall_mobile.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(RTupdate_query);
|
||||
xmlhttp.onreadystatechange = function()
|
||||
@@ -1523,7 +1535,27 @@ function update_variables(task_option,task_choice,force_reload)
|
||||
gather_realtime_content();
|
||||
}
|
||||
|
||||
|
||||
function ToggleDisplay()
|
||||
{
|
||||
if (document.getElementById("RTDisplayInfo").value=="CALL")
|
||||
{
|
||||
document.getElementById("RTDisplayInfo").value="AGENT";
|
||||
document.getElementById("RTDisplayButton").value="CALL INFO";
|
||||
// document.getElementById("RTDisplayButton").class="blue_btn";
|
||||
document.getElementById("RTAgentInfoOptions").style="display:block";
|
||||
document.getElementById("RTAgentDisplayInfo").style="display:block";
|
||||
document.getElementById("RTCallDisplayInfo").style="display:none";
|
||||
}
|
||||
else
|
||||
{
|
||||
document.getElementById("RTDisplayInfo").value="CALL";
|
||||
document.getElementById("RTDisplayButton").value="AGENT INFO";
|
||||
// document.getElementById("RTDisplayButton").class="red_btn";
|
||||
document.getElementById("RTAgentInfoOptions").style="display:none";
|
||||
document.getElementById("RTAgentDisplayInfo").style="display:none";
|
||||
document.getElementById("RTCallDisplayInfo").style="display:block";
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<STYLE type="text/css">
|
||||
@@ -1606,8 +1638,8 @@ function update_variables(task_option,task_choice,force_reload)
|
||||
|
||||
.realtime_img_icon {width: 8vw; max-width: 42px; height: auto; }
|
||||
.realtime_img_text {font-family:HELVETICA; font-size:calc(6px + (11 - 6) * ((100vw - 300px) / (1600 - 300))); color:white; font-weight:bold;}
|
||||
.realtime_table {width: 100vw; max-width: 860px;}
|
||||
.realtime_settings_table {width: 85vw; max-width: 700px; }
|
||||
.realtime_table {width: 96vw; max-width: 960px;}
|
||||
.realtime_settings_table {width: 50vw; max-width: 600px; }
|
||||
.realtime_display_span_def {position: absolute; left:calc(105px + 55 * (100vw / 1600));}
|
||||
.realtime_display_table {width: 25vw; max-width: 250px; }
|
||||
|
||||
@@ -1643,7 +1675,7 @@ $row=mysqli_fetch_row($rslt);
|
||||
$campaign_allow_inbound = $row[0];
|
||||
|
||||
echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\n";
|
||||
echo "<TITLE>$report_name: $group</TITLE></HEAD><BODY BGCOLOR=WHITE marginheight=0 marginwidth=0 leftmargin=0 topmargin=0>\n";
|
||||
echo "<TITLE>$report_name: $group</TITLE></HEAD><BODY BGCOLOR='#".$SSframe_background."' marginheight=0 marginwidth=0 leftmargin=0 topmargin=0>\n";
|
||||
|
||||
$android_header=1;
|
||||
|
||||
@@ -1657,35 +1689,28 @@ echo "<INPUT TYPE=HIDDEN NAME=cursorY ID=cursorY>\n";
|
||||
|
||||
echo "<table class='realtime_table'>";
|
||||
echo "<tr>";
|
||||
echo "<td align=left class='top_head_key'>"._QXZ("$report_name")."</td>";
|
||||
echo "<td align=left class='top_head_key'>";
|
||||
echo "<span style=\"z-index:20;\" id=campaign_select_list_link>\n";
|
||||
echo "<TABLE class='realtime_display_table' CELLPADDING=0 CELLSPACING=0 BGCOLOR=\"#D9E6FE\"><TR><TD ALIGN=CENTER>\n";
|
||||
echo "<a href=\"#\" onclick=\"showDiv('campaign_select_list');\"><font class='top_head_key'>"._QXZ("Choose Report Display Options")."</a>";
|
||||
echo "<TABLE CELLPADDING=0 CELLSPACING=0 BGCOLOR=\"#D9E6FE\"><TR><TD ALIGN=CENTER>\n";
|
||||
echo "<a href=\"#\" onclick=\"showDiv('campaign_select_list');\"><font class='android_small bold'>"._QXZ("Choose Report Display Options")."</a>";
|
||||
echo "</TD></TR></TABLE>\n";
|
||||
echo "</span>\n";
|
||||
echo "</td>";
|
||||
echo "<td align=left class='top_head_key'>";
|
||||
echo "<td align=left class='android_standard bold'>";
|
||||
echo "<span style=\"position:absolute;left:0px;z-index:21;\" id=campaign_select_list>\n";
|
||||
echo "<TABLE WIDTH=0 HEIGHT=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=\"#D9E6FE\"><TR><TD ALIGN=CENTER>\n";
|
||||
echo "";
|
||||
echo "</TD></TR></TABLE>\n";
|
||||
echo "</span>\n";
|
||||
echo "</td>";
|
||||
echo "<td align=left class='top_settings_val'>";
|
||||
echo "<a href=\"#\" onclick=\"update_variables('form_submit','','YES')\"><font class='top_settings_val'>"._QXZ("RELOAD NOW")."</font></a>";
|
||||
echo "<td align=left class='android_small'>";
|
||||
echo "<a href=\"#\" onclick=\"update_variables('form_submit','','YES')\"><font class='android_small'>"._QXZ("RELOAD NOW")."</font></a>";
|
||||
echo "</td>";
|
||||
echo "<td align=right class='top_settings_val'>";
|
||||
# if (preg_match('/ALL\-ACTIVE/i',$group_string))
|
||||
# {echo "<a href=\"./admin.php?ADD=10\"><font class='top_settings_val'>"._QXZ("MODIFY")."</font></a> | \n";}
|
||||
# else
|
||||
# {echo "<a href=\"./admin.php?ADD=34&campaign_id=$group\"><font class='top_settings_val'>"._QXZ("MODIFY")."</font></a> | \n";}
|
||||
echo " </td>";
|
||||
echo "<td align=left class='top_settings_val'>";
|
||||
echo "<a href=\"./AST_timeonVDADallSUMMARY_mobile.php?RR=$RR&DB=$DB&adastats=$adastats\"><font class='top_settings_val'>"._QXZ("SUMMARY")."</font></a> </FONT>\n";
|
||||
echo "<td align=left class='android_small'>";
|
||||
echo "<a href=\"./AST_timeonVDADallSUMMARY_mobile.php?RR=$RR&DB=$DB&adastats=$adastats\"><font class='android_small'>"._QXZ("SUMMARY")."</font></a> </FONT>\n";
|
||||
echo "</td>";
|
||||
echo "<td align=left class='top_settings_val'>";
|
||||
echo "<font class='top_settings_val'>"._QXZ("refresh").": <span id=refresh_countdown name=refresh_countdown></span></font>\n\n";
|
||||
echo "<td align=left class='android_small'>";
|
||||
echo "<font class='android_small'>"._QXZ("refresh").": <span id=refresh_countdown name=refresh_countdown></span></font>\n\n";
|
||||
echo "</td>";
|
||||
echo "</tr>";
|
||||
echo "</table>";
|
||||
@@ -1734,39 +1759,67 @@ echo " <font class='top_settings_val'>"._QXZ("refresh").":
|
||||
if (!preg_match("/WALL/",$report_display_type))
|
||||
{
|
||||
if ($is_webphone == 'Y')
|
||||
{echo " <span id=webphone_visibility name=webphone_visibility><a href=\"#\" onclick=\"ShowWebphone('show');\"><font class='top_settings_val'>"._QXZ("webphone")." +</font></a></span>\n\n";}
|
||||
{echo " <span id=webphone_visibility name=webphone_visibility><a href=\"#\" onclick=\"ShowWebphone('show');\"><font class='android_small'>"._QXZ("webphone")." +</font></a></span>\n\n";}
|
||||
else
|
||||
{echo " <span id=webphone_visibility name=webphone_visibility></span>\n\n";}
|
||||
|
||||
if ($webphone_bufh > 10)
|
||||
{echo "<BR><img src=\"images/pixel.gif\" width=1 height=$webphone_bufh>\n";}
|
||||
echo "<BR>\n\n";
|
||||
# echo "<BR>\n\n";
|
||||
|
||||
echo "<table class='realtime_table'><tr><th><input type='button' id='RTDisplayButton' class='red_btn_mobile' value='AGENT INFO' onClick='ToggleDisplay()'><input type=hidden id='RTDisplayInfo' value='CALL'></th></tr></table>";
|
||||
|
||||
echo "<span id='RTAgentInfoOptions' style='display:none'>";
|
||||
echo "<table class='realtime_table'>";
|
||||
echo "<tr>";
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($UGdisplay>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('UGdisplay','');\"><font class=\"top_settings_val\"><span id=UGdisplayTXT>"._QXZ("HIDE USER GROUP")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('UGdisplay','');\"><font class=\"android_small\"><span id=UGdisplayTXT>"._QXZ("HIDE USER GROUP")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('UGdisplay','');\"><font class=\"top_settings_val\"><span id=UGdisplayTXT>"._QXZ("VIEW USER GROUP")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('UGdisplay','');\"><font class=\"android_small\"><span id=UGdisplayTXT>"._QXZ("VIEW USER GROUP")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($SERVdisplay>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('SERVdisplay','');\"><font class=\"top_settings_val\"><span id=SERVdisplayTXT>"._QXZ("HIDE SERVER INFO")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('SERVdisplay','');\"><font class=\"android_small\"><span id=SERVdisplayTXT>"._QXZ("HIDE SERVER INFO")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('SERVdisplay','');\"><font class=\"top_settings_val\"><span id=SERVdisplayTXT>"._QXZ("SHOW SERVER INFO")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('SERVdisplay','');\"><font class=\"android_small\"><span id=SERVdisplayTXT>"._QXZ("SHOW SERVER INFO")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($CALLSdisplay>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CALLSdisplay','');\"><font class=\"top_settings_val\"><span id=CALLSdisplayTXT>"._QXZ("HIDE WAITING CALLS")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CALLSdisplay','');\"><font class=\"android_small\"><span id=CALLSdisplayTXT>"._QXZ("HIDE WAITING CALLS")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CALLSdisplay','');\"><font class=\"top_settings_val\"><span id=CALLSdisplayTXT>"._QXZ("SHOW WAITING CALLS")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CALLSdisplay','');\"><font class=\"android_small\"><span id=CALLSdisplayTXT>"._QXZ("SHOW WAITING CALLS")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "</tr>";
|
||||
echo "<tr>";
|
||||
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($ALLINGROUPstats>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('ALLINGROUPstats','');\"><font class=\"top_settings_val\"><span id=ALLINGROUPstatsTXT>"._QXZ("HIDE IN-GROUP STATS")."</span></font></a>";}
|
||||
{echo "<a href=\"#\" onclick=\"update_variables('ALLINGROUPstats','');\"><font class=\"android_small\"><span id=ALLINGROUPstatsTXT>"._QXZ("HIDE IN-GROUP STATS")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('ALLINGROUPstats','');\"><font class=\"top_settings_val\"><span id=ALLINGROUPstatsTXT>"._QXZ("SHOW IN-GROUP STATS")."</span></font></a>";}
|
||||
{echo "<a href=\"#\" onclick=\"update_variables('ALLINGROUPstats','');\"><font class=\"android_small\"><span id=ALLINGROUPstatsTXT>"._QXZ("SHOW IN-GROUP STATS")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($PHONEdisplay>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('PHONEdisplay','');\"><font class=\"top_settings_val\"><span id=PHONEdisplayTXT>"._QXZ("HIDE PHONES")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('PHONEdisplay','');\"><font class=\"android_small\"><span id=PHONEdisplayTXT>"._QXZ("HIDE PHONES")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('PHONEdisplay','');\"><font class=\"top_settings_val\"><span id=PHONEdisplayTXT>"._QXZ("SHOW PHONES")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('PHONEdisplay','');\"><font class=\"android_small\"><span id=PHONEdisplayTXT>"._QXZ("SHOW PHONES")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "<th style='width: 32vw'>";
|
||||
if ($CUSTPHONEdisplay>0)
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CUSTPHONEdisplay','');\"><font class=\"top_settings_val\"><span id=CUSTPHONEdisplayTXT>"._QXZ("HIDE CUSTPHONES")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CUSTPHONEdisplay','');\"><font class=\"android_small\"><span id=CUSTPHONEdisplayTXT>"._QXZ("HIDE CUSTPHONES")."</span></font></a>";}
|
||||
else
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CUSTPHONEdisplay','');\"><font class=\"top_settings_val\"><span id=CUSTPHONEdisplayTXT>"._QXZ("SHOW CUSTPHONES")."</span></font></a>";}
|
||||
{echo " <a href=\"#\" onclick=\"update_variables('CUSTPHONEdisplay','');\"><font class=\"android_small\"><span id=CUSTPHONEdisplayTXT>"._QXZ("SHOW CUSTPHONES")."</span></font></a>";}
|
||||
echo "</th>";
|
||||
|
||||
echo "</tr>";
|
||||
echo "</table>";
|
||||
echo "</span>";
|
||||
}
|
||||
|
||||
#echo "</TD></TR></TABLE>";
|
||||
|
||||
@@ -1,13 +1,15 @@
|
||||
<?php
|
||||
# vicidial_stylesheet.php
|
||||
#
|
||||
# Copyright (C) 2019 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
# Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
#
|
||||
# CSS/PHP file that uses the system-defined screen colors to display report elements
|
||||
#
|
||||
# 170830-2123 - First build
|
||||
# 180501-0045 - New elements added
|
||||
# 190129-1303 - New mobile display elements added
|
||||
# 200309-1819 - Modifications for display formatting
|
||||
#
|
||||
|
||||
require("dbconnect_mysqli.php");
|
||||
require("functions.php");
|
||||
@@ -57,6 +59,9 @@ redalert {font-size: 18px; font-weight:bold; font-family: Arial, Sans-Serif; col
|
||||
font-size: 12pt;
|
||||
opacity: 1.0;
|
||||
}
|
||||
.bold {
|
||||
font-weight:bold;
|
||||
}
|
||||
.green {color: black; background-color: #99FF99}
|
||||
.red {color: black; background-color: #FF9999}
|
||||
.orange {color: black; background-color: #FFCC99}
|
||||
@@ -73,12 +78,16 @@ redalert {font-size: 18px; font-weight:bold; font-family: Arial, Sans-Serif; col
|
||||
.border2px {border:solid 2px #<?php echo $SSmenu_background; ?>}
|
||||
|
||||
.android_standard {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 8pt;
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(8px + 1vw);
|
||||
}
|
||||
.android_medium {
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(9px + 1vw);
|
||||
}
|
||||
.android_large {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 10pt;
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(10px + 1vw);
|
||||
font-weight: bold;
|
||||
}
|
||||
.android_auto {
|
||||
@@ -87,6 +96,10 @@ redalert {font-size: 18px; font-weight:bold; font-family: Arial, Sans-Serif; col
|
||||
font-size: calc(14px + (26 - 14) * ((100vw - 300px) / (1600 - 300)));
|
||||
line-height: calc(1.3em + (1.5 - 1.2) * ((100vw - 300px)/(1600 - 300)));
|
||||
}
|
||||
.android_small {
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(7px + .5vw);
|
||||
}
|
||||
.android_auto_small {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: calc(8px + (18 - 8) * ((100vw - 300px) / (1600 - 300)));
|
||||
@@ -94,7 +107,7 @@ redalert {font-size: 18px; font-weight:bold; font-family: Arial, Sans-Serif; col
|
||||
}
|
||||
.android_whiteboard_small {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: calc(8px + (16 - 8) * ((100vw - 300px) / (1600 - 300)));
|
||||
FONT-SIZE: calc(8px + .5vw);
|
||||
line-height: calc(1.3em + (1.5 - 1.2) * ((100vw - 300px)/(1600 - 300)));
|
||||
}
|
||||
.android_campaign_header {
|
||||
@@ -209,7 +222,18 @@ ul.dropdown_android li:hover > ul { visibility: visible; }
|
||||
}
|
||||
.form_field_android {
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(4px + (12 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
FONT-SIZE: calc(8px + 1vw);
|
||||
}
|
||||
.form_field_android_small {
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(6px + 0.5vw);
|
||||
}
|
||||
.form_field_whiteboard_android {
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(8px + 1vw);
|
||||
margin-bottom: 3px;
|
||||
background-color: #<?php echo $SSalt_row3_background; ?>;
|
||||
border: solid 1px #<?php echo $SSmenu_background; ?>;
|
||||
}
|
||||
.required_field {
|
||||
font-family: Arial, Sans-Serif;
|
||||
@@ -220,6 +244,14 @@ ul.dropdown_android li:hover > ul { visibility: visible; }
|
||||
border: groove 2px #990000;
|
||||
background-position: top;
|
||||
}
|
||||
.required_field_whiteboard_android {
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(8px + 1vw);
|
||||
margin-bottom: 3px;
|
||||
background-color: #FFCCCC;
|
||||
border: groove 1px #990000;
|
||||
background-position: top;
|
||||
}
|
||||
textarea.chat_box {
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: 10px;
|
||||
@@ -254,9 +286,9 @@ input.red_btn{
|
||||
}
|
||||
input.red_btn_mobile{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(4px + (12 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
width: 10vw;
|
||||
max-width:250px;
|
||||
FONT-SIZE: calc(12px + .5vw);
|
||||
width: 36vw;
|
||||
max-width:600px;
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#990000;
|
||||
@@ -268,9 +300,9 @@ input.red_btn_mobile{
|
||||
}
|
||||
input.red_btn_mobile_lg{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(4px + (12 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
width: 15vw;
|
||||
max-width:200px;
|
||||
FONT-SIZE: calc(14px + 1vw);
|
||||
width: 48vw;
|
||||
max-width:800px;
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#990000;
|
||||
@@ -280,6 +312,33 @@ input.red_btn_mobile_lg{
|
||||
border-right-color:#330000;
|
||||
border-bottom-color:#330000;
|
||||
}
|
||||
input.red_btn_mobile_sm{
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(12px + .2vw);
|
||||
width: 30vw;
|
||||
max-width:400px;
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#990000;
|
||||
border:2px solid;
|
||||
border-top-color:#FFCCCC;
|
||||
border-left-color:#FFCCCC;
|
||||
border-right-color:#330000;
|
||||
border-bottom-color:#330000;
|
||||
}
|
||||
input.red_btn_anywidth{
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(12px + .5vw);
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#990000;
|
||||
border:2px solid;
|
||||
border-top-color:#FFCCCC;
|
||||
border-left-color:#FFCCCC;
|
||||
border-right-color:#330000;
|
||||
border-bottom-color:#330000;
|
||||
}
|
||||
|
||||
input.green_btn{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: 12px;
|
||||
@@ -294,8 +353,8 @@ input.green_btn{
|
||||
}
|
||||
input.green_btn_mobile{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(4px + (12 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
width: 10vw;
|
||||
FONT-SIZE: calc(12px + .5vw);
|
||||
width: 11vw;
|
||||
max-width:250px;
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
@@ -308,7 +367,7 @@ input.green_btn_mobile{
|
||||
}
|
||||
input.green_btn_mobile_lg{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(4px + (12 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
FONT-SIZE: calc(14px + 1vw);
|
||||
width: 15vw;
|
||||
max-width:200px;
|
||||
color:#FFFFFF;
|
||||
@@ -320,6 +379,30 @@ input.green_btn_mobile_lg{
|
||||
border-right-color:#003300;
|
||||
border-bottom-color:#003300;
|
||||
}
|
||||
input.green_btn_anywidth{
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(12px + .5vw);
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#009900;
|
||||
border:2px solid;
|
||||
border-top-color:#CCFFCC;
|
||||
border-left-color:#CCFFCC;
|
||||
border-right-color:#003300;
|
||||
border-bottom-color:#003300;
|
||||
}
|
||||
input.green_btn_anywidth_lg{
|
||||
font-family: Arial, Sans-Serif;
|
||||
FONT-SIZE: calc(14px + 1vw);
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#009900;
|
||||
border:2px solid;
|
||||
border-top-color:#CCFFCC;
|
||||
border-left-color:#CCFFCC;
|
||||
border-right-color:#003300;
|
||||
border-bottom-color:#003300;
|
||||
}
|
||||
input.blue_btn{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: 12px;
|
||||
@@ -334,7 +417,7 @@ input.blue_btn{
|
||||
}
|
||||
input.blue_btn_mobile{
|
||||
font-family: Arial, Sans-Serif;
|
||||
font-size: calc(4px + (10 - 4) * ((100vw - 300px) / (1600 - 300)));
|
||||
FONT-SIZE: calc(12px + .5vw);
|
||||
color:#FFFFFF;
|
||||
font-weight:bold;
|
||||
background-color:#000099;
|
||||
|
||||
@@ -8,13 +8,14 @@ if (isset($_GET["mobile"])) {$mobile=$_GET["mobile"];}
|
||||
?>
|
||||
// vicidial_whiteboard_functions.php
|
||||
//
|
||||
// Copyright (C) 2017 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
// Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
//
|
||||
// Javascript file used in AST_rt_whiteboard_reports.php and AST_rt_whiteboard_report_mobile.php
|
||||
//
|
||||
// 171027-2352 - First build
|
||||
// 190226-1645 - Added mobile variable for mobile versions of reports
|
||||
// 190307-0142 - Change auto-resize on load if device is mobile, removed debug
|
||||
// 200309-1819 - Modifications for display formatting
|
||||
//
|
||||
|
||||
var main_canvas = document.getElementById("MainReportCanvas");
|
||||
@@ -242,19 +243,24 @@ function RefreshReportWindow() {
|
||||
var regRPTrates = new RegExp("rates","g");
|
||||
var regRPTcomma = new RegExp(", $","g");
|
||||
var regRPTpipe = new RegExp("|$","g");
|
||||
var regRPTdash = new RegExp("-","g");
|
||||
var regRPTall = new RegExp("--ALL--","g");
|
||||
var regRPTflag = new RegExp("ALL FLAGS","g");
|
||||
|
||||
var CPstr=campaign_parameters_str.replace(regRPTcomma, '');
|
||||
var UGPstr=user_groups_parameters_str.replace(regRPTcomma, '');
|
||||
var USPstr=users_parameters_str.replace(regRPTcomma, '');
|
||||
var GPstr=groups_parameters_str.replace(regRPTcomma, '');
|
||||
var DPstr=did_parameters_str.replace(regRPTcomma, '');
|
||||
if (status_flags_parameters_str.match(regRPTflag)) {status_flags_parameters_str="<?php echo "ALL FLAGS"; ?>";}
|
||||
var SFstr=status_flags_parameters_str.replace(regRPTcomma, '');
|
||||
|
||||
var CPstr=CPstr.replace(regRPTall, '<?php echo "ALL CAMPAIGNS"; ?>');
|
||||
var UGPstr=UGPstr.replace(regRPTall, '<?php echo "ALL USER GROUPS"; ?>');
|
||||
var USPstr=USPstr.replace(regRPTall, '<?php echo "ALL USERS"; ?>');
|
||||
var GPstr=GPstr.replace(regRPTall, '<?php echo "ALL IN-GROUPS"; ?>');
|
||||
var CPstr=CPstr.replace(regRPTall, '<?php echo _QXZ("ALL CAMPAIGNS"); ?>');
|
||||
var UGPstr=UGPstr.replace(regRPTall, '<?php echo _QXZ("ALL USER GROUPS"); ?>');
|
||||
var USPstr=USPstr.replace(regRPTall, '<?php echo _QXZ("ALL USERS"); ?>');
|
||||
var GPstr=GPstr.replace(regRPTall, '<?php echo _QXZ("ALL IN-GROUPS"); ?>');
|
||||
var DPstr=DPstr.replace(regRPTdash, '');
|
||||
|
||||
|
||||
var report_parameters="<div class='embossed border2px round_corners sm_shadow alt_row1'>";
|
||||
report_parameters+="<?php echo _QXZ("Report Type"); ?>: "+report_type_text+"<BR>\n";
|
||||
|
||||
@@ -0,0 +1,692 @@
|
||||
<?php
|
||||
header('Content-Type: application/javascript');
|
||||
require("functions.php");
|
||||
|
||||
?>
|
||||
// vicidial_whiteboard_functions.php
|
||||
//
|
||||
// Copyright (C) 2020 Matt Florell <vicidial@gmail.com>, Joe Johnson <freewermadmin@gmail.com> LICENSE: AGPLv2
|
||||
//
|
||||
// Javascript file used in AST_rt_whiteboard_reports.php and AST_rt_whiteboard_report_mobile.php
|
||||
//
|
||||
// 171027-2352 - First build
|
||||
// 190226-1645 - Added mobile variable for mobile versions of reports
|
||||
// 190307-0142 - Change auto-resize on load if device is mobile, removed debug
|
||||
// 200309-1819 - Modifications for display formatting
|
||||
//
|
||||
|
||||
var main_canvas = document.getElementById("MainReportCanvas");
|
||||
var size = {
|
||||
width: window.innerWidth || document.body.clientWidth,
|
||||
height: window.innerHeight || document.body.clientHeight
|
||||
}
|
||||
main_canvas.width=size.width-220;
|
||||
main_canvas.height=size.height-300;
|
||||
|
||||
// global chart names
|
||||
var MainGraph=null;
|
||||
var ChartsHidden=null;
|
||||
var LabelArray_holder=new Array();
|
||||
var CallCountArray_holder=new Array();
|
||||
var SaleCountArray_holder=new Array();
|
||||
var TotalCallCountArray_holder=new Array();
|
||||
var TotalSaleCountArray_holder=new Array();
|
||||
var TimeArray_holder=new Array();
|
||||
var ConvRateArray_holder=new Array();
|
||||
var CPHArray_holder=new Array();
|
||||
var SPHArray_holder=new Array();
|
||||
var TPAArray_holder=new Array();
|
||||
var TGArray_holder=new Array();
|
||||
|
||||
function StartRefresh(refresh_rate) {
|
||||
document.getElementById("loading_display").style.display="block";
|
||||
if (!refresh_rate) {refresh_rate=30; RefreshReportWindow();}
|
||||
document.getElementById("query_date2").value=document.getElementById("query_date").value;
|
||||
// document.getElementById("end_date2").value=document.getElementById("end_date").value;
|
||||
document.getElementById("query_time2").value=document.getElementById("query_time").value;
|
||||
// document.getElementById("end_time2").value=document.getElementById("end_time").value;
|
||||
document.getElementById("hourly_display2").value=document.getElementById("hourly_display").value;
|
||||
ToggleVisibility('report_control_panel');
|
||||
ToggleVisibility('report_display_panel');
|
||||
ChartsHidden=null;
|
||||
rInt=window.setInterval(function() {RefreshReportWindow()}, (refresh_rate*1000));
|
||||
}
|
||||
function StopRefresh() {
|
||||
MainGraph.clear();
|
||||
document.getElementById("parameters_span").innerHTML='';
|
||||
ToggleVisibility('report_control_panel');
|
||||
ToggleVisibility('report_display_panel');
|
||||
clearInterval(rInt);
|
||||
}
|
||||
|
||||
function ToggleVisibility(span_name) {
|
||||
var span_vis = document.getElementById(span_name).style;
|
||||
if (span_vis.display=='none') { span_vis.display = 'block'; } else { span_vis.display = 'none'; }
|
||||
}
|
||||
|
||||
function sortFunction(a, b) {
|
||||
if (a[0] === b[0])
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
return (a[0] > b[0]) ? -1 : 1;
|
||||
}
|
||||
}
|
||||
|
||||
function HighlightRelatedFields(report_type) {
|
||||
|
||||
switch(report_type) {
|
||||
case "agent_performance_total":
|
||||
case "agent_performance_rates":
|
||||
case "team_performance_total":
|
||||
case "team_performance_rates":
|
||||
var related_fields = ["campaigns", "user_groups", "users", "groups", "target_per_agent", "query_date", "query_time", "status_flags"];
|
||||
break;
|
||||
case "floor_performance_total":
|
||||
case "floor_performance_rates":
|
||||
var related_fields = ["campaigns", "target_gross", "query_date", "query_time", "hourly_display", "status_flags"];
|
||||
break;
|
||||
case "ingroup_performance_total":
|
||||
case "ingroup_performance_rates":
|
||||
var related_fields = ["campaigns", "groups", "target_per_agent", "query_date", "query_time", "status_flags"];
|
||||
break;
|
||||
case "did_performance_total":
|
||||
case "did_performance_rates":
|
||||
var related_fields = ["dids", "groups", "target_per_agent", "query_date", "query_time", "status_flags"];
|
||||
break;
|
||||
case "status_performance_total":
|
||||
var related_fields = ["campaigns", "groups", "users", "query_date", "query_time", "status_flags"];
|
||||
break;
|
||||
}
|
||||
|
||||
var form_elements = document.getElementById("vicidial_report").elements;
|
||||
for (var i=0, element; element=form_elements[i++];) {
|
||||
if (element.type=="select-one" || element.type=="select-multiple") {
|
||||
element.className='mobile_whiteboard_select form_field_whiteboard_android sm_shadow round_corners';
|
||||
for (var j=0; j<related_fields.length; j++) {
|
||||
if (related_fields[j]==element.id) {
|
||||
element.className='mobile_whiteboard_select required_field_whiteboard_android sm_shadow round_corners';
|
||||
}
|
||||
}
|
||||
} else if (element.type=="text") {
|
||||
element.className='form_field_whiteboard_android sm_shadow round_corners';
|
||||
for (var j=0; j<related_fields.length; j++) {
|
||||
if (related_fields[j]==element.id) {
|
||||
element.className='required_field_whiteboard_android sm_shadow round_corners';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
document.getElementById("adjust_report").onclick = function() {
|
||||
document.getElementById("query_date").value=document.getElementById("query_date2").value;
|
||||
// document.getElementById("end_date").value=document.getElementById("end_date2").value;
|
||||
document.getElementById("query_time").value=document.getElementById("query_time2").value;
|
||||
// document.getElementById("end_time").value=document.getElementById("end_time2").value;
|
||||
document.getElementById("hourly_display").value=document.getElementById("hourly_display2").value;
|
||||
clearInterval(rInt);
|
||||
var new_refresh_rate=document.getElementById("refresh_rate").value;
|
||||
rInt=window.setInterval(function() {RefreshReportWindow()}, (new_refresh_rate*1000));
|
||||
};
|
||||
|
||||
|
||||
function RefreshReportWindow() {
|
||||
var query_date=document.getElementById("query_date").value;
|
||||
// var end_date=document.getElementById("end_date").value;
|
||||
var query_time=document.getElementById("query_time").value;
|
||||
// var end_time=document.getElementById("end_time").value;
|
||||
var hourly_display=document.getElementById("hourly_display").value;
|
||||
var target_gross=document.getElementById("target_gross").value;
|
||||
var target_per_agent=document.getElementById("target_per_agent").value;
|
||||
var rpt_field = document.getElementById("report_type");
|
||||
var report_type = rpt_field.options[rpt_field.selectedIndex].value;
|
||||
var report_type_text = rpt_field.options[rpt_field.selectedIndex].text;
|
||||
|
||||
if (!target_per_agent) {target_per_agent=0;}
|
||||
if (!target_gross) {target_gross=0;}
|
||||
var size = {
|
||||
width: window.innerWidth || document.body.clientWidth,
|
||||
height: window.innerHeight || document.body.clientHeight
|
||||
}
|
||||
// main_canvas.width=size.width-40;
|
||||
// main_canvas.height=size.height-60;
|
||||
|
||||
|
||||
var xmlhttp=false;
|
||||
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
|
||||
{
|
||||
xmlhttp = new XMLHttpRequest();
|
||||
}
|
||||
if (xmlhttp)
|
||||
{
|
||||
var rpt_query = "&rpt_type="+report_type+"&query_date="+query_date+"&query_time="+query_time+"&target_gross="+target_gross+"&target_per_agent="+target_per_agent+"&hourly_display="+hourly_display;
|
||||
|
||||
var InvForm = document.forms[0];
|
||||
var x = 0;
|
||||
var query_date_str="<?php echo _QXZ("Start date"); ?>: "+query_date+" "+query_time;
|
||||
if (hourly_display && hourly_display>0)
|
||||
{
|
||||
query_date_str="<?php echo _QXZ("Displaying last"); ?> "+hourly_display+" <?php echo _QXZ("hours"); ?>";
|
||||
}
|
||||
|
||||
var campaign_parameters_str="";
|
||||
for (x=0;x<InvForm.campaigns.length;x++)
|
||||
{
|
||||
if (InvForm.campaigns[x].selected)
|
||||
{
|
||||
rpt_query +="&campaigns[]="+InvForm.campaigns[x].value;
|
||||
campaign_parameters_str+=InvForm.campaigns[x].value+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var user_groups_parameters_str="";
|
||||
for (x=0;x<InvForm.user_groups.length;x++)
|
||||
{
|
||||
if (InvForm.user_groups[x].selected)
|
||||
{
|
||||
rpt_query +="&user_groups[]="+InvForm.user_groups[x].value;
|
||||
user_groups_parameters_str+=InvForm.user_groups[x].value+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var users_parameters_str="";
|
||||
for (x=0;x<InvForm.users.length;x++)
|
||||
{
|
||||
if (InvForm.users[x].selected)
|
||||
{
|
||||
rpt_query +="&users[]="+InvForm.users[x].value;
|
||||
users_parameters_str+=InvForm.users[x].value+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var groups_parameters_str="";
|
||||
for (x=0;x<InvForm.groups.length;x++)
|
||||
{
|
||||
if (InvForm.groups[x].selected)
|
||||
{
|
||||
rpt_query +="&groups[]="+InvForm.groups[x].value;
|
||||
groups_parameters_str+=InvForm.groups[x].value+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var did_parameters_str="";
|
||||
for (x=0;x<InvForm.dids.length;x++)
|
||||
{
|
||||
if (InvForm.dids[x].selected)
|
||||
{
|
||||
rpt_query +="&dids[]="+InvForm.dids[x].value;
|
||||
did_parameters_str+=InvForm.dids[x].text+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var status_flags_parameters_str="";
|
||||
for (x=0;x<InvForm.status_flags.length;x++)
|
||||
{
|
||||
if (InvForm.status_flags[x].selected)
|
||||
{
|
||||
rpt_query +="&status_flags[]="+InvForm.status_flags[x].value;
|
||||
status_flags_parameters_str+=InvForm.status_flags[x].text+", ";
|
||||
}
|
||||
}
|
||||
|
||||
var regRPTtype = new RegExp("floor_performance","g");
|
||||
var regRPTtotal = new RegExp("total","g");
|
||||
var regRPTrates = new RegExp("rates","g");
|
||||
var regRPTcomma = new RegExp(", $","g");
|
||||
var regRPTpipe = new RegExp("|$","g");
|
||||
var regRPTdash = new RegExp("-","g");
|
||||
var regRPTall = new RegExp("--ALL--","g");
|
||||
var regRPTflag = new RegExp("ALL FLAGS","g");
|
||||
|
||||
var CPstr=campaign_parameters_str.replace(regRPTcomma, '');
|
||||
var UGPstr=user_groups_parameters_str.replace(regRPTcomma, '');
|
||||
var USPstr=users_parameters_str.replace(regRPTcomma, '');
|
||||
var GPstr=groups_parameters_str.replace(regRPTcomma, '');
|
||||
var DPstr=did_parameters_str.replace(regRPTcomma, '');
|
||||
if (status_flags_parameters_str.match(regRPTflag)) {status_flags_parameters_str="<?php echo "ALL FLAGS"; ?>";}
|
||||
var SFstr=status_flags_parameters_str.replace(regRPTcomma, '');
|
||||
|
||||
var CPstr=CPstr.replace(regRPTall, '<?php echo _QXZ("ALL CAMPAIGNS"); ?>');
|
||||
var UGPstr=UGPstr.replace(regRPTall, '<?php echo _QXZ("ALL USER GROUPS"); ?>');
|
||||
var USPstr=USPstr.replace(regRPTall, '<?php echo _QXZ("ALL USERS"); ?>');
|
||||
var GPstr=GPstr.replace(regRPTall, '<?php echo _QXZ("ALL IN-GROUPS"); ?>');
|
||||
var DPstr=DPstr.replace(regRPTdash, '');
|
||||
|
||||
|
||||
var report_parameters="<div class='embossed border2px round_corners sm_shadow alt_row1'>";
|
||||
report_parameters+="<?php echo _QXZ("Report Type"); ?>: "+report_type_text+"<BR>\n";
|
||||
report_parameters+=query_date_str+"<BR>\n";
|
||||
if (campaign_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("Campaigns"); ?>: "+CPstr+"<BR>\n";}
|
||||
if (user_groups_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("User groups"); ?>: "+UGPstr+"<BR>\n";}
|
||||
if (users_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("Users"); ?>: "+USPstr+"<BR>\n";}
|
||||
if (groups_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("In-groups"); ?>: "+GPstr+"<BR>\n";}
|
||||
if (did_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("DIDs"); ?>: "+DPstr+"<BR>\n";}
|
||||
if (status_flags_parameters_str.length>0) {report_parameters+="<?php echo _QXZ("Status flags"); ?>: "+SFstr+"<BR>\n";}
|
||||
report_parameters+="</div>\n";
|
||||
|
||||
document.getElementById("parameters_span").innerHTML=report_parameters;
|
||||
|
||||
xmlhttp.open('POST', 'whiteboard_reports.php');
|
||||
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
|
||||
xmlhttp.send(rpt_query);
|
||||
xmlhttp.onreadystatechange = function()
|
||||
{
|
||||
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
|
||||
{
|
||||
response_txt = null;
|
||||
response_txt = xmlhttp.responseText;
|
||||
// document.getElementById("report_display_panel").innerHTML=report_type+" - "+response_txt; return 0;
|
||||
|
||||
var report_result_array=response_txt.split("\n");
|
||||
var arrayLength = report_result_array.length;
|
||||
|
||||
// var main_canvas = document.getElementById("MainReportCanvas");
|
||||
|
||||
// Define all arrays here - don't care if it's long - easier to deal with for now.
|
||||
var LabelArray=new Array();
|
||||
var CallCountArray=new Array();
|
||||
var SaleCountArray=new Array();
|
||||
var TotalCallCountArray=new Array();
|
||||
var TotalSaleCountArray=new Array();
|
||||
var TimeArray=new Array();
|
||||
var ConvRateArray=new Array();
|
||||
var CPHArray=new Array();
|
||||
var Top10Array=new Array();
|
||||
var SPHArray=new Array();
|
||||
var TPAArray=new Array(); // Target per agent
|
||||
var TGArray=new Array(); // Target per agent
|
||||
|
||||
var TotalCallCount=0;
|
||||
var TotalSaleCount=0;
|
||||
var TotalTime=0;
|
||||
var TotalCPH=0;
|
||||
var TotalSPH=0;
|
||||
var Top10Entries=0;
|
||||
var PrevTop10Value=0;
|
||||
var Top10Limit="off";
|
||||
var alert_text="";
|
||||
|
||||
for (var i = 0; i < arrayLength; i++)
|
||||
{
|
||||
var agent_array=report_result_array[i].split("|");
|
||||
var agent_array_length=agent_array.length;
|
||||
if (report_type.match(regRPTtype))
|
||||
{
|
||||
LabelArray[i]=agent_array[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
var agent_label=agent_array[0];
|
||||
if (typeof agent_array[1] !== "undefined") {agent_label+=" - "+agent_array[1];}
|
||||
LabelArray[i]=agent_label;
|
||||
}
|
||||
|
||||
CallCountArray[i]=agent_array[2]; // TotalCallCount+=parseInt(agent_array[2]);
|
||||
SaleCountArray[i]=agent_array[3]; // TotalSaleCount+=parseInt(agent_array[3]);
|
||||
|
||||
if (report_type=="status_performance_total")
|
||||
{
|
||||
Top10Array[i]=[parseInt(agent_array[2]),agent_array[0],agent_array[1]];
|
||||
}
|
||||
else if (report_type.match(regRPTrates))
|
||||
{
|
||||
Top10Array[i]=[agent_array[5],agent_array[0],agent_array[1]];
|
||||
}
|
||||
else
|
||||
{
|
||||
Top10Array[i]=[parseInt(agent_array[3]),agent_array[0],agent_array[1]];
|
||||
}
|
||||
|
||||
TimeArray[i]=agent_array[4];
|
||||
if (report_type.match(regRPTtype) || report_type=="status_performance_total") // If the cumulative floor report, use the last entries from the TotalCall and TotalSale above (m
|
||||
{
|
||||
TotalTime=parseInt(agent_array[4]);
|
||||
}
|
||||
else
|
||||
{
|
||||
TotalTime+=parseInt(agent_array[4]);
|
||||
}
|
||||
ConvRateArray[i]=agent_array[5];
|
||||
CPHArray[i]=agent_array[6];
|
||||
SPHArray[i]=agent_array[7];
|
||||
TotalCallCountArray[i]=agent_array[8]; TotalCallCount=agent_array[8];
|
||||
TotalSaleCountArray[i]=agent_array[9]; TotalSaleCount=agent_array[9];
|
||||
alert_text=agent_array[10];
|
||||
TPAArray[i]=target_per_agent;
|
||||
TGArray[i]=target_gross;
|
||||
}
|
||||
|
||||
Top10Array.sort(sortFunction);
|
||||
}
|
||||
|
||||
var Top10HTMLChart="<div class='border2px round_corners sm_shadow alt_row1' align='center'><table cellpadding='8' valign='top'>";
|
||||
Top10HTMLChart+="<tr>";
|
||||
Top10HTMLChart+="<th colspan='3'><font class='android_large'><?php echo _QXZ("TOP 10 PERFORMERS"); ?></font></th>";
|
||||
Top10HTMLChart+="<td align='right'><input type='button' class='red_btn sm_shadow' style='width:20px;height:20px' value='X' onClick=\"ToggleVisibility('top_10_display'); ToggleVisibility('graph_display');\"></td>";
|
||||
Top10HTMLChart+="</tr>";
|
||||
Top10HTMLChart+="<tr>";
|
||||
Top10HTMLChart+="<th class='android_standard'><?php echo _QXZ("RANK"); ?></th>";
|
||||
Top10HTMLChart+="<th class='android_standard'><?php echo _QXZ("NAME"); ?></th>";
|
||||
Top10HTMLChart+="<th></th>";
|
||||
Top10HTMLChart+="</tr>";
|
||||
|
||||
var breakloop="no";
|
||||
var prev_ranking=0;
|
||||
for (var i = 0; i < arrayLength; i++)
|
||||
{
|
||||
var trClass="std_row"+((i%2)+1);
|
||||
if (i>0 && Top10Array[i][0]==Top10Array[(i-1)][0])
|
||||
{
|
||||
var ranking=prev_ranking+" (tie)";
|
||||
}
|
||||
else
|
||||
{
|
||||
var ranking=(i+1);
|
||||
prev_ranking=ranking;
|
||||
if (i>=10) {breakloop="yes";}
|
||||
}
|
||||
if (breakloop=="no")
|
||||
{
|
||||
Top10HTMLChart+="<tr class='"+trClass+" android_small'>";
|
||||
Top10HTMLChart+="<td align='right'><B>"+ranking+".</B></td>";
|
||||
Top10HTMLChart+="<td align='left'><B>"+Top10Array[i][1];
|
||||
if (typeof Top10Array[i][2] !== "undefined" && report_type!="status_performance_total") {Top10HTMLChart+=" - "+Top10Array[i][2];}
|
||||
Top10HTMLChart+="</B></td>";
|
||||
Top10HTMLChart+="<td align='center' colspan='2'><B>"+Top10Array[i][0];
|
||||
if (report_type.match(regRPTrates)) {Top10HTMLChart+=" %";} // Irritating, but necessary.
|
||||
Top10HTMLChart+="</B></td>";
|
||||
Top10HTMLChart+="</tr>";
|
||||
}
|
||||
else
|
||||
{
|
||||
i=arrayLength;
|
||||
}
|
||||
}
|
||||
Top10HTMLChart+="<tr>";
|
||||
Top10HTMLChart+="<th colspan='4'><input type='button' class='green_btn sm_shadow round_corners' style='width:250px' value='<?php echo _QXZ("SHOW PERFORMANCE CHART"); ?>' onClick=\"ToggleVisibility('top_10_display'); ToggleVisibility('graph_display');\"></th>";
|
||||
Top10HTMLChart+="</tr>";
|
||||
Top10HTMLChart+="</table><BR><BR></div>";
|
||||
document.getElementById("top_10_display").innerHTML=Top10HTMLChart;
|
||||
|
||||
var TotalCPH=TotalCallCount/(TotalTime/3600);
|
||||
var TotalSPH=TotalSaleCount/(TotalTime/3600);
|
||||
var TotalConvRate=(TotalSaleCount/TotalCallCount)*100;
|
||||
|
||||
var TotalHours = Math.floor(TotalTime / 3600);
|
||||
TotalTime = TotalTime - TotalHours * 3600;
|
||||
var TotalMinutes = Math.floor(TotalTime / 60);
|
||||
var TotalSeconds = TotalTime - TotalMinutes * 60;
|
||||
TotalMinutes="0"+TotalMinutes;
|
||||
TotalSeconds="0"+TotalSeconds;
|
||||
|
||||
if (response_txt && response_txt=="<?php echo _QXZ("REPORT RETURNED NO RESULTS"); ?>") {
|
||||
document.getElementById("total_calls_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
document.getElementById("total_sales_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
document.getElementById("total_time_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
document.getElementById("total_cph_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
document.getElementById("total_sph_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
document.getElementById("total_conv_div").innerHTML="** <?php echo _QXZ("NO RESULTS"); ?> **";
|
||||
} else {
|
||||
document.getElementById("total_calls_div").innerHTML=TotalCallCount;
|
||||
document.getElementById("total_sales_div").innerHTML=TotalSaleCount;
|
||||
document.getElementById("total_time_div").innerHTML=TotalHours+":"+TotalMinutes.slice(-2)+":"+TotalSeconds.slice(-2);
|
||||
document.getElementById("total_cph_div").innerHTML=Math.round(TotalCPH*100)/100;
|
||||
document.getElementById("total_sph_div").innerHTML=Math.round(TotalSPH*100)/100;
|
||||
document.getElementById("total_conv_div").innerHTML=Math.round(TotalConvRate*100)/100+"%";
|
||||
}
|
||||
// document.getElementById("totals_span").innerHTML='';
|
||||
// document.getElementById("parameters_span").innerHTML=response_txt;
|
||||
|
||||
|
||||
var label_title=query_date+" "+query_time;
|
||||
var hide_total="true";
|
||||
var hide_rates="true";
|
||||
var graph_type='bar';
|
||||
|
||||
if (LabelArray) { // Seems to return 3 times above. Dunno why
|
||||
|
||||
if (report_type.match(regRPTtotal)) {hide_total="false";}
|
||||
if (report_type.match(regRPTrates)) {hide_rates="false";}
|
||||
if (report_type.match(regRPTtype)) {graph_type='line';}
|
||||
if (LabelArray.length!=LabelArray_holder.length) {
|
||||
if (MainGraph)
|
||||
{
|
||||
MainGraph.destroy();
|
||||
}
|
||||
|
||||
if (report_type.match(regRPTtype))
|
||||
{
|
||||
MainGraph=new Chart(main_canvas, {
|
||||
type: graph_type,
|
||||
// options: { elements: { point: { radius: 0 } } }, // no dots
|
||||
data: {
|
||||
datasets: [
|
||||
{label: '<?php echo _QXZ("Total calls"); ?>', data: TotalCallCountArray, backgroundColor: "rgba(153,153,255,0.5)", hidden: hide_total}, // dataset 0, see below
|
||||
{label: '<?php echo _QXZ("Total sales"); ?>', data: TotalSaleCountArray, backgroundColor: "rgba(255,153,153,0.5)", hidden: hide_total}, // dataset 1, see below
|
||||
{label: '<?php echo _QXZ("Calls per hour"); ?>', data: CPHArray, backgroundColor: "rgba(255,255,0,0.5)", hidden: hide_rates}, // dataset 2, see below
|
||||
{label: '<?php echo _QXZ("Sales per hour"); ?>', data: SPHArray, backgroundColor: "rgba(153,255,153,0.5)", hidden: hide_rates}, // dataset 3, see below
|
||||
{label: '<?php echo _QXZ("Conversion rate %"); ?>', data: ConvRateArray, backgroundColor: "rgba(255,153,255,0.5)", hidden: hide_rates}, // dataset 4, see below
|
||||
{label: '<?php echo _QXZ("Target gross"); ?>', data: TGArray, type: 'line', pointRadius: 0, backgroundColor: "rgba(153,255,255,0.5)", hidden: hide_total} // dataset 5, see below
|
||||
],
|
||||
labels: LabelArray
|
||||
}
|
||||
});
|
||||
if (report_type.match(regRPTtotal))
|
||||
{
|
||||
if (!ChartsHidden)
|
||||
{
|
||||
ChartsHidden="false|false|true|true|true|false";
|
||||
}
|
||||
var hidden_array=ChartsHidden.split("|");
|
||||
MainGraph.data.datasets[0].hidden=(hidden_array[0] == 'true');
|
||||
MainGraph.data.datasets[1].hidden=(hidden_array[1] == 'true');
|
||||
MainGraph.data.datasets[2].hidden=(hidden_array[2] == 'true');
|
||||
MainGraph.data.datasets[3].hidden=(hidden_array[3] == 'true');
|
||||
MainGraph.data.datasets[4].hidden=(hidden_array[4] == 'true');
|
||||
MainGraph.data.datasets[5].hidden=(hidden_array[5] == 'true');
|
||||
|
||||
MainGraph.update();
|
||||
}
|
||||
if (report_type.match(regRPTrates))
|
||||
{
|
||||
if (!ChartsHidden)
|
||||
{
|
||||
ChartsHidden="true|true|false|false|false|true";
|
||||
}
|
||||
var hidden_array=ChartsHidden.split("|");
|
||||
MainGraph.data.datasets[0].hidden=(hidden_array[0] == 'true');
|
||||
MainGraph.data.datasets[1].hidden=(hidden_array[1] == 'true');
|
||||
MainGraph.data.datasets[2].hidden=(hidden_array[2] == 'true');
|
||||
MainGraph.data.datasets[3].hidden=(hidden_array[3] == 'true');
|
||||
MainGraph.data.datasets[4].hidden=(hidden_array[4] == 'true');
|
||||
MainGraph.data.datasets[5].hidden=(hidden_array[5] == 'true');
|
||||
|
||||
MainGraph.update();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
MainGraph=new Chart(main_canvas, {
|
||||
type: 'bar',
|
||||
// options: { elements: { point: { radius: 0 } } }, // no dots
|
||||
data: {
|
||||
datasets: [
|
||||
{label: '<?php echo _QXZ("Total calls"); ?>', data: CallCountArray, backgroundColor: "rgba(153,153,255,0.5)", hidden: false}, // dataset 0, see below
|
||||
{label: '<?php echo _QXZ("Total sales"); ?>', data: SaleCountArray, backgroundColor: "rgba(255,153,153,0.5)", hidden: false}, // dataset 1, see below
|
||||
{label: '<?php echo _QXZ("Sales per hour"); ?>', data: SPHArray, backgroundColor: "rgba(153,255,153,0.5)", hidden: false}, // dataset 2, see below
|
||||
{label: '<?php echo _QXZ("Conversion rate %"); ?>', data: ConvRateArray, backgroundColor: "rgba(255,255,0,0.5)", hidden: false}, // dataset 3, see below
|
||||
{label: '<?php echo _QXZ("Target per unit"); ?>', data: TPAArray, type: 'line', pointRadius: 0, backgroundColor: "rgba(153,255,255,0.5)", hidden: false} // dataset 4, see below
|
||||
],
|
||||
labels: LabelArray
|
||||
},
|
||||
options: {
|
||||
scales:{
|
||||
xAxes: [{
|
||||
stacked: true
|
||||
}],
|
||||
}
|
||||
}
|
||||
});
|
||||
if (report_type.match(regRPTtotal))
|
||||
{
|
||||
if (!ChartsHidden)
|
||||
{
|
||||
ChartsHidden="false|false|true|true|false";
|
||||
}
|
||||
var hidden_array=ChartsHidden.split("|");
|
||||
MainGraph.data.datasets[0].hidden=(hidden_array[0] == 'true');
|
||||
MainGraph.data.datasets[1].hidden=(hidden_array[1] == 'true');
|
||||
MainGraph.data.datasets[2].hidden=(hidden_array[2] == 'true');
|
||||
MainGraph.data.datasets[3].hidden=(hidden_array[3] == 'true');
|
||||
MainGraph.data.datasets[4].hidden=(hidden_array[4] == 'true');
|
||||
|
||||
MainGraph.update();
|
||||
}
|
||||
if (report_type.match(regRPTrates))
|
||||
{
|
||||
if (!ChartsHidden)
|
||||
{
|
||||
ChartsHidden="true|true|false|false|true";
|
||||
}
|
||||
var hidden_array=ChartsHidden.split("|");
|
||||
MainGraph.data.datasets[0].hidden=(hidden_array[0] == 'true');
|
||||
MainGraph.data.datasets[1].hidden=(hidden_array[1] == 'true');
|
||||
MainGraph.data.datasets[2].hidden=(hidden_array[2] == 'true');
|
||||
MainGraph.data.datasets[3].hidden=(hidden_array[3] == 'true');
|
||||
MainGraph.data.datasets[4].hidden=(hidden_array[4] == 'true');
|
||||
|
||||
MainGraph.update();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
var update_graph_flag=0;
|
||||
for (var j=0; j<LabelArray.length; j++) {
|
||||
if (report_type.match(regRPTtype))
|
||||
{
|
||||
if (TotalCallCountArray[j]!=TotalCallCountArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[0].data[j]=TotalCallCountArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (TotalSaleCountArray[j]!=TotalSaleCountArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[1].data[j]=TotalSaleCountArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (CPHArray[j]!=CPHArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[2].data[j]=CPHArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (SPHArray[j]!=SPHArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[3].data[j]=SPHArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (ConvRateArray[j]!=ConvRateArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[4].data[j]=ConvRateArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (TGArray[j]!=TGArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[5].data[j]=TGArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (CallCountArray[j]!=CallCountArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[0].data[j]=CallCountArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (SaleCountArray[j]!=SaleCountArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[1].data[j]=SaleCountArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (SPHArray[j]!=SPHArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[2].data[j]=SPHArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (ConvRateArray[j]!=ConvRateArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[3].data[j]=ConvRateArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
if (TPAArray[j]!=TPAArray_holder[j])
|
||||
{
|
||||
MainGraph.data.datasets[4].data[j]=TPAArray[j];
|
||||
update_graph_flag++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (update_graph_flag>0)
|
||||
{
|
||||
MainGraph.update();
|
||||
}
|
||||
}
|
||||
var hidden_charts="";
|
||||
for (var j=0; j<MainGraph.data.datasets.length; j++)
|
||||
{
|
||||
hidden_charts+=(!MainGraph.isDatasetVisible(j))+"|";
|
||||
}
|
||||
ChartsHidden=hidden_charts.replace(regRPTpipe, '');
|
||||
document.getElementById("hidden_display").value=ChartsHidden;
|
||||
|
||||
LabelArray_holder=LabelArray;
|
||||
CallCountArray_holder=CallCountArray;
|
||||
SaleCountArray_holder=SaleCountArray;
|
||||
TotalCallCountArray_holder=TotalCallCountArray;
|
||||
TotalSaleCountArray_holder=TotalSaleCountArray;
|
||||
TimeArray_holder=TimeArray;
|
||||
ConvRateArray_holder=ConvRateArray;
|
||||
CPHArray_holder=CPHArray;
|
||||
SPHArray_holder=SPHArray;
|
||||
TPAArray_holder=TPAArray;
|
||||
TGArray_holder=TGArray;
|
||||
// document.getElementById("canvas_message").innerHTML="URL: "+rpt_query+"<BR>\n";
|
||||
// document.getElementById("canvas_message").innerHTML+="Hide total: "+hide_total+"<BR>\n";
|
||||
// document.getElementById("canvas_message").innerHTML+="Hide rates: "+hide_rates+"<BR>\n";
|
||||
// document.getElementById("canvas_message").innerHTML+="Graph type: "+graph_type+"<BR>\n";
|
||||
// document.getElementById("canvas_message").innerHTML+="Target per agent: "+graph_type+"<BR>\n";
|
||||
// document.getElementById("canvas_message").innerHTML+="Result: "+response_txt+"<BR>\n";
|
||||
}
|
||||
// MainGraph.update();
|
||||
}
|
||||
|
||||
document.getElementById("loading_display").style.display="none";
|
||||
|
||||
|
||||
/*
|
||||
myLineChart.destroy();
|
||||
myLineChart.data.datasets[0].data[2] = 50; // Would update the first dataset's value of 'March' to be 50
|
||||
myLineChart.update(); // Calling update now animates the position of March from 90 to 50.
|
||||
|
||||
var mixedChart = new Chart(ctx, {
|
||||
type: 'bar',
|
||||
data: {
|
||||
datasets: [{
|
||||
label: 'Bar Dataset',
|
||||
data: [10, 20, 30, 40]
|
||||
}, {
|
||||
label: 'Line Dataset',
|
||||
data: [50, 50, 50, 50],
|
||||
|
||||
// Changes this dataset to become a line
|
||||
type: 'line'
|
||||
}],
|
||||
labels: ['January', 'February', 'March', 'April']
|
||||
},
|
||||
options: options
|
||||
});
|
||||
*/
|
||||
delete xmlhttp;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user