Ejemplo n.º 1
0
<?php

namespace Garradin;

require_once __DIR__ . '/_inc.php';
if (!in_array(Utils::get('g'), ['recettes_depenses', 'banques_caisses'])) {
    throw new UserException('Graphique inconnu.');
}
$graph = Utils::get('g');
if (Static_Cache::expired('graph_' . $graph)) {
    $stats = new Compta\Stats();
    $plot = new \KD2\SVGPlot(400, 300);
    if ($graph == 'recettes_depenses') {
        $r = new \KD2\SVGPlot_Data($stats->recettes());
        $r->title = 'Recettes';
        $d = new \KD2\SVGPlot_Data($stats->depenses());
        $d->title = 'Dépenses';
        $data = [$d, $r];
        $plot->setTitle('Recettes et dépenses de l\'exercice courant');
    } elseif ($graph == 'banques_caisses') {
        $banques = new Compta\Comptes_Bancaires();
        $data = [];
        $r = new \KD2\SVGPlot_Data($stats->soldeCompte(Compta\Comptes::CAISSE));
        $r->title = 'Caisse';
        $data[] = $r;
        foreach ($banques->getList() as $banque) {
            $r = new \KD2\SVGPlot_Data($stats->soldeCompte($banque['id']));
            $r->title = $banque['libelle'];
            $data[] = $r;
        }
        $plot->setTitle('Solde des comptes et caisses');