extranet/www/pages/synthese_perso_img.php

124 lines
3.1 KiB
PHP

<?php
# Initialisation de l'objet graphperso si nécessaire
if (!isset($_SESSION['graphperso'])) {
$_SESSION['graphperso'] = new Graphperso;
}
switch($_REQUEST['mode']) {
case "ajoute" :
// Si l'element n'existe pas on l'ajoute si non on ne fait rien.
if (!array_key_exists($_REQUEST['evol'], $_SESSION['graphperso']->libelles)) {
$_SESSION['graphperso']->ajout( $_REQUEST['libelle']
, $_REQUEST['datecloture']
, $_REQUEST['dateduree']
, $_REQUEST['chiffre']
, $_REQUEST['evol']
, $_REQUEST['color']
, $_REQUEST['style']);
}
break;
case "enleve" :
// Si l'element existe on le supprime si non on ne fait rien.
if (array_key_exists($_REQUEST['evol'], $_SESSION['graphperso']->libelles)) {
$_SESSION['graphperso']->enleve($_REQUEST['evol']);
}
affiche_message();
break;
case "vide" :
if ($_SESSION['graphperso']->cnt > 0) { // Si le nombre d'elements et > à 0
$_SESSION['graphperso']->init(); // On vide le graphe
}
if(isset($_SESSION['imgcache'])) { // Si la session exite
if ((file_exists(PATH_SITE.'/cache/imgcache/'.$_SESSION['imgcache']))) { // Si le fichier existe
@unlink(PATH_SITE.'/cache/imgcache/'.$_SESSION['imgcache']); // On supprime le fichier
}
unset($_SESSION['imgcache']); // On détruit la session
}
affiche_message();
break;
}
/********************************************
* Fonctions *
********************************************/
// Donne un nom unique
function uniq_name($file_name) {
// Recupere l'extension du fichier et le nom du fichier
list($base, $ext) = explode(".", $file_name);
// Genere un nom pour stocker le fichier
$name = uniqid($base."_")."_".date(YmdHi);
$store_name = $name.".".$ext;
return $store_name;
}
function vb(&$var, $default="") { // Variable blanche
// if $var n'est pas défini, retourne $default, sinon retourne $var
return isset($var) ? $var : $default;
}
// Affiche message d'information
function affiche_message() {
if($_SESSION['graphperso']->cnt <= 0) {
echo "2Bla bla bla bla bla bla bla bla bla bla bla bla.";
exit;
}
}
$TabColor = array('000000' => 0x000000
, 'ff0000' => 0xff0000
, '3333ff' => 0x3333ff
, '808080' => 0x808080
, '333366' => 0x333366
, 'c3c3e6' => 0xc3c3e6
, '8080ff' => 0x8080ff
, '80ff80' => 0x80ff80
, 'ff8080' => 0xff8080);
require_once "phpchartdir/phpchartdir.php";
require_once "Graph_Step_Line.php";
ob_start();
$cacheImage = uniq_name("synthese_perso_img_".$_REQUEST['siret'].".png");
if ((file_exists(PATH_SITE.'/cache/imgcache/'.$_SESSION['imgcache']))) {
@unlink(PATH_SITE.'/cache/imgcache/'.$_SESSION['imgcache']);
}
# output the chart
header("Content-type: image/png");
print($c->makeChart2(PNG));
$content = ob_get_contents();
ob_end_clean();
file_put_contents(PATH_SITE.'/cache/imgcache/'.$cacheImage,$content);
echo '<img src="image.php?q='.$cacheImage.'" />';
$_SESSION['imgcache'] = $cacheImage;
?>