Beispiel #1
0
$days = array();
$days_max = 0;
$users = array();
while ($row = $result->fetch()) {
    $users[$row['up_name']][$row['day']] = (int) $row['num_actions'];
    $days[$row['day']] = (isset($days[$row['day']]) ? (int) $days[$row['day']] : 0) + (int) $row['num_actions'];
    $days_max = max($days_max, $row['num_actions']);
}
// sorter statistikk
$stats = array();
foreach ($days as $day => $total) {
    foreach ($users as $user => $user_days) {
        $stats[$user][$day] = isset($user_days[$day]) ? $user_days[$day] : 0;
    }
}
$ofc = new OFC();
$c = new OFC_Colours();
$ofc->title(new OFC_Title("Aktivitet i crewloggen"));
$ofc->tooltip()->title("font-size: 13px;font-weight:bold");
foreach ($stats as $user => $days) {
    $bar = new OFC_Charts_Line();
    $bar->dot_style()->type("solid-dot")->dot_size(3)->halo_size(2)->tip("Antall registreringer #x_label# for {$user}: #val#");
    $bar->text($user);
    $bar->values(array_values($days));
    $bar->colour($c->pick());
    $ofc->add_element($bar);
}
$ofc->axis_x()->label()->rotate(340)->labels(array_keys($days))->steps(5);
$ofc->axis_y()->set_numbers(0, min(20, $days_max));
$ofc->dark_colors();
$ofc->dump();
Beispiel #2
0
    if ($day == $today) {
        break;
    }
}
$result = \Kofradia\DB::get()->query("SELECT DATE(FROM_UNIXTIME(up_created_time)) day, COUNT(up_id) count FROM users_players WHERE up_created_time >= {$expire} GROUP BY DATE(FROM_UNIXTIME(up_created_time))");
while ($row = $result->fetch()) {
    $stats_new[$row['day']] = (int) $row['count'];
}
$result = \Kofradia\DB::get()->query("SELECT DATE(FROM_UNIXTIME(up_deactivated_time)) day, COUNT(up_id) count FROM users_players WHERE up_deactivated_time >= {$expire} GROUP BY DATE(FROM_UNIXTIME(up_deactivated_time))");
while ($row = $result->fetch()) {
    $stats_die[$row['day']] = (int) $row['count'];
}
$ofc = new OFC();
$ofc->title(new OFC_Title("Antall spillere"));
$ofc->tooltip()->title("font-size: 13px;font-weight:bold");
$bar = new OFC_Charts_Line();
$bar->dot_style()->type("solid-dot")->dot_size(3)->halo_size(2)->tip("#x_label#<br>#val# nye brukere");
$bar->text("Antall nye spillere");
$bar->values(array_values($stats_new));
$bar->colour(OFC_Colours::$colours[0]);
$ofc->add_element($bar);
$bar = new OFC_Charts_Line();
$bar->dot_style()->type("solid-dot")->dot_size(3)->halo_size(2)->tip("#x_label#<br>#val# døde brukere");
$bar->text("Antall døde spillere");
$bar->values(array_values($stats_die));
$bar->colour(OFC_Colours::$colours[1]);
$ofc->add_element($bar);
$ofc->axis_x()->label()->steps(2)->rotate(330)->labels(array_keys($stats_new));
$ofc->axis_y()->set_numbers(0, max(max($stats_new), max($stats_die)));
$ofc->dark_colors();
$ofc->dump();
Beispiel #3
0
 /**
  * Opprett OFC-linje
  */
 protected function stats_ofc_line($ofc, $text, $tip, $values, $color)
 {
     $bar = new OFC_Charts_Line();
     $bar->text($text);
     $bar->dot_style()->type("solid-dot")->dot_size(3)->halo_size(2)->tip($tip);
     $bar->values($values);
     $bar->colour($color);
     $ofc->add_element($bar);
 }