From 57a56608a34c8a02aa578c9602c67ae27440ba72 Mon Sep 17 00:00:00 2001 From: mattf Date: Fri, 15 Sep 2006 14:19:07 +0000 Subject: [PATCH] fixed more illegal division by zero bugs in AST_CLOSERstats.php and AST_VDADstats.php scripts git-svn-id: svn://192.168.202.10@284 3d104415-ff17-0410-8863-d5cf3c621b8a --- .../trunk/www/vicidial/AST_CLOSERstats.php | 69 +++++++++++++----- agc_2-X/trunk/www/vicidial/AST_VDADstats.php | 70 ++++++++++++++----- 2 files changed, 104 insertions(+), 35 deletions(-) diff --git a/agc_2-X/trunk/www/vicidial/AST_CLOSERstats.php b/agc_2-X/trunk/www/vicidial/AST_CLOSERstats.php index 711d0911..a63bf307 100644 --- a/agc_2-X/trunk/www/vicidial/AST_CLOSERstats.php +++ b/agc_2-X/trunk/www/vicidial/AST_CLOSERstats.php @@ -113,9 +113,14 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $TOTALcalls = sprintf("%10s", $row[0]); -$average_hold_seconds = ($row[1] / $row[0]); -$average_hold_seconds = round($average_hold_seconds, 0); -$average_hold_seconds = sprintf("%10s", $average_hold_seconds); +if ( ($row[0] < 1) or ($row[1] < 1) ) + {$average_hold_seconds = ' 0';} +else + { + $average_hold_seconds = ($row[1] / $row[0]); + $average_hold_seconds = round($average_hold_seconds, 0); + $average_hold_seconds = sprintf("%10s", $average_hold_seconds); + } echo "Total Calls placed from this Campaign: $TOTALcalls\n"; echo "Average Call Length for all Calls: $average_hold_seconds seconds\n"; @@ -129,8 +134,13 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $DROPcalls = sprintf("%10s", $row[0]); -$DROPpercent = (($DROPcalls / $TOTALcalls) * 100); -$DROPpercent = round($DROPpercent, 0); +if ( ($DROPcalls < 1) or ($TOTALcalls < 1) ) + {$DROPpercent = '0';} +else + { + $DROPpercent = (($DROPcalls / $TOTALcalls) * 100); + $DROPpercent = round($DROPpercent, 0); + } if ( ($row[0] < 1) or ($row[1] < 1) ) {$average_hold_seconds = ' 0';} @@ -153,16 +163,31 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $QUEUEcalls = sprintf("%10s", $row[0]); -$QUEUEpercent = (($QUEUEcalls / $TOTALcalls) * 100); -$QUEUEpercent = round($QUEUEpercent, 0); +if ( ($QUEUEcalls < 1) or ($TOTALcalls < 1) ) + {$QUEUEpercent = '0';} +else + { + $QUEUEpercent = (($QUEUEcalls / $TOTALcalls) * 100); + $QUEUEpercent = round($QUEUEpercent, 0); + } -$average_queue_seconds = ($row[1] / $row[0]); -$average_queue_seconds = round($average_queue_seconds, 2); -$average_queue_seconds = sprintf("%10.2f", $average_queue_seconds); +if ( ($row[0] < 1) or ($row[1] < 1) ) + {$average_queue_seconds = ' 0';} +else + { + $average_queue_seconds = ($row[1] / $row[0]); + $average_queue_seconds = round($average_queue_seconds, 2); + $average_queue_seconds = sprintf("%10.2f", $average_queue_seconds); + } -$average_total_queue_seconds = ($row[1] / $TOTALcalls); -$average_total_queue_seconds = round($average_total_queue_seconds, 2); -$average_total_queue_seconds = sprintf("%10.2f", $average_total_queue_seconds); +if ( ($TOTALcalls < 1) or ($row[1] < 1) ) + {$average_total_queue_seconds = ' 0';} +else + { + $average_total_queue_seconds = ($row[1] / $TOTALcalls); + $average_total_queue_seconds = round($average_total_queue_seconds, 2); + $average_total_queue_seconds = sprintf("%10.2f", $average_total_queue_seconds); + } echo "Total Calls That entered Queue: $QUEUEcalls $QUEUEpercent%\n"; echo "Average QUEUE Length for queue calls: $average_queue_seconds seconds\n"; @@ -293,8 +318,13 @@ while ($i <= 96) $h++; } -$hour_multiplier = (100 / $hi_hour_count); -#$hour_multiplier = round($hour_multiplier, 0); +if ($hi_hour_count < 1) + {$hour_multiplier = 0;} +else + { + $hour_multiplier = (100 / $hi_hour_count); + #$hour_multiplier = round($hour_multiplier, 0); + } echo "\n"; echo "GRAPH IN 15 MINUTE INCREMENTS OF TOTAL CALLS PLACED FROM THIS CAMPAIGN\n"; @@ -307,8 +337,13 @@ while ($k <= 102) if ($Mk >= 5) { $Mk=0; - $scale_num=($k / $hour_multiplier); - $scale_num = round($scale_num, 0); + if ( ($k < 1) or ($hour_multiplier < 1) ) + {$scale_num = 100;} + else + { + $scale_num=($k / $hour_multiplier); + $scale_num = round($scale_num, 0); + } $LENscale_num = (strlen($scale_num)); $k = ($k + $LENscale_num); $call_scale .= "$scale_num"; diff --git a/agc_2-X/trunk/www/vicidial/AST_VDADstats.php b/agc_2-X/trunk/www/vicidial/AST_VDADstats.php index 9ac17006..58fc0328 100644 --- a/agc_2-X/trunk/www/vicidial/AST_VDADstats.php +++ b/agc_2-X/trunk/www/vicidial/AST_VDADstats.php @@ -114,10 +114,14 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $TOTALcalls = sprintf("%10s", $row[0]); -$average_hold_seconds = ($row[1] / $row[0]); -$average_hold_seconds = round($average_hold_seconds, 0); -$average_hold_seconds = sprintf("%10s", $average_hold_seconds); - +if ( ($row[0] < 1) or ($row[1] < 1) ) + {$average_hold_seconds = ' 0';} +else + { + $average_hold_seconds = ($row[1] / $row[0]); + $average_hold_seconds = round($average_hold_seconds, 0); + $average_hold_seconds = sprintf("%10s", $average_hold_seconds); + } echo "Total Calls placed from this Campaign: $TOTALcalls\n"; echo "Average Call Length for all Calls in seconds: $average_hold_seconds\n"; @@ -130,12 +134,22 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $DROPcalls = sprintf("%10s", $row[0]); -$DROPpercent = (($DROPcalls / $TOTALcalls) * 100); -$DROPpercent = round($DROPpercent, 0); +if ( ($DROPcalls < 1) or ($TOTALcalls < 1) ) + {$DROPpercent = '0';} +else + { + $DROPpercent = (($DROPcalls / $TOTALcalls) * 100); + $DROPpercent = round($DROPpercent, 0); + } -$average_hold_seconds = ($row[1] / $row[0]); -$average_hold_seconds = round($average_hold_seconds, 0); -$average_hold_seconds = sprintf("%10s", $average_hold_seconds); +if ( ($row[0] < 1) or ($row[1] < 1) ) + {$average_hold_seconds = ' 0';} +else + { + $average_hold_seconds = ($row[1] / $row[0]); + $average_hold_seconds = round($average_hold_seconds, 0); + $average_hold_seconds = sprintf("%10s", $average_hold_seconds); + } echo "Total DROP Calls: $DROPcalls $DROPpercent%\n"; echo "Average Length for DROP Calls in seconds: $average_hold_seconds\n"; @@ -149,12 +163,22 @@ if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $NAcalls = sprintf("%10s", $row[0]); -$NApercent = (($NAcalls / $TOTALcalls) * 100); -$NApercent = round($NApercent, 0); +if ( ($NAcalls < 1) or ($TOTALcalls < 1) ) + {$NApercent = '0';} +else + { + $NApercent = (($NAcalls / $TOTALcalls) * 100); + $NApercent = round($NApercent, 0); + } -$average_na_seconds = ($row[1] / $row[0]); -$average_na_seconds = round($average_na_seconds, 0); -$average_na_seconds = sprintf("%10s", $average_na_seconds); +if ( ($row[0] < 1) or ($row[1] < 1) ) + {$average_na_seconds = ' 0';} +else + { + $average_na_seconds = ($row[1] / $row[0]); + $average_na_seconds = round($average_na_seconds, 0); + $average_na_seconds = sprintf("%10s", $average_na_seconds); + } echo "Total NA calls -Busy,Disconnect,BTvoicemail: $NAcalls $NApercent%\n"; echo "Average Call Length for NA Calls in seconds: $average_na_seconds\n"; @@ -284,8 +308,13 @@ while ($i <= 96) $h++; } -$hour_multiplier = (100 / $hi_hour_count); -#$hour_multiplier = round($hour_multiplier, 0); +if ($hi_hour_count < 1) + {$hour_multiplier = 0;} +else + { + $hour_multiplier = (100 / $hi_hour_count); + #$hour_multiplier = round($hour_multiplier, 0); + } echo "\n"; echo "GRAPH IN 15 MINUTE INCREMENTS OF TOTAL CALLS PLACED FROM THIS CAMPAIGN\n"; @@ -298,8 +327,13 @@ while ($k <= 102) if ($Mk >= 5) { $Mk=0; - $scale_num=($k / $hour_multiplier); - $scale_num = round($scale_num, 0); + if ( ($k < 1) or ($hour_multiplier < 1) ) + {$scale_num = 100;} + else + { + $scale_num=($k / $hour_multiplier); + $scale_num = round($scale_num, 0); + } $LENscale_num = (strlen($scale_num)); $k = ($k + $LENscale_num); $call_scale .= "$scale_num";