first commit
This commit is contained in:
41
pages/doppelklinge.page.php
Normal file
41
pages/doppelklinge.page.php
Normal file
@ -0,0 +1,41 @@
|
||||
<?php
|
||||
$tpl['file'] = 'doppelklinge.html';
|
||||
$tpl['data'] = [];
|
||||
|
||||
$progress = !empty($_POST['progress']) ? $_POST['progress'] : '';
|
||||
|
||||
if(!empty($progress)) {
|
||||
$list = [];
|
||||
preg_match_all("/(?<task>.*): (?<act>.*) \/ (?<max>.*)/m", $progress, $tmp);
|
||||
|
||||
for($i = 0; $i < count($tmp[0]); $i++) {
|
||||
$list[$i] = (object)[
|
||||
'task' => trim($tmp['task'][$i]),
|
||||
'act' => (int)str_replace('.', '', $tmp['act'][$i]),
|
||||
'max' => (int)str_replace('.', '', $tmp['max'][$i])
|
||||
];
|
||||
$list[$i]->percent = round($list[$i]->act / $list[$i]->max * 100, 2);
|
||||
}
|
||||
|
||||
usort($list, function($a, $b) { return $b->percent <=> $a->percent; });
|
||||
|
||||
$act = $max = $avg = 0;
|
||||
for($i = 0; $i < 5; $i++) {
|
||||
$act += $list[$i]->act;
|
||||
$max += $list[$i]->max;
|
||||
$avg += $list[$i]->percent;
|
||||
}
|
||||
$percent = round($act / $max * 100, 2);
|
||||
|
||||
$tpl['data'] = [
|
||||
'progress' => $progress,
|
||||
'list' => $list,
|
||||
'percent' => $percent,
|
||||
'avg' => round($avg / 5, 2)
|
||||
];
|
||||
}
|
||||
else {
|
||||
$tpl['data'] = [
|
||||
'progress' => ''
|
||||
];
|
||||
}
|
Reference in New Issue
Block a user