Subversion Repositories Applications.gtt

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

<?php
require_once GTT_CHEMIN_CLASSE.'Calendrier.class.php';
class GttActionGestion extends aAction {

        public function __construct()
    {
        print_r($this->getResultat());
        $Resultats = $this->getResultat();
        $Resultats->ajouterEspace('Gestion', 'gestion');
        $Resultats->ajouterSquelette('gestion', 'gestion.tpl.html');
    }
    public function verifier(Resultat $Resultat)
    {
        
    }
    
    public function executer(Resultat $Resultat)
    {
        $aso_gestion = array();
        $Resultat->setTitre('Gérer son temps');
        
                require_once GTT_CHEMIN_PEAR.'Calendar/Month/Weeks.php';
                require_once GTT_CHEMIN_PEAR.'Calendar/Day.php';

                // Initialisation des variables pour le calendrier
                if (!isset($_GET['annee'])) {
                        $_GET['annee'] = date('Y');
                }
                if (!isset($_GET['mois'])) {
                        $_GET['mois'] = date('mois');
                }
                if (!isset($_GET['jour'])) {
                        $_GET['jour'] = date('jour');
                }

                // Construction de l'objet mois
                $Month = new Calendar_Month_Weeks($_GET['annee'], $_GET['mois']);
                
                // Create an array of days which are "selected"
                // Used for Week::build() below
                $aso_gestion['selectedDays'] = array (
                //new Calendar_Day($_GET['annee'], $_GET['mois'], $_GET['jour']),
                //new Calendar_Day($_GET['annee'], 12, 25),
                new Calendar_Day(date('Y'), date('m'), date('d')),
        );
                
                // Instruct month to build Week objects
                $Month->build();
                $aso_gestion['mois_courant_nom'] = date('F Y', $Month->getTimeStamp());;
                $semaine = 0;
                while ($Week = $Month->fetch()) {
                        $Week->build($aso_gestion['selectedDays']);
                        while ($Day = $Week->fetch()) {
                                $element = array();
                                $element['annee'] = $Day->thisYear();
                                $element['mois'] = $Day->thisMonth();
                                $element['jour'] = $Day->thisDay();
                                // Check to see if day is selected
                                if ($Day->isSelected()) {
                                        $element['class'] = 'selected';
                                } else if ($Day->isEmpty()) {
                                        $element['class'] = 'empty';
                                } else {
                                        $element['class'] = 'courrant';
                                }
                                $aso_gestion['elements'][$semaine][] = $element;
                        }
                        $semaine++;
                }
                
                // Construction de l'url pour les mois précédent/suivant
                $PMonth = $Month->prevMonth('object');
                $aso_gestion['url_mois_precedent'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$PMonth->thisYear().'&amp;mois='.$PMonth->thisMonth().'&amp;jour='.$PMonth->thisDay();
                $NMonth = $Month->nextMonth('object');
                $aso_gestion['url_mois_suivant'] = 'index.php?action='.GTT_ACTION_GESTION.'&amp;annee='.$NMonth->thisYear().'&amp;mois='.$NMonth->thisMonth().'&amp;jour='.$NMonth->thisDay();

                // Construction de l'url pour les semaines précédente/suivante
                $Week = new Calendar_Week($_GET['annee'], $_GET['mois'], $_GET['jour']);
                $PWeek = $Week->prevWeek('object');
                $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();
                $NWeek = $Week->nextWeek('object');
                $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();

                
        //echo '<pre>'.print_r($aso_gestion, true).'</pre>';
                $Resultat->ajouterDonnee('gestion', $aso_gestion);
    }
}
?>