<?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;
?>