Subversion Repositories Applications.gtt

Rev

Rev 10 | Rev 46 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
10 jpm 1
<?php
2
require_once GTT_CHEMIN_METIER.'Projet.class.php';
3
require_once GTT_CHEMIN_METIER.'ProjetCategorie.class.php';
4
require_once GTT_CHEMIN_METIER.'UtilisateurAProjet.class.php';
5
 
11 jpm 6
class GttCtrlActionPreferences extends aControlleurAction {
10 jpm 7
 
11 jpm 8
    public function __construct(Registre $Registre)
10 jpm 9
    {
11 jpm 10
    	$Registre->ajouterEspace('Preferences', 'preferences');
11
    	$Registre->ajouterSquelette('preferences', 'preferences.tpl.html');
10 jpm 12
    }
13
 
11 jpm 14
    public function executer()
10 jpm 15
    {
16
    	$aso_preferences = array();
11 jpm 17
    	$this->getRegistre()->setTitre('Modifier mes préférences');
10 jpm 18
    	$Projet = new Projet();
19
    	$tab_projets = $Projet->consulter(Projet::GP_TOUS);
20
    	$aso_preferences['nbre_projets'] = count($tab_projets);
21
		// Parcourt du tableau de projets
22
    	foreach ($tab_projets as $Projet) {
23
			// Vérification de la présence du projet dans les préférences de l'utilisateur
24
			$UtilisateurAProjet = new UtilisateurAProjet();
25
			$cmd = UtilisateurAProjet::GUAP_ID;
26
			$param = array($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur(), $Projet->getIdProjet());
27
			$coche = false;
28
			if ($present = $UtilisateurAProjet->consulter($cmd, $param)) {
29
				$coche = true;
30
			}
31
 
32
			// Récupération de la catégorie du projet
33
			$ProjetCategorie = new ProjetCategorie();
34
			$cmd = ProjetCategorie::GPC_ID;
35
			$param = $Projet->getCeCategorie();
36
			$Categorie = $ProjetCategorie->consulter($cmd, $param);
37
 
38
			// Récupération de toutes les infos
39
			$aso_preferences['preferences'][$Categorie->getLibelle()][] = array(
40
				'id' => $Projet->getIdProjet(),
41
				'valeur' => $Projet->getIdProjet(),
42
				'nom' => $Projet->getNomProjet(),
43
				'coche' => $coche);
44
    	}
45
    	ksort($aso_preferences['preferences']);
46
    	//echo '<pre>'.print_r($aso_preferences, true).'</pre>';
11 jpm 47
		$this->getRegistre()->ajouterDonnee('preferences', $aso_preferences);
10 jpm 48
    }
49
 
11 jpm 50
    public function executerValider()
10 jpm 51
    {
52
    	// Mise à jour des Préférences
53
    	$UtilisateurAProjet = new UtilisateurAProjet();
54
    	$UtilisateurAProjet->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
55
    	$UtilisateurAProjet->supprimer();
56
    	//echo '<pre>'.print_r($_POST, true).'</pre>';
57
    	foreach ($_POST['pr'] as $pr_id) {
58
    		$UtilisateurAProjet = new UtilisateurAProjet();
59
			$UtilisateurAProjet->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
60
			$UtilisateurAProjet->setIdProjet($pr_id);
61
			$UtilisateurAProjet->ajouter();
62
    	}
63
 
64
    	// Action suivante
65
    	$this->setSuivant('__defaut__');
66
    }
67
}
68
?>