From 14114b0b7f8263e0095d9dcceebe5464299eaa9e Mon Sep 17 00:00:00 2001 From: Daniel Saad Nogueira Nunes Date: Mon, 27 Mar 2023 14:43:57 -0300 Subject: Update stat.php Fixing stat.php by replacing old php charts with python3-matplotlib generated. --- src/admin/report/stat.php | 223 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 171 insertions(+), 52 deletions(-) (limited to 'src/admin/report') diff --git a/src/admin/report/stat.php b/src/admin/report/stat.php index 8a706e4..9f2ea60 100644 --- a/src/admin/report/stat.php +++ b/src/admin/report/stat.php @@ -30,20 +30,26 @@ echo "Problems"; echo "TotalAccepted"; echo "\n"; -$str="All Runs by Problem"; $str2="Accepted Runs by Problem"; -reset($d['problem']); +$color=array(); +$values_ac = array(); $cor = ""; -while (list($keya, $val) = each($d['problem'])) { +// while (list($keya, $val) = each($d['problem'])) { +foreach($d['problem'] as $keya => $val){ + $val = $d['problemyes'][$keya]; if($val=="") $val=0; + $values_ac[]="$keya:$val"; $str2 .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val; - $cor .= "-" . $d['color'][$keya]; + $cor .= $d['color'][$keya] . "\r\n"; + $color[] = "#".$d['color'][$keya]; } $cor = substr($cor,1); -reset($d['problem']); -while (list($keya, $val) = each($d['problem'])) { - $str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val; + +$values = array(); +// while (list($keya, $val) = each($d['problem'])) { +foreach($d['problem'] as $keya => $val){ + $values[] = $keya . ":" . $val; echo "$keya "; echo "\"balloon\"\n"; @@ -63,27 +69,51 @@ while (list($keya, $val) = each($d['problem'])) { } echo ""; -echo "
"; -echo "\n"; -echo "
\"\"\"\"
\n"; +$myfile = fopen("runs_by_problems.txt", "w") or die("Unable to open file runs_by_problems.txt!"); +for($i=0;$i"; +echo "\n"; +echo "\n"; +echo "
runs by problems
accepted runs by problems
"; //---------------------------------------------------------- echo "

Runs by Problem and Answer

\n"; echo "
\n"; echo ""; -reset($d['answer']); -while (list($key, $val) = each($d['answer'])) + +foreach($d['answer'] as $key => $val){ +// while (list($key, $val) = each($d['answer'])) echo ""; +} echo "\n"; -reset($d['problem']); -while (list($keya, $vala) = each($d['problem'])) { +foreach($d['problem'] as $keya => $vala){ +// while (list($keya, $vala) = each($d['problem'])) { echo ""; - reset($d['answer']); - while (list($key, $val) = each($d['answer'])) { + foreach($d['answer'] as $key => $val){ + // while (list($key, $val) = each($d['answer'])) { if(!isset($d['pa'][$keya][$key])) echo ""; else { @@ -100,19 +130,20 @@ echo "
Problems x Answers$keyTotal
$keya "; echo "\"balloon\"\n"; echo "0
"; echo "

Runs by Problem and Language

\n"; echo "
\n"; echo ""; -reset($d['language']); -while (list($key, $val) = each($d['language'])) +// while (list($key, $val) = each($d['language'])) +foreach($d['language'] as $key => $val){ echo ""; +} echo "\n"; -reset($d['problem']); -while (list($keya, $vala) = each($d['problem'])) { +foreach($d['problem'] as $keya => $vala){ +// while (list($keya, $vala) = each($d['problem'])) { echo ""; - reset($d['language']); - while (list($key, $val) = each($d['language'])) { + // while (list($key, $val) = each($d['language'])) { + foreach($d['language'] as $key => $val){ if(!isset($d['pl'][$keya][$key])) echo ""; else { @@ -137,14 +168,16 @@ echo "\n"; $str="All Runs by Language"; $str2="Accepted Runs by Language"; -reset($d['language']); -while (list($keya, $val) = each($d['language'])) { +$values = array(); +$values_ac = array(); +foreach($d['language'] as $keya => $val){ $val = $d['languageyes'][$keya]; if($val=="") $val=0; $str2 .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val; + $values_ac[] = $keya.":".$val; } -reset($d['language']); -while (list($keya, $val) = each($d['language'])) { +foreach($d['language'] as $keya => $val){ + $values[] =$keya . ":" . $val; $str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val; echo ""; echo ""; @@ -158,24 +191,62 @@ while (list($keya, $val) = each($d['language'])) { } echo "
Problems x Languages$keyTotal
$keya "; echo "\"balloon\"\n"; echo "0
$keya$val
"; +$color = array(); +$color[] = "#2cba00"; +$color[] = "#a3ff00"; +$color[] = "#fff400"; +$color[] = "#ffa700"; +$color[] = "#ff0000"; + + +$myfile = fopen("all_runs_by_language.txt", "w") or die("Unable to open file all_runs_by_language.txt!"); +for($i=0;$i"; -echo "\n"; -echo "
\"\"\"\"
\n"; +echo "all runs by language\n"; +echo "accepted runs by language\n"; +echo " "; + //---------------------------------------------------------- echo "

Runs by Language and Answer

\n"; echo "
\n"; echo ""; -reset($d['answer']); -while (list($key, $val) = each($d['answer'])) +foreach($d['answer'] as $key => $val){ +// while (list($key, $val) = each($d['answer'])) echo ""; +} echo "\n"; -reset($d['language']); -while (list($keya, $vala) = each($d['language'])) { +// while (list($keya, $vala) = each($d['language'])) { +foreach($d['language'] as $keya => $vala){ echo ""; - reset($d['answer']); - while (list($key, $val) = each($d['answer'])) { + // while (list($key, $val) = each($d['answer'])) { + foreach($d['answer'] as $key => $val){ + if(!isset($d['la'][$keya][$key])) echo ""; else { @@ -203,17 +274,36 @@ echo ""; echo "\n"; $str="All Runs by Answer"; -reset($d['answer']); -while (list($keya, $val) = each($d['answer'])) { +$values = array(); +// while (list($keya, $val) = each($d['answer'])) { +foreach($d['answer'] as $keya => $val){ $str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val; + $values[] = $keya . ":" . $val; echo ""; echo ""; echo ""; } echo "
Languages x Answers$keyTotal
$keya0Answers
$keya$val
"; -echo ""; -echo "\"\"\n"; +$color[] = "#af7f57"; +$color[] = "#ffffff"; +$myfile = fopen("all_runs_by_answer.txt", "w") or die("Unable to open file all_runs_by_answer.txt!"); +for($i=0;$i"; +echo "\n"; +echo "
all runs by answer
\n"; //---------------------------------------------------------- echo "
"; @@ -221,8 +311,9 @@ echo "
"; echo "

Runs by User and Problem

\n"; echo "
\n"; echo ""; -reset($d['problem']); -while (list($key, $val) = each($d['problem'])) { +// while (list($key, $val) = each($d['problem'])) { +foreach($d['problem'] as $key => $val){ + echo "\n"; -reset($d['username']); -while (list($keya, $vala) = each($d['username'])) { +// while (list($keya, $vala) = each($d['username'])) { +foreach($d['username'] as $keya => $vala){ + $keya = $d['username'][$keya]; if(isset($d['user'][$keya])) $vala = $d['user'][$keya]; else $vala=0; echo ""; - reset($d['problem']); - while (list($key, $val) = each($d['problem'])) { + // while (list($key, $val) = each($d['problem'])) { + foreach($d['problem'] as $key => $val){ if(!isset($d['up'][$keya][$key])) echo ""; else { @@ -285,8 +377,9 @@ $pos = 0; $res = array(); $m = 0; sort($d['timestamp']); -reset($d['timestamp']); -while (list($keya, $val) = each($d['timestamp'])) { + +foreach($d['timestamp'] as $keya => $val){ +// while (list($keya, $val) = each($d['timestamp'])) { while($atual+$passo < $val) { $atual += $passo; $pos++; @@ -299,15 +392,28 @@ while (list($keya, $val) = each($d['timestamp'])) { $str="Runs by Time Period" . chr(1) . $m; $atual=0; +$values = array(); for($pos=0; $pos<$vezes; $pos++) { if(!isset($res[$pos]) || $res[$pos]=="") $res[$pos] = 0; $q = (int) ($atual/60); $atual += $passo; $qq = (int) ($atual/60); $str .= chr(1) . $q . "-" .$qq . chr(1) . $res[$pos]; + $values[] = $res[$pos]; +} + +$myfile = fopen("runs_by_time_period.txt", "w") or die("Unable to open file runs_by_time_period.txt!"); +for($i=0;$i\"\"\n"; +shell_exec("python3 barplot.py runs_by_time_period.txt 'Runs by Time Period'"); + + +echo "
runs_by_time_period
\n"; + + //------------------------------------------------ $vezes = 30; @@ -316,28 +422,41 @@ $atual = 0; $pos = 0; $res = array(); sort($d['timestampyes']); -reset($d['timestampyes']); -while (list($keya, $val) = each($d['timestampyes'])) { +// while (list($keya, $val) = each($d['timestampyes'])) { +foreach($d['timestampyes'] as $keya => $val){ while($atual+$passo < $val) { $atual += $passo; $pos++; } - if(isset($res[$pos])) - $res[$pos]++; + if(isset($res[$pos])){ + $res[$pos]++; + } else $res[$pos]=1; } $str="Accepted Runs by Time Period" . chr(1) . $m; $atual=0; +$values_ac = array(); for($pos=0; $pos<$vezes; $pos++) { if(!isset($res[$pos]) || $res[$pos]=="") $res[$pos] = 0; $q = (int) ($atual/60); $atual += $passo; $qq = (int) ($atual/60); $str .= chr(1) . $q . "-" .$qq . chr(1) . $res[$pos]; + $values_ac[] = $res[$pos]; +} + +$myfile = fopen("accepted_runs_by_time_period.txt", "w") or die("Unable to open file accepted_runs_by_time_period.txt!"); +for($i=0;$i\"\"\n"; +shell_exec("python3 barplot.py accepted_runs_by_time_period.txt 'Accepted Runs by Time Period'"); + + +echo "
runs_by_time_period
\n"; + include("$locr/footnote.php"); ?> -- cgit v1.2.3
Users x Problems$key "; echo "\"balloon\"\n"; @@ -230,15 +321,16 @@ while (list($key, $val) = each($d['problem'])) { } echo "TotalAccepted
".$d['userfull'][$keya]."0