Added system setting to allow Lead Management admin utilities to handle

active lists.
Changed Advanced Lead Management tool to allow you to select multiple lists.
Added HTML display option to several reports

git-svn-id: svn://192.168.202.10@2806 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
mattf
2017-08-19 15:34:05 +00:00
parent 4e84c40ad3
commit 538b70493e
15 changed files with 504 additions and 139 deletions
+4
View File
@@ -186,6 +186,10 @@ OTHER CHANGES:
agent has handled their call. Overrides agent HANGUP CUSTOMER button
to send call to survey instead.
44. Added system setting to allow Lead Management admin utilities to handle
active lists. Also changed Advanced Lead Management tool to allow
you to select multiple lists.
+3 -2
View File
@@ -1720,7 +1720,8 @@ allow_ip_lists ENUM('0','1','2') default '0',
system_ip_blacklist VARCHAR(30) default '',
agent_push_events ENUM('0','1') default '0',
agent_push_url TEXT,
hide_inactive_lists ENUM('0','1') default '0'
hide_inactive_lists ENUM('0','1') default '0',
allow_manage_active_lists ENUM('0','1') default '0'
) ENGINE=MyISAM;
CREATE TABLE vicidial_campaigns_list_mix (
@@ -4063,4 +4064,4 @@ UPDATE vicidial_configuration set value='1766' where name='qc_database_version';
UPDATE system_settings set vdc_agent_api_active='1';
UPDATE system_settings SET db_schema_version='1512',db_schema_update_date=NOW(),reload_timestamp=NOW();
UPDATE system_settings SET db_schema_version='1513',db_schema_update_date=NOW(),reload_timestamp=NOW();
+4
View File
@@ -351,3 +351,7 @@ ALTER TABLE vicidial_inbound_groups ADD inbound_survey_question_filename TEXT;
ALTER TABLE vicidial_inbound_groups ADD inbound_survey_callmenu TEXT;
UPDATE system_settings SET db_schema_version='1512',db_schema_update_date=NOW() where db_schema_version < 1512;
ALTER TABLE system_settings ADD allow_manage_active_lists ENUM('0','1') default '0';
UPDATE system_settings SET db_schema_version='1513',db_schema_update_date=NOW() where db_schema_version < 1513;
+3 -3
View File
@@ -7,7 +7,7 @@
# 150724-0740 - First build
# 150727-2111 - Added different colors for higher run times, added user variable, code cleanup
# 170409-1547 - Added IP List validation code
# 170818-0751 - Added HTML display option
# 170817-2330 - Added HTML format option
#
$startMS = microtime();
@@ -226,8 +226,8 @@ $agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($stmt, $link);
$qm_conf_ct = mysqli_num_rows($rslt);
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
+132 -18
View File
@@ -15,6 +15,7 @@
# 141114-0837 - Finalized adding QXZ translation to all admin files
# 141230-1457 - Added code for on-the-fly language translations display
# 170409-1534 - Added IP List validation code
# 170818-2345 - Added HTML formatting
#
$startMS = microtime();
@@ -53,6 +54,8 @@ if (isset($_GET["submit"])) {$submit=$_GET["submit"];}
elseif (isset($_POST["submit"])) {$submit=$_POST["submit"];}
if (isset($_GET["SUBMIT"])) {$SUBMIT=$_GET["SUBMIT"];}
elseif (isset($_POST["SUBMIT"])) {$SUBMIT=$_POST["SUBMIT"];}
if (isset($_GET["report_display_type"])) {$report_display_type=$_GET["report_display_type"];}
elseif (isset($_POST["report_display_type"])) {$report_display_type=$_POST["report_display_type"];}
$START_TIME=date("U");
@@ -559,6 +562,44 @@ $hangup_cause_SQL=preg_replace('/ OR$/', '', $hangup_cause_SQL);
$hangup_cause_SQL = preg_replace('/,$/i', '',$hangup_cause_SQL);
$hangup_cause_SQL = "and ($hangup_cause_SQL)";
##### BEGIN Define colors and logo #####
$SSmenu_background='015B91';
$SSframe_background='D9E6FE';
$SSstd_row1_background='9BB9FB';
$SSstd_row2_background='B9CBFD';
$SSstd_row3_background='8EBCFD';
$SSstd_row4_background='B6D3FC';
$SSstd_row5_background='FFFFFF';
$SSalt_row1_background='BDFFBD';
$SSalt_row2_background='99FF99';
$SSalt_row3_background='CCFFCC';
$screen_color_stmt="select admin_screen_colors from system_settings";
$screen_color_rslt=mysql_to_mysqli($screen_color_stmt, $link);
$screen_color_row=mysqli_fetch_row($screen_color_rslt);
$agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
$SSmenu_background = $asc_row[0];
$SSframe_background = $asc_row[1];
$SSstd_row1_background = $asc_row[2];
$SSstd_row2_background = $asc_row[3];
$SSstd_row3_background = $asc_row[4];
$SSstd_row4_background = $asc_row[5];
$SSstd_row5_background = $asc_row[6];
$SSalt_row1_background = $asc_row[7];
$SSalt_row2_background = $asc_row[8];
$SSalt_row3_background = $asc_row[9];
$SSweb_logo = $asc_row[10];
}
}
if (strlen($hangup_cause_SQL)<7) {$hangup_cause_SQL="";}
@@ -682,43 +723,87 @@ $MAIN.="</TD>";
$MAIN.="<TD ROWSPAN=2 VALIGN=middle align=center>\n";
$MAIN.=_QXZ("Display as:")."<BR>";
$MAIN.="<select name='report_display_type'>";
if ($report_display_type) {$MAIN.="<option value='$report_display_type' selected>$report_display_type</option>";}
$MAIN.="<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
$MAIN.="<INPUT TYPE=submit NAME=SUBMIT VALUE='"._QXZ("SUBMIT")."'><BR/><BR/>\n";
$MAIN.="</TD></TR></TABLE>\n";
if ($SUBMIT && $server_ip_ct>0) {
$stmt="SELECT hangup_cause, dialstatus, count(*) as ct From vicidial_carrier_log where call_date>='$query_date $query_date_D' and call_date<='$query_date $query_date_T' $server_ip_SQL $hangup_cause_SQL group by hangup_cause, dialstatus order by hangup_cause, dialstatus";
$rslt=mysql_to_mysqli($stmt, $link);
$MAIN.="<PRE><font size=2>\n";
if ($DB) {$MAIN.=$stmt."\n";}
$TEXT.="<PRE><font size=2>\n";
if ($DB) {$TEXT.=$stmt."\n";}
if (mysqli_num_rows($rslt)>0) {
$MAIN.="--- "._QXZ("DIAL STATUS BREAKDOWN FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string\n";
$MAIN.="+--------------+-------------+---------+\n";
$MAIN.="| "._QXZ("HANGUP CAUSE",12)." | "._QXZ("DIAL STATUS",11)." | "._QXZ("COUNT",6)." |\n";
$MAIN.="+--------------+-------------+---------+\n";
$TEXT.="--- "._QXZ("DIAL STATUS BREAKDOWN FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string\n";
$TEXT.="+--------------+-------------+---------+\n";
$TEXT.="| "._QXZ("HANGUP CAUSE",12)." | "._QXZ("DIAL STATUS",11)." | "._QXZ("COUNT",6)." |\n";
$TEXT.="+--------------+-------------+---------+\n";
$HTML.="<BR><table border='0' cellpadding='3' cellspacing='1'>";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='3'><font size='2'>"._QXZ("DIAL STATUS BREAKDOWN FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string</font></th>";
$HTML.="</tr>\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("HANGUP CAUSE")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("DIAL STATUS")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("COUNT")."</font></th>";
$HTML.="</tr>\n";
$total_count=0;
while ($row=mysqli_fetch_array($rslt)) {
$MAIN.="| ".sprintf("%-13s", $row["hangup_cause"]);
$MAIN.="| ".sprintf("%-12s", $row["dialstatus"]);
$MAIN.="| ".sprintf("%-8s", $row["ct"]);
$MAIN.="|\n";
$TEXT.="| ".sprintf("%-13s", $row["hangup_cause"]);
$TEXT.="| ".sprintf("%-12s", $row["dialstatus"]);
$TEXT.="| ".sprintf("%-8s", $row["ct"]);
$TEXT.="|\n";
$total_count+=$row["ct"];
$HTML.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML.="<th><font size='2'>".$row["hangup_cause"]."</font></th>";
$HTML.="<th><font size='2'>".$row["dialstatus"]."</font></th>";
$HTML.="<th><font size='2'>".$row["ct"]."</font></th>";
$HTML.="</tr>\n";
}
$MAIN.="+--------------+-------------+---------+\n";
$MAIN.="| "._QXZ("TOTAL",26,"r")." | ".sprintf("%-8s", $total_count)."|\n";
$MAIN.="+--------------+-------------+---------+\n\n\n";
$TEXT.="+--------------+-------------+---------+\n";
$TEXT.="| "._QXZ("TOTAL",26,"r")." | ".sprintf("%-8s", $total_count)."|\n";
$TEXT.="+--------------+-------------+---------+\n\n\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='2'><font size='2'>"._QXZ("TOTAL")."</font></th>";
$HTML.="<th><font size='2'>".$total_count."</font></th>";
$HTML.="</tr></table><BR><BR>\n";
$rpt_stmt="SELECT vicidial_carrier_log.*, vicidial_log.phone_number from vicidial_carrier_log left join vicidial_log on vicidial_log.uniqueid=vicidial_carrier_log.uniqueid where vicidial_carrier_log.call_date>='$query_date $query_date_D' and vicidial_carrier_log.call_date<='$query_date $query_date_T' $server_ip_SQL $hangup_cause_SQL $sip_hangup_cause_SQL order by vicidial_carrier_log.call_date asc";
$rpt_rslt=mysql_to_mysqli($rpt_stmt, $link);
if ($DB) {$MAIN.=$rpt_stmt."\n";}
if ($DB) {$TEXT.=$rpt_stmt."\n";}
if (!$lower_limit) {$lower_limit=1;}
if ($lower_limit+999>=mysqli_num_rows($rpt_rslt)) {$upper_limit=($lower_limit+mysqli_num_rows($rpt_rslt)%1000)-1;} else {$upper_limit=$lower_limit+999;}
$MAIN.="--- "._QXZ("CARRIER LOG RECORDS FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string, $HC_rpt_string, $DS_rpt_string\n --- "._QXZ("RECORDS")." #$lower_limit-$upper_limit <a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS&lower_limit=$lower_limit&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a>\n";
$TEXT.="--- "._QXZ("CARRIER LOG RECORDS FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string, $HC_rpt_string, $DS_rpt_string\n --- "._QXZ("RECORDS")." #$lower_limit-$upper_limit <a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS&lower_limit=$lower_limit&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a>\n";
$carrier_rpt.="+----------------------+---------------------+-----------------+-----------+--------------+-------------+------------------------------------------+-----------+---------------+--------------+--------------+--------------------------------+\n";
$carrier_rpt.="| "._QXZ("UNIQUE ID",20)." | "._QXZ("CALL DATE",19)." | "._QXZ("SERVER IP",15)." | "._QXZ("LEAD ID",9)." | "._QXZ("HANGUP CAUSE",11)." | "._QXZ("DIAL STATUS",11)." | "._QXZ("CHANNEL",40)." | "._QXZ("DIAL TIME",9)." | "._QXZ("ANSWERED TIME",13)." | "._QXZ("PHONE NUMBER",12)." | "._QXZ("SIP RESPONSE",12)." | "._QXZ("SIP REASON",30)." |\n";
$carrier_rpt.="+----------------------+---------------------+-----------------+-----------+--------------+-------------+------------------------------------------+-----------+---------------+--------------+--------------+--------------------------------+\n";
$CSV_text="\""._QXZ("UNIQUE ID")."\",\""._QXZ("CALL DATE")."\",\""._QXZ("SERVER IP")."\",\""._QXZ("LEAD ID")."\",\""._QXZ("HANGUP CAUSE")."\",\""._QXZ("DIAL STATUS")."\",\""._QXZ("CHANNEL")."\",\""._QXZ("DIAL TIME")."\",\""._QXZ("ANSWERED TIME")."\",\""._QXZ("PHONE NUMBER")."\",\""._QXZ("SIP RESPONSE")."\",\""._QXZ("SIP REASON")."\"\n";
$HTML.="<table border='0' cellpadding='3' cellspacing='1'>";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='10'><font size='2'>"._QXZ("CARRIER LOG RECORDS FOR")." $query_date, $query_date_D "._QXZ("TO")." $query_date_T $server_rpt_string, $HC_rpt_string, $DS_rpt_string\n --- "._QXZ("RECORDS")." #$lower_limit-$upper_limit</font></th>";
$HTML.="<th colspan='2'><font size='2'><a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS&lower_limit=$lower_limit&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a></font></th>";
$HTML.="</tr>\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("UNIQUE ID")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("CALL DATE")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("SERVER IP")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("LEAD ID")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("HANGUP CAUSE")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("DIAL STATUS")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("CHANNEL")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("DIAL TIME")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("ANSWERED TIME")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("PHONE NUMBER")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("SIP RESPONSE")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("SIP REASON")."</font></th>";
$HTML.="</tr>\n";
for ($i=1; $i<=mysqli_num_rows($rpt_rslt); $i++) {
$row=mysqli_fetch_array($rpt_rslt);
$phone_number=""; $phone_note="";
@@ -751,30 +836,59 @@ if ($SUBMIT && $server_ip_ct>0) {
$carrier_rpt.="| ".sprintf("%-13s", $phone_number);
$carrier_rpt.="| ".sprintf("%-13s", $row["sip_hangup_cause"]);
$carrier_rpt.="| ".sprintf("%-31s", $row["sip_hangup_reason"])."|\n";
$HTML.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML.="<th><font size='2'>".$row["uniqueid"]."</font></th>";
$HTML.="<th><font size='2'>".$row["call_date"]."</font></th>";
$HTML.="<th><font size='2'>".$row["server_ip"]."</font></th>";
$HTML.="<th><font size='2'>".$row["lead_id"]."</font></th>";
$HTML.="<th><font size='2'>".$row["hangup_cause"]."</font></th>";
$HTML.="<th><font size='2'>".$row["dialstatus"]."</font></th>";
$HTML.="<th><font size='2'>".$row["channel"]."</font></th>";
$HTML.="<th><font size='2'>".$row["dial_time"]."</font></th>";
$HTML.="<th><font size='2'>".$row["answered_time"]."</font></th>";
$HTML.="<th><font size='2'>".$phone_number."</font></th>";
$HTML.="<th><font size='2'>".$row["sip_hangup_cause"]."</font></th>";
$HTML.="<th><font size='2'>".$row["sip_hangup_reason"]."</font></th>";
$HTML.="</tr>\n";
}
}
$carrier_rpt.="+----------------------+---------------------+-----------------+-----------+--------------+-------------+------------------------------------------+-----------+---------------+--------------+--------------+--------------------------------+\n";
$carrier_rpt_hf="";
$ll=$lower_limit-1000;
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
if ($ll>=1) {
$carrier_rpt_hf.="<a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$hangup_causeQS$sip_hangup_causeQS$dial_statusQS&lower_limit=$ll\">[<<< "._QXZ("PREV")." 1000 "._QXZ("records")."]</a>";
$HTML.="<th colspan='6'><font size='2'><a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$hangup_causeQS$sip_hangup_causeQS$dial_statusQS&lower_limit=$ll\">[<<< "._QXZ("PREV")." 1000 "._QXZ("records")."]</a></font></th>";
} else {
$carrier_rpt_hf.=sprintf("%-23s", " ");
$HTML.="<th colspan='6'>&nbsp;</th>";
}
$carrier_rpt_hf.=sprintf("%-145s", " ");
if (($lower_limit+1000)<mysqli_num_rows($rpt_rslt)) {
if ($upper_limit+1000>=mysqli_num_rows($rpt_rslt)) {$max_limit=mysqli_num_rows($rpt_rslt)-$upper_limit;} else {$max_limit=1000;}
$carrier_rpt_hf.="<a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$hangup_causeQS$sip_hangup_causeQS$dial_statusQS&lower_limit=".($lower_limit+1000)."\">["._QXZ("NEXT")." $max_limit "._QXZ("records")." >>>]</a>";
$HTML.="<th colspan='6'><font size='2'><a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$hangup_causeQS$sip_hangup_causeQS$dial_statusQS&lower_limit=".($lower_limit+1000)."\">["._QXZ("NEXT")." $max_limit "._QXZ("records")." >>>]</a></font></th>";
} else {
$carrier_rpt_hf.=sprintf("%23s", " ");
$HTML.="<th colspan='6'>&nbsp;</th>";
}
$carrier_rpt_hf.="\n";
$MAIN.=$carrier_rpt_hf.$carrier_rpt.$carrier_rpt_hf;
$TEXT.=$carrier_rpt_hf.$carrier_rpt.$carrier_rpt_hf;
$HTML.="</tr></table>";
} else {
$MAIN.="*** "._QXZ("NO RECORDS FOUND")." ***\n";
$TEXT.="*** "._QXZ("NO RECORDS FOUND")." ***\n";
$HTML.="*** "._QXZ("NO RECORDS FOUND")." ***\n";
}
$TEXT.="</font></PRE>\n";
if ($report_display_type=="HTML") {
$MAIN.=$HTML;
} else {
$MAIN.=$TEXT;
}
$MAIN.="</font></PRE>\n";
$MAIN.="</form></BODY></HTML>\n";
+7 -13
View File
@@ -10,7 +10,6 @@
# 160826-0054 - First build
# 170409-1542 - Added IP List validation code
# 170816-2026 - Added HTML formatting
# 170818-0748 - Added link to v2 of report
#
$startMS = microtime();
@@ -387,8 +386,8 @@ $agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($stmt, $link);
$qm_conf_ct = mysqli_num_rows($rslt);
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
@@ -687,22 +686,17 @@ echo "</SELECT>\n";
echo "</TD>\n";
echo "<TD VALIGN=TOP ROWSPAN=2>\n";
#echo "Display as:<BR>";
#echo "<select name='report_display_type'>";
#if ($report_display_type) {echo "<option value='$report_display_type' selected>$report_display_type</option>";}
#echo "<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
echo _QXZ("Display as:")."<BR>";
echo "<select name='report_display_type'>";
if ($report_display_type) {echo "<option value='$report_display_type' selected>$report_display_type</option>";}
echo "<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
if ($archives_available=="Y")
{
echo "<input type='checkbox' name='search_archived_data' value='checked' $search_archived_data>"._QXZ("Search archived data")."\n";
}
echo "<BR><BR>"._QXZ("Display as:")."<BR>";
echo "<select name='report_display_type'>";
if ($report_display_type) {echo "<option value='$report_display_type' selected>$report_display_type</option>";}
echo "<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
echo "<BR><BR><INPUT TYPE=SUBMIT NAME=SUBMIT VALUE='"._QXZ("SUBMIT")."'>\n";
echo "</TD><TD VALIGN=TOP ROWSPAN=2> &nbsp; &nbsp; &nbsp; &nbsp; ";
@@ -381,8 +381,8 @@ $agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($stmt, $link);
$qm_conf_ct = mysqli_num_rows($rslt);
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
@@ -569,7 +569,7 @@ if ($SUBMIT && $query_date && $start_hour && $end_hour) {
foreach($hour_array as $hour){
if($allData[$Ugroup][$hour]) {sort($allData[$Ugroup][$hour]);}
}
reset($hour_array);
if ($hour_array) {reset($hour_array);}
for($cont=0; $cont < $maxUserByUserGroup[$Ugroup] ;$cont ++){
$ASCII_text.="| ".sprintf("%20s", $Ugroup)." |" ;
@@ -597,7 +597,7 @@ if ($SUBMIT && $query_date && $start_hour && $end_hour) {
$UG_ct++;
}
reset($hour_array);
if ($hour_array) {reset($hour_array);}
$ASCII_text.=$ASCII_header."\n";
$ASCII_text.=$ASCII_total."\n";
$ASCII_text.=$ASCII_header."\n";
+89 -8
View File
@@ -305,6 +305,46 @@ else
$user_group_SQL = preg_replace('/,$/i', '',$user_group_SQL);
#$user_group_SQL = "and vicidial_agent_log.user_group IN($user_group_SQL)";
}
##### BEGIN Define colors and logo #####
$SSmenu_background='015B91';
$SSframe_background='D9E6FE';
$SSstd_row1_background='9BB9FB';
$SSstd_row2_background='B9CBFD';
$SSstd_row3_background='8EBCFD';
$SSstd_row4_background='B6D3FC';
$SSstd_row5_background='FFFFFF';
$SSalt_row1_background='BDFFBD';
$SSalt_row2_background='99FF99';
$SSalt_row3_background='CCFFCC';
$screen_color_stmt="select admin_screen_colors from system_settings";
$screen_color_rslt=mysql_to_mysqli($screen_color_stmt, $link);
$screen_color_row=mysqli_fetch_row($screen_color_rslt);
$agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
$SSmenu_background = $asc_row[0];
$SSframe_background = $asc_row[1];
$SSstd_row1_background = $asc_row[2];
$SSstd_row2_background = $asc_row[3];
$SSstd_row3_background = $asc_row[4];
$SSstd_row4_background = $asc_row[5];
$SSstd_row5_background = $asc_row[6];
$SSalt_row1_background = $asc_row[7];
$SSalt_row2_background = $asc_row[8];
$SSalt_row3_background = $asc_row[9];
$SSweb_logo = $asc_row[10];
}
}
######################################
if ($DB) {$HTML_text.="$user_group_string|$user_group_ct|$user_groupQS|$i<BR>";}
@@ -360,29 +400,29 @@ $HTML_text.="</SELECT>\n";
$HTML_text.="</TD>\n";
$HTML_text.="<TD VALIGN=TOP>\n";
#$HTML_text.="Display as:<BR>";
#$HTML_text.="<select name='report_display_type'>";
#if ($report_display_type) {$HTML_text.="<option value='$report_display_type' selected>$report_display_type</option>";}
#$HTML_text.="<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
$HTML_text.=_QXZ("Display as:")."<BR>";
$HTML_text.="<select name='report_display_type'>";
if ($report_display_type) {$HTML_text.="<option value='$report_display_type' selected>$report_display_type</option>";}
$HTML_text.="<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
if ($archives_available=="Y")
{
$HTML_text.="<input type='checkbox' name='search_archived_data' value='checked' $search_archived_data>"._QXZ("Search archived data")."\n";
}
$HTML_text.="<BR><BR><INPUT TYPE=SUBMIT NAME=SUBMIT VALUE='"._QXZ("SUBMIT")."'>\n";
$HTML_text.="</TD><TD VALIGN=TOP> &nbsp; &nbsp; &nbsp; &nbsp; ";
$HTML_text.="</TD><TD VALIGN=MIDDLE ALIGN='CENTER'> &nbsp; &nbsp; &nbsp; &nbsp; ";
$HTML_text.="<FONT FACE=\"ARIAL,HELVETICA\" COLOR=BLACK SIZE=2> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;\n";
$HTML_text.="<a href=\"$PHP_SELF?DB=$DB&query_date=$query_date&end_date=$end_date&query_date_D=$query_date_D&query_date_T=$query_date_T&end_date_D=$end_date_D&end_date_T=$end_date_T$groupQS$user_groupQS$call_statusQS&file_download=1&SUBMIT=$SUBMIT&search_archived_data=$search_archived_data\">"._QXZ("DOWNLOAD")."</a> |";
$HTML_text.=" <a href=\"./admin.php?ADD=999999\">"._QXZ("REPORTS")."</a> </FONT>\n";
$HTML_text.="</FONT>\n";
$HTML_text.="<BR><BR><INPUT TYPE=SUBMIT NAME=SUBMIT VALUE='"._QXZ("SUBMIT")."'>\n";
$HTML_text.="</TD></TR></TABLE>";
$HTML_text.="</FORM><font size=2><PRE>\n";
$HTML_text.="</FORM>\n";
if ($file_download < 1)
{
$ASCII_text.=_QXZ("Usergroup Login Report",24).": $user $NOW_TIME ($db_source)\n";
$ASCII_text.="<font size=2><PRE>"._QXZ("Usergroup Login Report",24).": $user $NOW_TIME ($db_source)\n";
$GRAPH_text.=_QXZ("Usergroup Login Report Report",24).": $user $NOW_TIME ($db_source)\n";
}
else
@@ -396,6 +436,26 @@ if ($SUBMIT)
$ASCII_text.="| "._QXZ("USER NAME",30)." | "._QXZ("ID",8)." | "._QXZ("USER GROUP",20)." | "._QXZ("FIRST LOGIN DATE",19)." | "._QXZ("LAST LOGIN DATE",19)." | "._QXZ("CAMPAIGN",8)." | "._QXZ("SERVER IP",15)." | "._QXZ("COMPUTER IP",15)." | "._QXZ("EXTENSION",20)." | "._QXZ("BROWSER",12)." | "._QXZ("PHONE LOGIN",15)." | "._QXZ("SERVER PHONE",15)." | "._QXZ("PHONE IP",15)." |\n";
$ASCII_text.="+--------------------------------+----------+----------------------+---------------------+---------------------+----------+-----------------+-----------------+----------------------+--------------+-----------------+-----------------+-----------------+\n";
$HTML_text2.="<table border='0' cellpadding='3' cellspacing='1'>";
$HTML_text2.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML_text2.="<th colspan='11'><font size='2'>"._QXZ("Usergroup Login Report Report").": $user</th><th colspan='2'><font size='2'>$NOW_TIME ($db_source)</font></th>";
$HTML_text2.="</tr>\n";
$HTML_text2.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML_text2.="<th><font size='2'>"._QXZ("USER NAME")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("ID")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("USER GROUP")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("FIRST LOGIN DATE")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("LAST LOGIN DATE")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("CAMPAIGN")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("SERVER IP")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("COMPUTER IP")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("EXTENSION")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("BROWSER")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("PHONE LOGIN")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("SERVER PHONE")."</font></th>";
$HTML_text2.="<th><font size='2'>"._QXZ("PHONE IP")."</font></th>";
$HTML_text2.="</tr>\n";
$CSV_text="\""._QXZ("User group login report")."\",\""._QXZ("User groups").":\",\""._QXZ("$user_group_string")."\"\n\n";
$CSV_text.="\""._QXZ("User name")."\",\""._QXZ("User ID")."\",\""._QXZ("User group")."\",\""._QXZ("First login date")."\",\""._QXZ("Last login date")."\",\""._QXZ("Campaign ID")."\",\""._QXZ("Server IP")."\",\""._QXZ("Computer IP")."\",\""._QXZ("Extension")."\",\""._QXZ("Browser")."\",\""._QXZ("Phone login")."\",\""._QXZ("Server phone")."\",\""._QXZ("Phone IP")."\"\n";
$stmt="select distinct user, substr(full_name,1,30) as fullname, full_name from vicidial_users where user_group in ($user_group_SQL) order by user";
@@ -414,9 +474,26 @@ if ($SUBMIT)
$browser=$browser_ary[0];
$ASCII_text.="| ".sprintf("%-30s", $row["fullname"])." | <a href='user_stats.php?user=$row[user]'>".sprintf("%-8s", $row["user"])."</a> | ".sprintf("%-20s", $data_row["user_group"])." | ".sprintf("%-19s", $date_row["min_date"])." | ".sprintf("%-19s", $date_row["max_date"])." | ".sprintf("%-8s", $data_row["campaign_id"])." | ".sprintf("%-15s", $data_row["server_ip"])." | ".sprintf("%-15s", $data_row["computer_ip"])." | ".sprintf("%-20s", $data_row["ext"])." | ".sprintf("%-12s", $browser)." | ".sprintf("%-15s", $data_row["phone_login"])." | ".sprintf("%-15s", $data_row["server_phone"])." | ".sprintf("%-15s", $data_row["phone_ip"])." |\n";
$CSV_text.="\"$row[full_name]\",\"$row[user]\",\"$data_row[user_group]\",\"$date_row[min_date]\",\"$date_row[max_date]\",\"$data_row[campaign_id]\",\"$data_row[server_ip]\",\"$data_row[computer_ip]\",\"$data_row[extension]\",\"$data_row[browser]\",\"$data_row[phone_login]\",\"$data_row[server_phone]\",\"$data_row[phone_ip]\"\n";
$HTML_text2.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML_text2.="<td><font size='2'>".$row["fullname"]."</font></td>";
$HTML_text2.="<td><font size='2'><a href='user_stats.php?user=$row[user]'>".$row["user"]."</a></font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["user_group"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$date_row["min_date"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$date_row["max_date"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["campaign_id"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["server_ip"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["computer_ip"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["ext"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$browser."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["phone_login"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["server_phone"]."</font></td>";
$HTML_text2.="<td><font size='2'>".$data_row["phone_ip"]."</font></td>";
$HTML_text2.="</tr>\n";
}
}
$ASCII_text.="+--------------------------------+----------+----------------------+---------------------+---------------------+----------+-----------------+-----------------+----------------------+--------------+-----------------+-----------------+-----------------+\n";
$HTML_text2.="</table>\n";
}
if ($file_download>0)
@@ -450,6 +527,10 @@ else
{
$HTML_text.=$GRAPH_text;
}
else if ($report_display_type=="HTML")
{
$HTML_text.=$HTML_text2;
}
else
{
$HTML_text.=$ASCII_text."</PRE></font>";
+151 -34
View File
@@ -8,6 +8,7 @@
# 141114-0057 - Finalized adding QXZ translation to all admin files
# 141230-1352 - Added code for on-the-fly language translations display
# 170409-1534 - Added IP List validation code
# 170818-2130 - Added HTML format
#
$startMS = microtime();
@@ -266,8 +267,6 @@ else
}
if (strlen($webserver_SQL)<3) {$webserver_SQL="";}
## JOEJ
$url_string='|';
$url_ct = count($url);
$i=0;
@@ -329,6 +328,45 @@ if (strlen($url_SQL)>0) {
$login_url_SQL="and login_url in ($url_SQL)";
}
##### BEGIN Define colors and logo #####
$SSmenu_background='015B91';
$SSframe_background='D9E6FE';
$SSstd_row1_background='9BB9FB';
$SSstd_row2_background='B9CBFD';
$SSstd_row3_background='8EBCFD';
$SSstd_row4_background='B6D3FC';
$SSstd_row5_background='FFFFFF';
$SSalt_row1_background='BDFFBD';
$SSalt_row2_background='99FF99';
$SSalt_row3_background='CCFFCC';
$screen_color_stmt="select admin_screen_colors from system_settings";
$screen_color_rslt=mysql_to_mysqli($screen_color_stmt, $link);
$screen_color_row=mysqli_fetch_row($screen_color_rslt);
$agent_screen_colors="$screen_color_row[0]";
if ($agent_screen_colors != 'default')
{
$asc_stmt = "SELECT menu_background,frame_background,std_row1_background,std_row2_background,std_row3_background,std_row4_background,std_row5_background,alt_row1_background,alt_row2_background,alt_row3_background,web_logo FROM vicidial_screen_colors where colors_id='$agent_screen_colors';";
$asc_rslt=mysql_to_mysqli($asc_stmt, $link);
$qm_conf_ct = mysqli_num_rows($asc_rslt);
if ($qm_conf_ct > 0)
{
$asc_row=mysqli_fetch_row($asc_rslt);
$SSmenu_background = $asc_row[0];
$SSframe_background = $asc_row[1];
$SSstd_row1_background = $asc_row[2];
$SSstd_row2_background = $asc_row[3];
$SSstd_row3_background = $asc_row[4];
$SSstd_row4_background = $asc_row[5];
$SSstd_row5_background = $asc_row[6];
$SSalt_row1_background = $asc_row[7];
$SSalt_row2_background = $asc_row[8];
$SSalt_row3_background = $asc_row[9];
$SSweb_logo = $asc_row[10];
}
}
$HEADER.="<HTML>\n";
$HEADER.="<HEAD>\n";
$HEADER.="<STYLE type=\"text/css\">\n";
@@ -427,79 +465,150 @@ $MAIN.="</SELECT>";
$MAIN.="</TD>";
$MAIN.="<TD ROWSPAN=2 VALIGN=middle align=center>\n";
$MAIN.=_QXZ("Display as:");
$MAIN.="<select name='report_display_type'>";
if ($report_display_type) {$MAIN.="<option value='$report_display_type' selected>$report_display_type</option>";}
$MAIN.="<option value='TEXT'>TEXT</option><option value='HTML'>HTML</option></select>\n<BR><BR>";
$MAIN.="<INPUT TYPE=submit NAME=SUBMIT VALUE='"._QXZ("SUBMIT")."'><BR/><BR/>\n";
$MAIN.="</TD></TR></TABLE>\n";
$MAIN.="<PRE><font size=2>\n";
if ($SUBMIT && $query_date && $end_date) {
$MAIN.="--- "._QXZ("WEBSERVER/URL LOG RECORDS FOR")." $query_date "._QXZ("TO")." $end_date $webserver_rpt_string, $URL_rpt_string\n";
#$MAIN.="--- RECORDS #$lower_limit-$upper_limit";
$MAIN.="<a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$sip_hangup_causeQS&lower_limit=$lower_limit&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a>\n";
$TEXT.="<PRE><font size=2>\n";
$TEXT.="--- "._QXZ("WEBSERVER/URL LOG RECORDS FOR")." $query_date "._QXZ("TO")." $end_date $webserver_rpt_string, $URL_rpt_string\n";
#$TEXT.="--- RECORDS #$lower_limit-$upper_limit";
$TEXT.="<a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$sip_hangup_causeQS&lower_limit=$lower_limit&report_display_type=$report_display_type&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a>\n";
$HTML.="<BR>"._QXZ("WEBSERVER/URL LOG RECORDS FOR")." $query_date "._QXZ("TO")." $end_date $webserver_rpt_string, $URL_rpt_string\n";
$HTML.="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"$PHP_SELF?SUBMIT=$SUBMIT&DB=$DB&type=$type&query_date=$query_date&query_date_D=$query_date_D&query_date_T=$query_date_T$server_ipQS$sip_hangup_causeQS&lower_limit=$lower_limit&report_display_type=$report_display_type&upper_limit=$upper_limit&file_download=1\">["._QXZ("DOWNLOAD")."]</a><BR><BR>\n";
$stmt="select webserver, login_url, count(*) from vicidial_user_log where event_date>='$query_date 00:00:00' and event_date<='$end_date 23:59:59' $webserver_SQL $login_url_SQL group by webserver, login_url order by webserver, login_url";
$rslt=mysql_to_mysqli($stmt, $link);
$CSV_text="\""._QXZ("VICIDIAL USER LOG")."\"\n";
$CSV_text.="\""._QXZ("WEB SERVER")."\",\""._QXZ("URL")."\",\""._QXZ("COUNT")."\"\n";
$vulog_div="+----------------------------------------------------+------------------------------------------------------------------------------------------------------+--------+\n";
$MAIN.="\n"._QXZ("VICIDIAL USER LOG")."\n";
$MAIN.=$vulog_div;
$MAIN.="| "._QXZ("WEB SERVER",50)." | "._QXZ("URL",100)." | "._QXZ("COUNT",6)." |\n";
$MAIN.=$vulog_div;
$TEXT.="\n"._QXZ("VICIDIAL USER LOG")."\n";
$TEXT.=$vulog_div;
$TEXT.="| "._QXZ("WEB SERVER",50)." | "._QXZ("URL",100)." | "._QXZ("COUNT",6)." |\n";
$TEXT.=$vulog_div;
$HTML.="<table border='0' cellpadding='3' cellspacing='1'>";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='3'><font size='2'>"._QXZ("VICIDIAL USER LOG")."</font></th>";
$HTML.="</tr>\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("WEB SERVER")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("URL")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("COUNT")."</font></th>";
$HTML.="</tr>\n";
$user_TOTAL=0;
while($row=mysqli_fetch_row($rslt)) {
$MAIN.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 100))." | ".sprintf("%-100s", substr($url_array[$row[1]], 0, 100))." | ".sprintf("%6s", $row[2])." |\n";
$TEXT.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 100))." | ".sprintf("%-100s", substr($url_array[$row[1]], 0, 100))." | ".sprintf("%6s", $row[2])." |\n";
$CSV_text.="\"".$webserver_array[$row[0]]."\",\"".$url_array[$row[1]]."\",\"$row[2]\"\n";
$user_TOTAL+=$row[2];
$HTML.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML.="<td><font size='2'>".$webserver_array[$row[0]]."</font></td>";
$HTML.="<td><font size='2'>".$url_array[$row[1]]."</font></td>";
$HTML.="<td><font size='2'>".$row[2]."</font></td>";
$HTML.="</tr>\n";
}
$MAIN.=$vulog_div;
$MAIN.="| "._QXZ("TOTAL",153,"r")." | ".sprintf("%6s", $user_TOTAL)." |\n";
$TEXT.=$vulog_div;
$TEXT.="| "._QXZ("TOTAL",153,"r")." | ".sprintf("%6s", $user_TOTAL)." |\n";
$CSV_text.="\"\",\""._QXZ("TOTAL")."\",\"$user_TOTAL\"\n\n";
$MAIN.=$vulog_div;
$MAIN.="\n";
$TEXT.=$vulog_div;
$TEXT.="\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='2'><font size='2'>"._QXZ("TOTAL")."</font></th>";
$HTML.="<th><font size='2'>".$user_TOTAL."</font></th>";
$HTML.="</tr>\n";
$HTML.="</table><BR><BR>\n";
$stmt="select webserver, api_url, count(*) from vicidial_api_log where api_date>='$query_date 00:00:00' and api_date<='$end_date 23:59:59' $webserver_SQL $api_url_SQL group by webserver, api_url order by webserver, api_url";
$rslt=mysql_to_mysqli($stmt, $link);
$CSV_text.="\""._QXZ("VICIDIAL API LOG")."\"\n";
$CSV_text.="\""._QXZ("WEB SERVER")."\",\""._QXZ("URL")."\",\""._QXZ("COUNT")."\"\n";
$valog_div="+----------------------------------------------------+------------------------------------------------------------------------------------------------------+--------+\n";
$MAIN.="\n"._QXZ("VICIDIAL API LOG")."\n";
$MAIN.=$valog_div;
$MAIN.="| "._QXZ("WEB SERVER",50)." | "._QXZ("URL",100)." | "._QXZ("COUNT",6)." |\n";
$MAIN.=$valog_div;
$TEXT.="\n"._QXZ("VICIDIAL API LOG")."\n";
$TEXT.=$valog_div;
$TEXT.="| "._QXZ("WEB SERVER",50)." | "._QXZ("URL",100)." | "._QXZ("COUNT",6)." |\n";
$TEXT.=$valog_div;
$HTML.="<table border='0' cellpadding='3' cellspacing='1'>";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='3'><font size='2'>"._QXZ("VICIDIAL API LOG")."</font></th>";
$HTML.="</tr>\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("WEB SERVER")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("URL")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("COUNT")."</font></th>";
$HTML.="</tr>\n";
$api_TOTAL=0;
while($row=mysqli_fetch_row($rslt)) {
$MAIN.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 100))." | ".sprintf("%-100s", substr($url_array[$row[1]], 0, 100))." | ".sprintf("%6s", $row[2])." |\n";
$TEXT.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 100))." | ".sprintf("%-100s", substr($url_array[$row[1]], 0, 100))." | ".sprintf("%6s", $row[2])." |\n";
$CSV_text.="\"".$webserver_array[$row[0]]."\",\"".$url_array[$row[1]]."\",\"$row[2]\"\n";
$api_TOTAL+=$row[2];
$HTML.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML.="<td><font size='2'>".$webserver_array[$row[0]]."</font></td>";
$HTML.="<td><font size='2'>".$url_array[$row[1]]."</font></td>";
$HTML.="<td><font size='2'>".$row[2]."</font></td>";
$HTML.="</tr>\n";
}
$MAIN.=$valog_div;
$MAIN.="| "._QXZ("TOTAL",153,"r")." | ".sprintf("%6s", $api_TOTAL)." |\n";
$TEXT.=$valog_div;
$TEXT.="| "._QXZ("TOTAL",153,"r")." | ".sprintf("%6s", $api_TOTAL)." |\n";
$CSV_text.="\"\",\""._QXZ("TOTAL")."\",\"$api_TOTAL\"\n\n";
$MAIN.=$valog_div;
$MAIN.="\n\n";
$TEXT.=$valog_div;
$TEXT.="\n\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='2'><font size='2'>"._QXZ("TOTAL")."</font></th>";
$HTML.="<th><font size='2'>".$api_TOTAL."</font></th>";
$HTML.="</tr>\n";
$HTML.="</table><BR><BR>\n";
$stmt="select webserver, count(*) from vicidial_report_log where event_date>='$query_date 00:00:00' and event_date<='$end_date 23:59:59' $webserver_SQL group by webserver order by webserver";
$rslt=mysql_to_mysqli($stmt, $link);
$CSV_text.="\""._QXZ("VICIDIAL REPORT LOG")."\"\n";
$CSV_text.="\""._QXZ("WEB SERVER")."\",\""._QXZ("COUNT")."\"\n";
$vrlog_div="+----------------------------------------------------+--------+\n";
$MAIN.="\n"._QXZ("VICIDIAL REPORT LOG")."\n";
$MAIN.=$vrlog_div;
$MAIN.="| "._QXZ("WEB SERVER",50)." | "._QXZ("COUNT",6)." |\n";
$MAIN.=$vrlog_div;
$TEXT.="\n"._QXZ("VICIDIAL REPORT LOG")."\n";
$TEXT.=$vrlog_div;
$TEXT.="| "._QXZ("WEB SERVER",50)." | "._QXZ("COUNT",6)." |\n";
$TEXT.=$vrlog_div;
$HTML.="<table border='0' cellpadding='3' cellspacing='1'>";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th colspan='2'><font size='2'>"._QXZ("VICIDIAL REPORT LOG")."</font></th>";
$HTML.="</tr>\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("WEB SERVER")."</font></th>";
$HTML.="<th><font size='2'>"._QXZ("COUNT")."</font></th>";
$HTML.="</tr>\n";
$report_TOTAL=0;
while($row=mysqli_fetch_row($rslt)) {
$MAIN.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 50))." | ".sprintf("%6s", $row[1])." |\n";
$TEXT.="| ".sprintf("%-50s", substr($webserver_array[$row[0]], 0, 50))." | ".sprintf("%6s", $row[1])." |\n";
$CSV_text.="\"".$webserver_array[$row[0]]."\",\"$row[1]\"\n";
$report_TOTAL+=$row[1];
$HTML.="<tr bgcolor='#".$SSstd_row2_background."'>";
$HTML.="<td><font size='2'>".$webserver_array[$row[0]]."</font></td>";
$HTML.="<td><font size='2'>".$row[1]."</font></td>";
$HTML.="</tr>\n";
}
$MAIN.=$vrlog_div;
$MAIN.="| "._QXZ("TOTAL",50,"r")." | ".sprintf("%6s", $report_TOTAL)." |\n";
$TEXT.=$vrlog_div;
$TEXT.="| "._QXZ("TOTAL",50,"r")." | ".sprintf("%6s", $report_TOTAL)." |\n";
$CSV_text.="\""._QXZ("TOTAL")."\",\"$report_TOTAL\"\n\n";
$MAIN.=$vrlog_div;
$MAIN.="\n\n";
$TEXT.=$vrlog_div;
$TEXT.="\n\n";
$HTML.="<tr bgcolor='#".$SSstd_row1_background."'>";
$HTML.="<th><font size='2'>"._QXZ("TOTAL")."</font></th>";
$HTML.="<th><font size='2'>".$report_TOTAL."</font></th>";
$HTML.="</tr>\n";
$HTML.="</table>\n";
$MAIN.="</PRE>\n";
$TEXT.="</PRE>\n";
}
if ($file_download>0) {
@@ -523,6 +632,14 @@ if ($SUBMIT && $query_date && $end_date) {
} else {
echo $HEADER;
require("admin_header.php");
if ($report_display_type=="HTML") {
$MAIN.=$HTML;
} else {
$MAIN.=$TEXT;
}
$MAIN.="</form></BODY></HTML>\n";
echo $MAIN;
}
+13 -5
View File
File diff suppressed because one or more lines are too long
+6
View File
@@ -131,6 +131,7 @@
# 170613-0855 - Added hide_inactive_lists
# 170623-2134 - Changed parameters for password recommendations
# 170816-1057 - Added inbound after call entries
# 170819-0951 - Added allow_manage_active_lists entry
#
@@ -5373,6 +5374,11 @@ FR_SPAC 00 00 00 00 00 - <?php echo _QXZ("France space separated phone number");
<BR>
<B><?php echo _QXZ("Enable DID Entry List ID"); ?> -</B><?php echo _QXZ("This setting if enabled will allow a manager to define an entry list id to use on the DID modify screen. Default is 0 for disabled."); ?>
<BR>
<A NAME="settings-allow_manage_active_lists">
<BR>
<B><?php echo _QXZ("Lead Manager Active Lists"); ?> -</B><?php echo _QXZ("This setting if enabled will allow a manager to select active lists for modification within the Lead Management admin utilities. We do not recommend enabling this option since it can cause issues with leads that could be part of active calling within the system. Default is 0 for disabled."); ?>
<BR>
<A NAME="settings-enable_drop_lists">
<BR>
+13 -5
View File
@@ -15,10 +15,11 @@
# 141229-2033 - Added code for on-the-fly language translations display
# 170409-1533 - Added IP List validation code
# 170711-1105 - Added screen colors
# 170819-1002 - Added allow_manage_active_lists option
#
$version = '2.14-11';
$build = '170711-1105';
$version = '2.14-12';
$build = '170819-1002';
# This limit is to prevent data inconsistancies.
# If there are too many leads in a list this
@@ -71,7 +72,7 @@ $delete_status = preg_replace('/[^-_0-9a-zA-Z]/','',$delete_status);
#############################################
##### START SYSTEM_SETTINGS LOOKUP #####
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,admin_screen_colors,report_default_format FROM system_settings;";
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,admin_screen_colors,report_default_format,allow_manage_active_lists FROM system_settings;";
$sys_settings_rslt=mysql_to_mysqli($sys_settings_stmt, $link);
if ($DB) {echo "$sys_settings_stmt\n";}
$num_rows = mysqli_num_rows($sys_settings_rslt);
@@ -85,6 +86,7 @@ if ($num_rows > 0)
$SSlanguage_method = $sys_settings_row[4];
$SSadmin_screen_colors = $sys_settings_row[5];
$SSreport_default_format = $sys_settings_row[6];
$SSallow_manage_active_lists = $sys_settings_row[7];
}
else
{
@@ -741,7 +743,9 @@ if (
}
# figure out which lists they are allowed to see
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) and active = 'N' ORDER BY list_id";
$activeSQL = "and active = 'N'";
if ($SSallow_manage_active_lists > 0) {$activeSQL = '';}
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) $activeSQL ORDER BY list_id";
if ($DB) { echo "|$lists_stmt|\n"; }
$lists_rslt = mysql_to_mysqli($lists_stmt, $link);
$num_rows = mysqli_num_rows($lists_rslt);
@@ -806,7 +810,11 @@ if (
}
echo "<p>"._QXZ("The following are basic lead management tools. They will only work on inactive lists with less than")." $list_lead_limit "._QXZ("leads in them").". "._QXZ("This is to avoid data inconsistencies").".</p>";
if ($SSallow_manage_active_lists > 0)
{echo "<p>"._QXZ("The following are basic lead management tools. They will only work on lists with less than");}
else
{echo "<p>"._QXZ("The following are basic lead management tools. They will only work on inactive lists with less than");}
echo " $list_lead_limit "._QXZ("leads in them. This is to avoid data inconsistencies").".</p>";
echo "<form action=$PHP_SELF method=POST>\n";
echo "<center><table width=$section_width cellspacing=3>\n";
+49 -37
View File
@@ -13,10 +13,11 @@
# 170225-1436 - Added date/time range options
# 170409-1554 - Added IP List validation code
# 170711-1104 - Added screen colors
# 170819-1003 - Added allow_manage_active_lists option, Changed list selection to multi
#
$version = '2.14-9';
$build = '170711-1104';
$version = '2.14-10';
$build = '170819-1003';
# This limit is to prevent data inconsistancies.
# If there are too many leads in a list this
@@ -85,7 +86,7 @@ if ($DB)
#############################################
##### START SYSTEM_SETTINGS LOOKUP #####
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,admin_screen_colors,report_default_format FROM system_settings;";
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,admin_screen_colors,report_default_format,allow_manage_active_lists FROM system_settings;";
$sys_settings_rslt=mysql_to_mysqli($sys_settings_stmt, $link);
if ($DB) {echo "$sys_settings_stmt\n";}
$num_rows = mysqli_num_rows($sys_settings_rslt);
@@ -99,6 +100,7 @@ if ($num_rows > 0)
$SSlanguage_method = $sys_settings_row[4];
$SSadmin_screen_colors = $sys_settings_row[5];
$SSreport_default_format = $sys_settings_row[6];
$SSallow_manage_active_lists = $sys_settings_row[7];
}
else
{
@@ -858,7 +860,7 @@ if ($move_submit == "move" )
$move_modify_date_op = preg_replace('/[^<>=_0-9a-zA-Z]/','',$move_modify_date_op);
$move_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$move_security_phrase);
$move_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$move_status);
$move_from_list = preg_replace('/[^0-9]/','',$move_from_list);
$move_from_list = preg_replace('/[^0-9\|]/','',$move_from_list);
$move_to_list = preg_replace('/[^0-9]/','',$move_to_list);
$move_count_num = preg_replace('/[^0-9]/','',$move_count_num);
$move_count_op = preg_replace('/[^<>=]/','',$move_count_op);
@@ -1102,7 +1104,7 @@ if ($move_submit == "move" )
# get the number of leads this action will move
$move_lead_count=0;
$move_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id = '$move_from_list' $sql_where";
$move_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id IN('".implode("','", $move_from_list)."') $sql_where";
if ($DB) { echo "|$move_lead_count_stmt|\n"; }
$move_lead_count_rslt = mysql_to_mysqli($move_lead_count_stmt, $link);
$move_lead_count_row = mysqli_fetch_row($move_lead_count_rslt);
@@ -1130,7 +1132,7 @@ if ($move_submit == "move" )
}
else
{
echo "<p>"._QXZ("You are about to move")." $move_lead_count "._QXZ("leads from list")." $move_from_list "._QXZ("to")." $move_to_list "._QXZ("with the following parameters").":<br /><br />$move_parm <br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<p>"._QXZ("You are about to move")." $move_lead_count "._QXZ("leads from list")." ".implode(",", $move_from_list)." "._QXZ("to")." $move_to_list "._QXZ("with the following parameters").":<br /><br />$move_parm <br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<center><form action=$PHP_SELF method=POST>\n";
echo "<input type=hidden name=enable_move_status value='$enable_move_status'>\n";
echo "<input type=hidden name=enable_move_country_code value='$enable_move_country_code'>\n";
@@ -1154,7 +1156,7 @@ if ($move_submit == "move" )
echo "<input type=hidden name=move_modify_date_end value=\"$move_modify_date_end\">\n";
echo "<input type=hidden name=move_modify_date_op value=\"$move_modify_date_op\">\n";
echo "<input type=hidden name=move_security_phrase value=\"$move_security_phrase\">\n";
echo "<input type=hidden name=move_from_list value=\"$move_from_list\">\n";
echo "<input type=hidden name=move_from_list value='".implode("|", $move_from_list)."'>\n";
echo "<input type=hidden name=move_to_list value=\"$move_to_list\">\n";
echo "<input type=hidden name=move_status value=\"$move_status\">\n";
echo "<input type=hidden name=move_count_op value=\"$move_count_op\">\n";
@@ -1284,7 +1286,7 @@ if ($confirm_move == "confirm")
$move_modify_date_op = preg_replace('/[^<>=_0-9a-zA-Z]/','',$move_modify_date_op);
$move_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$move_security_phrase);
$move_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$move_status);
$move_from_list = preg_replace('/[^0-9]/','',$move_from_list);
$move_from_list = preg_replace('/[^0-9\|]/','',$move_from_list);
$move_to_list = preg_replace('/[^0-9]/','',$move_to_list);
$move_count_num = preg_replace('/[^0-9]/','',$move_count_num);
$move_count_op = preg_replace('/[^<>=]/','',$move_count_op);
@@ -1512,7 +1514,8 @@ if ($confirm_move == "confirm")
blank_field('Move Count',true);
}
$move_lead_stmt = "UPDATE vicidial_list SET list_id = '$move_to_list' WHERE list_id = '$move_from_list' $sql_where";
$move_from_list_array=explode("|", $move_from_list);
$move_lead_stmt = "UPDATE vicidial_list SET list_id = '$move_to_list' WHERE list_id IN('".implode("', '", $move_from_list_array)."') $sql_where";
if ($DB) { echo "|$move_lead_stmt|\n"; }
$move_lead_rslt = mysql_to_mysqli($move_lead_stmt, $link);
$move_lead_count = mysqli_affected_rows($link);
@@ -1650,7 +1653,7 @@ if ($update_submit == "update" )
$update_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$update_security_phrase);
$update_to_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$update_to_status);
$update_from_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$update_from_status);
$update_list = preg_replace('/[^0-9]/','',$update_list);
$update_list = preg_replace('/[^0-9\|]/','',$update_list);
$update_count_num = preg_replace('/[^0-9]/','',$update_count_num);
$update_count_op = preg_replace('/[^<>=]/','',$update_count_op);
@@ -1890,13 +1893,13 @@ if ($update_submit == "update" )
# get the number of leads this action will move
$update_lead_count=0;
$update_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id = '$update_list' $sql_where";
$update_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id IN('".implode("','", $update_list)."') $sql_where";
if ($DB) { echo "|$update_lead_count_stmt|\n"; }
$update_lead_count_rslt = mysql_to_mysqli($update_lead_count_stmt, $link);
$update_lead_count_row = mysqli_fetch_row($update_lead_count_rslt);
$update_lead_count = $update_lead_count_row[0];
echo "<p>"._QXZ("You are about to update")." $update_lead_count "._QXZ("leads in list")." $update_list "._QXZ("to the status")." $update_to_status "._QXZ("with the following parameters").":<br /><br />$update_parm<br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<p>"._QXZ("You are about to update")." $update_lead_count "._QXZ("leads in list")." ".implode(",", $update_list)." "._QXZ("to the status")." $update_to_status "._QXZ("with the following parameters").":<br /><br />$update_parm<br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<center><form action=$PHP_SELF method=POST>\n";
echo "<input type=hidden name=enable_update_from_status value='$enable_update_from_status'>\n";
echo "<input type=hidden name=enable_update_country_code value='$enable_update_country_code'>\n";
@@ -1920,7 +1923,7 @@ if ($update_submit == "update" )
echo "<input type=hidden name=update_modify_date_end value=\"$update_modify_date_end\">\n";
echo "<input type=hidden name=update_modify_date_op value=\"$update_modify_date_op\">\n";
echo "<input type=hidden name=update_security_phrase value=\"$update_security_phrase\">\n";
echo "<input type=hidden name=update_list value=\"$update_list\">\n";
echo "<input type=hidden name=update_list value='".implode("|", $update_list)."'>\n";
echo "<input type=hidden name=update_to_status value=\"$update_to_status\">\n";
echo "<input type=hidden name=update_from_status value=\"$update_from_status\">\n";
echo "<input type=hidden name=update_count_op value=\"$update_count_op\">\n";
@@ -2051,7 +2054,7 @@ if ($confirm_update == "confirm")
$update_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$update_security_phrase);
$update_to_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$update_to_status);
$update_from_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$update_from_status);
$update_list = preg_replace('/[^0-9]/','',$update_list);
$update_list = preg_replace('/[^0-9\|]/','',$update_list);
$update_count_num = preg_replace('/[^0-9]/','',$update_count_num);
$update_count_op = preg_replace('/[^<>=]/','',$update_count_op);
@@ -2282,7 +2285,8 @@ if ($confirm_update == "confirm")
blank_field('Move Count',true);
}
$update_lead_stmt = "UPDATE vicidial_list SET status = '$update_to_status' WHERE list_id = '$update_list' $sql_where";
$update_list_array=explode("|", $update_list);
$update_lead_stmt = "UPDATE vicidial_list SET status = '$update_to_status' WHERE list_id IN('".implode("', '", $update_list_array)."') $sql_where";
if ($DB) { echo "|$update_lead_stmt|\n"; }
$update_lead_rslt = mysql_to_mysqli($update_lead_stmt, $link);
$update_lead_count = mysqli_affected_rows($link);
@@ -2421,7 +2425,7 @@ if ( ( $delete_submit == "delete" ) && ( $delete_lists > 0 ) )
$delete_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$delete_security_phrase);
$delete_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$delete_status);
$delete_lead_id = preg_replace('/[^0-9]/','',$delete_lead_id);
$delete_list = preg_replace('/[^0-9]/','',$delete_list);
$delete_list = preg_replace('/[^0-9\|]/','',$delete_list);
$delete_count_num = preg_replace('/[^0-9]/','',$delete_count_num);
$delete_count_op = preg_replace('/[^<>=]/','',$delete_count_op);
@@ -2664,13 +2668,13 @@ if ( ( $delete_submit == "delete" ) && ( $delete_lists > 0 ) )
# get the number of leads this action will move
$delete_lead_count=0;
$delete_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id = '$delete_list' $sql_where";
$delete_lead_count_stmt = "SELECT count(1) FROM vicidial_list WHERE list_id IN('".implode("','", $delete_list)."') $sql_where";
if ($DB) { echo "|$delete_lead_count_stmt|\n"; }
$delete_lead_count_rslt = mysql_to_mysqli($delete_lead_count_stmt, $link);
$delete_lead_count_row = mysqli_fetch_row($delete_lead_count_rslt);
$delete_lead_count = $delete_lead_count_row[0];
echo "<p>"._QXZ("You are about to delete")." $delete_lead_count "._QXZ("leads in list")." $delete_list "._QXZ("with the following parameters").":<br /><br />$delete_parm<br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<p>"._QXZ("You are about to delete")." $delete_lead_count "._QXZ("leads in list")." ".implode(",", $delete_list)." "._QXZ("with the following parameters").":<br /><br />$delete_parm<br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<center><form action=$PHP_SELF method=POST>\n";
echo "<input type=hidden name=enable_delete_lead_id value='$enable_delete_lead_id'>\n";
echo "<input type=hidden name=enable_delete_country_code value='$enable_delete_country_code'>\n";
@@ -2694,7 +2698,7 @@ if ( ( $delete_submit == "delete" ) && ( $delete_lists > 0 ) )
echo "<input type=hidden name=delete_modify_date_end value=\"$delete_modify_date_end\">\n";
echo "<input type=hidden name=delete_modify_date_op value=\"$delete_modify_date_op\">\n";
echo "<input type=hidden name=delete_security_phrase value=\"$delete_security_phrase\">\n";
echo "<input type=hidden name=delete_list value=\"$delete_list\">\n";
echo "<input type=hidden name=delete_list value='".implode("|", $delete_list)."'>\n";
echo "<input type=hidden name=delete_status value=\"$delete_status\">\n";
echo "<input type=hidden name=delete_count_op value=\"$delete_count_op\">\n";
echo "<input type=hidden name=delete_count_num value=\"$delete_count_num\">\n";
@@ -2824,7 +2828,7 @@ if ( ( $confirm_delete == "confirm" ) && ( $delete_lists > 0 ) )
$delete_security_phrase = preg_replace('/[^- _\'%0-9a-zA-Z]/','',$delete_security_phrase);
$delete_status = preg_replace('/[^-_%0-9a-zA-Z]/','',$delete_status);
$delete_lead_id = preg_replace('/[^0-9]/','',$delete_lead_id);
$delete_list = preg_replace('/[^0-9]/','',$delete_list);
$delete_list = preg_replace('/[^0-9\|]/','',$delete_list);
$delete_count_num = preg_replace('/[^0-9]/','',$delete_count_num);
$delete_count_op = preg_replace('/[^<>=]/','',$delete_count_op);
@@ -3058,7 +3062,8 @@ if ( ( $confirm_delete == "confirm" ) && ( $delete_lists > 0 ) )
blank_field('Move Count',true);
}
$delete_lead_stmt = "DELETE FROM vicidial_list WHERE list_id = '$delete_list' $sql_where";
$delete_list_array=explode("|", $delete_list);
$delete_lead_stmt = "DELETE FROM vicidial_list WHERE list_id IN('".implode("', '", $delete_list_array)."') $sql_where";
if ($DB) { echo "|$delete_lead_stmt|\n"; }
$delete_lead_rslt = mysql_to_mysqli($delete_lead_stmt, $link);
$delete_lead_count = mysqli_affected_rows($link);
@@ -3119,7 +3124,7 @@ if ($callback_submit == "switchcallbacks" )
$callback_entry_end_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_entry_end_date);
$callback_callback_start_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_callback_start_date);
$callback_callback_end_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_callback_end_date);
$callback_list = preg_replace('/[^0-9]/','',$callback_list);
$callback_list = preg_replace('/[^0-9\|]/','',$callback_list);
if ($DB)
{
@@ -3178,13 +3183,13 @@ if ($callback_submit == "switchcallbacks" )
# get the number of call backs that will be switched
$callback_lead_count=0;
$callback_lead_count_stmt = "SELECT count(1) FROM vicidial_callbacks WHERE list_id = '$callback_list' and recipient = 'USERONLY' $sql_where";
$callback_lead_count_stmt = "SELECT count(1) FROM vicidial_callbacks WHERE list_id IN('".implode("','", $callback_list)."') and recipient = 'USERONLY' $sql_where";
if ($DB) { echo "|$callback_lead_count_stmt|\n"; }
$callback_lead_count_rslt = mysql_to_mysqli($callback_lead_count_stmt, $link);
$callback_lead_count_row = mysqli_fetch_row($callback_lead_count_rslt);
$callback_lead_count = $callback_lead_count_row[0];
echo "<p>"._QXZ("You are about to switch")." $callback_lead_count "._QXZ("call backs in list")." $callback_list "._QXZ("from USERONLY callbacks to EVERYONE callbacks with these parameters").":<br /><br />$callback_parm <br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<p>"._QXZ("You are about to switch")." $callback_lead_count "._QXZ("call backs in list")." ".implode(",", $callback_list)." "._QXZ("from USERONLY callbacks to EVERYONE callbacks with these parameters").":<br /><br />$callback_parm <br />"._QXZ("Please press confirm to continue").".</p>\n";
echo "<center><form action=$PHP_SELF method=POST>\n";
echo "<input type=hidden name=enable_callback_entry_date value='$enable_callback_entry_date'>\n";
echo "<input type=hidden name=enable_callback_callback_date value='$enable_callback_callback_date'>\n";
@@ -3192,7 +3197,7 @@ if ($callback_submit == "switchcallbacks" )
echo "<input type=hidden name=callback_entry_end_date value='$callback_entry_end_date'>\n";
echo "<input type=hidden name=callback_callback_start_date value='$callback_callback_start_date'>\n";
echo "<input type=hidden name=callback_callback_end_date value='$callback_callback_end_date'>\n";
echo "<input type=hidden name=callback_list value='$callback_list'>\n";
echo "<input type=hidden name=callback_list value='".implode("|", $callback_list)."'>\n";
echo "<input type=hidden name=DB value='$DB'>\n";
echo "<input type=submit name=confirm_callback value='"._QXZ("confirm")."'>\n";
echo "</form></center>\n";
@@ -3240,7 +3245,7 @@ if ($confirm_callback == "confirm")
$callback_entry_end_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_entry_end_date);
$callback_callback_start_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_callback_start_date);
$callback_callback_end_date = preg_replace('/[^-_%0-9a-zA-Z]/','',$callback_callback_end_date);
$callback_list = preg_replace('/[^0-9]/','',$callback_list);
$callback_list = preg_replace('/[^0-9\|]/','',$callback_list);
if ($DB)
{
@@ -3296,7 +3301,8 @@ if ($confirm_callback == "confirm")
blank_field('Callback End Date',false);
}
$callback_lead_stmt = "UPDATE vicidial_callbacks SET recipient = 'ANYONE' WHERE list_id = '$callback_list' and recipient = 'USERONLY' $sql_where";
$callback_list_array=explode("|", $callback_list);
$callback_lead_stmt = "UPDATE vicidial_callbacks SET recipient = 'ANYONE' WHERE list_id IN('".implode("', '", $callback_list_array)."') and recipient = 'USERONLY' $sql_where";
if ($DB) { echo "|$callback_lead_stmt|\n"; }
$callback_lead_rslt = mysql_to_mysqli($callback_lead_stmt, $link);
$callback_lead_count = mysqli_affected_rows($link);
@@ -3368,7 +3374,9 @@ if (
}
# figure out which lists they are allowed to see
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) and active = 'N' ORDER BY list_id";
$activeSQL = "and active = 'N'";
if ($SSallow_manage_active_lists > 0) {$activeSQL = '';}
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) $activeSQL ORDER BY list_id";
if ($DB) { echo "|$lists_stmt|\n"; }
$lists_rslt = mysql_to_mysqli($lists_stmt, $link);
$num_rows = mysqli_num_rows($lists_rslt);
@@ -3433,15 +3441,19 @@ if (
}
echo "<p>"._QXZ("The following are advanced lead management tools. They will only work on inactive lists with less than")." $list_lead_limit "._QXZ("leads in them. This is to avoid data inconsistencies").".</p>";
if ($SSallow_manage_active_lists > 0)
{echo "<p>"._QXZ("The following are advanced lead management tools. They will only work on lists with less than");}
else
{echo "<p>"._QXZ("The following are advanced lead management tools. They will only work on inactive lists with less than");}
echo " $list_lead_limit "._QXZ("leads in them. This is to avoid data inconsistencies").".</p>";
echo "<form action=$PHP_SELF method=POST>\n";
echo "<center><table width=$section_width cellspacing=3>\n";
# BEGIN lead move
echo "<tr bgcolor=#$SSmenu_background><td colspan=2 align=center><font color=white><b>"._QXZ("Move Leads")."</b></font></td></tr>\n";
echo "<tr bgcolor=#$SSstd_row3_background><td align=right>"._QXZ("From List")."</td><td align=left>\n";
echo "<select size=1 name=move_from_list>\n";
echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
echo "<select size=8 name=move_from_list[] id='move_from_list' multiple>\n";
# echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
$i = 0;
while ( $i < $allowed_lists_count )
@@ -3550,8 +3562,8 @@ if (
echo "<br /><center><table width=$section_width cellspacing=3>\n";
echo "<tr bgcolor=#$SSmenu_background><td colspan=2 align=center><font color=white><b>"._QXZ("Update Lead Statuses")."</b></font></td></tr>\n";
echo "<tr bgcolor=#$SSstd_row3_background><td align=right>"._QXZ("List")."</td><td align=left>\n";
echo "<select size=1 name=update_list>\n";
echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
echo "<select size=8 name=update_list[] id='update_list' multiple>\n";
# echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
$i = 0;
while ( $i < $allowed_lists_count )
@@ -3661,8 +3673,8 @@ if (
echo "<br /><center><table width=$section_width cellspacing=3>\n";
echo "<tr bgcolor=#$SSmenu_background><td colspan=2 align=center><font color=white><b>"._QXZ("Delete Leads")."</b></font></td></tr>\n";
echo "<tr bgcolor=#$SSstd_row3_background><td align=right>"._QXZ("List")."</td><td align=left>\n";
echo "<select size=1 name=delete_list>\n";
echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
echo "<select size=8 name=delete_list[] id='delete_list' multiple>\n";
# echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
$i = 0;
while ( $i < $allowed_lists_count )
@@ -3764,8 +3776,8 @@ if (
echo "<br /><center><table width=$section_width cellspacing=3>\n";
echo "<tr bgcolor=#$SSmenu_background><td colspan=2 align=center><font color=white><b>"._QXZ("Switch Callbacks")."</b></font></td></tr>\n";
echo "<tr bgcolor=#$SSstd_row3_background><td align=right>"._QXZ("List")."</td><td align=left>\n";
echo "<select size=1 name=callback_list>\n";
echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
echo "<select size=8 name=callback_list[] id='callback_list' multiple>\n";
# echo "<option value='-'>"._QXZ("Select A List")."</option>\n";
$i = 0;
while ( $i < $allowed_lists_count )
+13 -5
View File
@@ -6,10 +6,11 @@
# CHANGES
# 161004-2240 - Initial Build
# 170409-1548 - Added IP List validation code
# 170819-1000 - Added allow_manage_active_lists option
#
$version = '2.14-2';
$build = '170409-1548';
$version = '2.14-3';
$build = '170819-1000';
require("dbconnect_mysqli.php");
require("functions.php");
@@ -74,7 +75,7 @@ $num_leads = preg_replace('/[^0-9]/','',$num_leads);
#############################################
##### START SYSTEM_SETTINGS LOOKUP #####
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,active_modules,admin_screen_colors FROM system_settings;";
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,active_modules,admin_screen_colors,allow_manage_active_lists FROM system_settings;";
$sys_settings_rslt=mysql_to_mysqli($sys_settings_stmt, $link);
if ($DB) {echo "$sys_settings_stmt\n";}
$num_rows = mysqli_num_rows($sys_settings_rslt);
@@ -88,6 +89,7 @@ if ($num_rows > 0)
$SSlanguage_method = $sys_settings_row[4];
$SSactive_modules = $sys_settings_row[5];
$SSadmin_screen_colors = $sys_settings_row[6];
$SSallow_manage_active_lists = $sys_settings_row[7];
}
else
{
@@ -483,7 +485,9 @@ if ($confirm == "CONFIRM")
if (($submit != "submit" ) && ($confirm != "CONFIRM"))
{
# figure out which lists they are allowed to see
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) and active = 'N' ORDER BY list_id;";
$activeSQL = "and active = 'N'";
if ($SSallow_manage_active_lists > 0) {$activeSQL = '';}
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) $activeSQL ORDER BY list_id;";
if ($DB) { echo "|$lists_stmt|\n"; }
$lists_rslt = mysql_to_mysqli($lists_stmt, $link);
$num_rows = mysqli_num_rows($lists_rslt);
@@ -515,7 +519,11 @@ if (($submit != "submit" ) && ($confirm != "CONFIRM"))
$allowed_lists_count++;
}
echo "<p>"._QXZ("This is the list merge tool. It will only work on inactive lists. It will merge an existing list into several new lists with the same options as the original list. This includes copying the customer fields from the original.")."</p>";
if ($SSallow_manage_active_lists > 0)
{echo "<p>"._QXZ("This is the list merge tool. It will merge several existing lists into a single list.")."</p>";}
else
{echo "<p>"._QXZ("This is the list merge tool. It will only work on inactive lists. It will merge several existing lists into a single list.")."</p>";}
echo "<form action=$PHP_SELF method=POST>\n";
echo "<center><table width=$section_width cellspacing=3>\n";
+13 -5
View File
@@ -10,10 +10,11 @@
# 150808-2042 - Added compatibility for custom fields data option
# 161014-0842 - Added screen colors
# 170409-1542 - Added IP List validation code
# 170819-1001 - Added allow_manage_active_lists option
#
$version = '2.14-6';
$build = '170409-1542';
$version = '2.14-7';
$build = '170819-1001';
require("dbconnect_mysqli.php");
require("functions.php");
@@ -54,7 +55,7 @@ $num_leads = preg_replace('/[^0-9]/','',$num_leads);
#############################################
##### START SYSTEM_SETTINGS LOOKUP #####
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,active_modules,admin_screen_colors FROM system_settings;";
$sys_settings_stmt = "SELECT use_non_latin,outbound_autodial_active,sounds_central_control_active,enable_languages,language_method,active_modules,admin_screen_colors,allow_manage_active_lists FROM system_settings;";
$sys_settings_rslt=mysql_to_mysqli($sys_settings_stmt, $link);
if ($DB) {echo "$sys_settings_stmt\n";}
$num_rows = mysqli_num_rows($sys_settings_rslt);
@@ -68,6 +69,7 @@ if ($num_rows > 0)
$SSlanguage_method = $sys_settings_row[4];
$SSactive_modules = $sys_settings_row[5];
$SSadmin_screen_colors = $sys_settings_row[6];
$SSallow_manage_active_lists = $sys_settings_row[7];
}
else
{
@@ -550,7 +552,9 @@ if (($submit != "submit" ) && ($confirm != "confirm"))
}
# figure out which lists they are allowed to see
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) and active = 'N' ORDER BY list_id;";
$activeSQL = "and active = 'N'";
if ($SSallow_manage_active_lists > 0) {$activeSQL = '';}
$lists_stmt = "SELECT list_id, list_name FROM vicidial_lists WHERE campaign_id IN ($allowed_campaigns_sql) $activeSQL ORDER BY list_id;";
if ($DB) { echo "|$lists_stmt|\n"; }
$lists_rslt = mysql_to_mysqli($lists_stmt, $link);
$num_rows = mysqli_num_rows($lists_rslt);
@@ -592,7 +596,11 @@ if (($submit != "submit" ) && ($confirm != "confirm"))
$max_list_id = $max_id_row[0] + 1;
}
echo "<p>"._QXZ("This is the list split tool. It will only work on inactive lists. It will split an existing list into several new lists with the same options as the original list. This includes copying the customer fields from the original.")."</p>";
if ($SSallow_manage_active_lists > 0)
{echo "<p>"._QXZ("This is the list split tool. It will split an existing list into several new lists with the same options as the original list. This includes copying the customer fields from the original.")."</p>";}
else
{echo "<p>"._QXZ("This is the list split tool. It will only work on inactive lists. It will split an existing list into several new lists with the same options as the original list. This includes copying the customer fields from the original.")."</p>";}
echo "<form action=$PHP_SELF method=POST>\n";
echo "<center><table width=$section_width cellspacing=3>\n";