ACC SHELL
<?php
/**
*
*
* @version $Id$
* @copyright 2012
*/
class Playerstats {
function __construct() {
}
function fetchStat() {
return dibi::query('SELECT id_hrace, SUM(minuty) time, SUM(goly) goly, SUM(zk) zk, SUM(ck) ck FROM zapis GROUP BY id_hrace')->fetchAssoc('id_hrace');
}
function fetchStatById($id=0) {
return dibi::query('SELECT id_hrace, SUM(minuty) time, SUM(goly) goly, SUM(zk) zk, SUM(ck) ck FROM zapis WHERE id_hrace=%i', $id)->fetch();
}
/**
*
* @param int $id_sablony id tymu (A tym, B tym, Zenny, pripravka ..)
* @param bool $showStats true vraci vsechny bez ohledu na stav v db
*/
function fetchPlayersWithStat($id_sablony, $showStats=false) {
$query = 'SELECT a.id, a.jmeno, a.prijmeni, a.rok_narozeni, a.fotografie, a.stav,a.statistika,
c.nazev nazev_hodnoty, b.id_hodnoty_parametru, b.id_parametru,
IFNULL(SUM(d.minuty),0) time, IFNULL(SUM(d.goly),0) goly, IFNULL(SUM(d.zk),0) zk, IFNULL(SUM(d.ck),0) ck
FROM katalog a
LEFT JOIN katalog_parametry b
ON a.id=b.id_katalog
LEFT JOIN parametry_hodnoty c
ON c.id=b.id_hodnoty_parametru
LEFT JOIN zapis d ON d.id_hrace = a.id
WHERE';
if ($showStats == false) {
$query .= ' a.statistika=1 AND ';
}
$query .= ' a.id_kategorie='. $id_sablony. ' GROUP BY a.id';
$pole = dibi::query($query)->fetchAll();
$id = 0;
$item = '';
foreach ($pole as $value) {
if ($id != $value->id) {
$item[$value->id]['id'] = $value->id;
$item[$value->id]['jmeno'] = $value->jmeno;
$item[$value->id]['prijmeni'] = $value->prijmeni;
$item[$value->id]['rok_narozeni'] = $value->rok_narozeni;
$item[$value->id]['fotografie'] = $value->fotografie;
$item[$value->id]['stav'] = $value->stav;
$item[$value->id]['statistika'] = $value->statistika;
$item[$value->id]['parametr'][$value->id_parametru] = $value->nazev_hodnoty;
$item[$value->id]['time'] = $value->time;
$item[$value->id]['goly'] = $value->goly;
$item[$value->id]['ck'] = $value->ck;
$item[$value->id]['zk'] = $value->zk;
$id = $value->id;
} else {
$item[$value->id]['parametr'][$value->id_parametru] = $value->nazev_hodnoty;
}
}
return $item;
}
}
?>
ACC SHELL 2018