public function createAnonymousVisitor($contexte_creation_id) { try { // selection des rfids $rfids = Doctrine_Query::create()->from("Rfid r")->where("r.groupe_id = ?", $this->getRfidGroupeId())->execute(array(), Doctrine::HYDRATE_ARRAY); if (!empty($rfids)) { // creation d'une nouvelle visite //$collectionVisiteur = new Doctrine_Collection('Visiteur'); //$collectionVisite = new Doctrine_Collection('Visite'); foreach ($rfids as $rfid) { $visiteur = new Visiteur(); $visiteur = $visiteur->createAnonymous($contexte_creation_id); $visiteur->save(); //$collectionVisiteur->add($visiteur); $visite = new Visite(); $visite->setGuid(Guid::generate()); $visite->setGroupeId($this->guid); $visite->setNavinumId($rfid['uid']); $visite->setVisiteurId($visiteur->getGuid()); $visite->save(); //$collectionVisite->add($visite); } //$collectionVisite->save(); //$collectionVisiteur->save(); } } catch (Exception $e) { throw new sfException($e->getMessage()); } }
// Connecte le client s'il possède un cookie $tokenDAO = new TokenDAO(BDD::getInstancePDO()); if (!isset($_SESSION['user'])) { $tokenDAO->checkToken(); } // Si le client n'est pas connecté if ($_SESSION['user'] === false) { // Récupère l'id du groupe Visiteur $groupeDAO = new GroupeDAO(BDD::getInstancePDO()); $groupe = $groupeDAO->getOneByLibelle('Visiteur'); // Récupère les doits du groupe Visiteur $droitGroupeDAO = new DroitGroupeDAO(BDD::getInstancePDO()); $_SESSION['droits']['groupe'] = $droitGroupeDAO->getAllForOneGroupeTree($groupe->id_groupe); $_SESSION['droits']['membre'] = array(); } // Créé le jeton pour éviter la faille CSRF if (empty($_SESSION['jetonCSRF'])) { $_SESSION['jetonCSRF'] = hash('sha1', uniqid(rand(), true) . SALT_JETON_CSRF); } // Enregistre la visite si c'est la premiere de cette heure $visite = new Visite(array('id_visite' => DAO::UNKNOWN_ID, 'ip' => $_SERVER['REMOTE_ADDR'])); $visite->checkVisite($visite); // Récupération de l'URL $controleur = !empty($_GET['url_controleur']) ? ucfirst($_GET['url_controleur']) : 'Main'; $page = !empty($_GET['url_page']) ? $_GET['url_page'] : 'accueil'; $action = !empty($_GET['url_action']) ? $_GET['url_action'] : 'get'; $id = !empty($_GET['url_id']) ? $_GET['url_id'] : NULL; // Charge le controleur $controleur = new $controleur(); // Charge le controleur de la page demandé $controleur->chargerControleurPage($controleur, $page, $action, $id);
public function statistiques($action, $id, $vars) { switch ($action) { /**** GET ****/ case 'get': $vars['titrePage'] = 'Statistiques'; // <h1> de la page $vars['visites'] = Visite::getStat(); $vars['membres'] = Membre::getStat(); $vars['technotes'] = Technote::getStat(); $vars['commentaires'] = Commentaire::getStat(); $vars['questions'] = Question::getStat(); $vars['reponses'] = Reponse::getStat(); $vars['motsCles'] = MotCle::getStat(); $this->vue->display('admin/statistiques.twig', $vars); exit; default: $this->vue->display('404.twig', $vars); exit; } }