Пример #1
0
 /**
  * Retourne la liste des scénarios dont l'utilisateur est ayant droit.
  *
  * @param EiUser $user
  * @return array|null
  */
 public function getScenariosFromUser(EiUser $user)
 {
     // On définit la liste qui sera retournée à null.
     $liste = null;
     // On définit la requête SQL qui va interroger la base de données afin de récupérer les scénarios visibles par
     // l'utilisateur.
     $query = "\n                SELECT *\n                FROM ei_scenario\n                WHERE (project_ref, project_id) IN (\n                    SELECT project_ref, project_id\n                    FROM ei_project_user\n                    WHERE user_ref = " . $user->getRefId() . "\n                    AND user_id = " . $user->getUserId() . "\n                );\n        ";
     // On récupère sous forme de tableau les scénarios.
     $scenarios = Doctrine_Manager::getInstance()->getCurrentConnection()->fetchAll($query);
     // Si le nombre de scénarios est supérieur à zéro, on crée les objets associés.
     if (count($scenarios) > 0) {
         foreach ($scenarios as $scenarioArray) {
             $temp = new EiScenario();
             $temp->setArray($scenarioArray);
             $liste[] = $temp;
         }
     }
     return $liste;
 }