Subversion Repositories Applications.gtt

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
10 jpm 1
<?php
2
require_once GTT_CHEMIN_CLASSE.'Calendrier.class.php';
3
class GttActionGestion extends aAction {
4
 
5
	public function __construct()
6
    {
7
    	print_r($this->getResultat());
8
    	$Resultats = $this->getResultat();
9
    	$Resultats->ajouterEspace('Gestion', 'gestion');
10
    	$Resultats->ajouterSquelette('gestion', 'gestion.tpl.html');
11
    }
12
    public function verifier(Resultat $Resultat)
13
    {
14
 
15
    }
16
 
17
    public function executer(Resultat $Resultat)
18
    {
19
    	$aso_gestion = array();
20
    	$Resultat->setTitre('Gérer son temps');
21
 
22
		require_once GTT_CHEMIN_PEAR.'Calendar/Month/Weeks.php';
23
		require_once GTT_CHEMIN_PEAR.'Calendar/Day.php';
24
 
25
		// Initialisation des variables pour le calendrier
26
		if (!isset($_GET['annee'])) {
27
			$_GET['annee'] = date('Y');
28
		}
29
		if (!isset($_GET['mois'])) {
30
			$_GET['mois'] = date('mois');
31
		}
32
		if (!isset($_GET['jour'])) {
33
			$_GET['jour'] = date('jour');
34
		}
35
 
36
		// Construction de l'objet mois
37
		$Month = new Calendar_Month_Weeks($_GET['annee'], $_GET['mois']);
38
 
39
		// Create an array of days which are "selected"
40
		// Used for Week::build() below
41
		$aso_gestion['selectedDays'] = array (
42
    		//new Calendar_Day($_GET['annee'], $_GET['mois'], $_GET['jour']),
43
    		//new Calendar_Day($_GET['annee'], 12, 25),
44
    		new Calendar_Day(date('Y'), date('m'), date('d')),
45
    	);
46
 
47
		// Instruct month to build Week objects
48
		$Month->build();
49
		$aso_gestion['mois_courant_nom'] = date('F Y', $Month->getTimeStamp());;
50
		$semaine = 0;
51
		while ($Week = $Month->fetch()) {
52
			$Week->build($aso_gestion['selectedDays']);
53
			while ($Day = $Week->fetch()) {
54
				$element = array();
55
				$element['annee'] = $Day->thisYear();
56
				$element['mois'] = $Day->thisMonth();
57
				$element['jour'] = $Day->thisDay();
58
				// Check to see if day is selected
59
				if ($Day->isSelected()) {
60
					$element['class'] = 'selected';
61
				} else if ($Day->isEmpty()) {
62
					$element['class'] = 'empty';
63
				} else {
64
					$element['class'] = 'courrant';
65
				}
66
				$aso_gestion['elements'][$semaine][] = $element;
67
			}
68
			$semaine++;
69
		}
70
 
71
		// Construction de l'url pour les mois précédent/suivant
72
		$PMonth = $Month->prevMonth('object');
73
		$aso_gestion['url_mois_precedent'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$PMonth->thisYear().'&amp;mois='.$PMonth->thisMonth().'&amp;jour='.$PMonth->thisDay();
74
		$NMonth = $Month->nextMonth('object');
75
		$aso_gestion['url_mois_suivant'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$NMonth->thisYear().'&amp;mois='.$NMonth->thisMonth().'&amp;jour='.$NMonth->thisDay();
76
 
77
		// Construction de l'url pour les semaines précédente/suivante
78
		$Week = new Calendar_Week($_GET['annee'], $_GET['mois'], $_GET['jour']);
79
		$PWeek = $Week->prevWeek('object');
80
		$aso_gestion['url_semaine_precedente'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$PWeek->thisYear().'&amp;mois='.$PWeek->thisMonth().'&amp;semaine='.$PWeek->thisWeek('n_in_year').'&amp;jour='.$PWeek->thisDay();
81
		$NWeek = $Week->nextWeek('object');
82
		$aso_gestion['url_semaine_suivante'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$NWeek->thisYear().'&amp;mois='.$NWeek->thisMonth().'&amp;semaine='.$NWeek->thisWeek('n_in_year').'&amp;jour='.$NWeek->thisDay();
83
 
84
 
85
    	//echo '<pre>'.print_r($aso_gestion, true).'</pre>';
86
		$Resultat->ajouterDonnee('gestion', $aso_gestion);
87
    }
88
}
89
?>