芝麻web文件管理V1.00
编辑当前文件:/home/prismawe/www/resuamer/site/application/classes/controller/goodies/questioncandidat.php
tpl = & $this->template; } public function action_index(){ $this->template = View::factory('goodies/questioncandidat/index'); } public function action_questions() { Controller_Language::set($this); $nbQuestions = $this->request->param('id'); $nbQuestionsArray = array('5', '10', '20'); if(!in_array($nbQuestions, $nbQuestionsArray)){ $nbQuestions = 20; } //id des candidats : $romney = ORM::factory('candidat', 1); $obama = ORM::factory('candidat', 2); //on récupère des propositions au hazard $propositions = ORM::factory('proposition') ->where('candidat_id', '=', $romney->getId()) ->or_where('candidat_id', '=', $obama->getId()) ->order_by(DB::expr('RAND()')) ->find_all($nbQuestions); $this->tpl->data = View::factory('goodies/questioncandidat/questions'); $this->tpl->data->propositions = $propositions; } public function action_save(){ $erreur = array(); $saveArray = $this->request->post('propositions'); //$saveArray = explode(';', $saveArray); foreach($saveArray as $proposition_id=>$voteValue){ $proposition = ORM::factory('proposition', $proposition_id); if($proposition->loaded()){ $lang = $this->request->param('lang'); $lang = ORM::factory('lang')->where('name', '=', $lang)->find(); if(!$lang->loaded()){ $lang = ORM::factory('lang')->where('name', '=', 'en')->find(); } $ipCrypt = hash('sha256', $_SERVER['REMOTE_ADDR']); $vote = ORM::factory('vote') ->where('proposition_id', '=', $proposition->getId()) ->and_where('ip', '=', $ipCrypt) ->find(); if(!$vote->loaded()){ $vote = ORM::factory('vote'); $vote->setIp($ipCrypt); $vote->setProposition_id($proposition->getId()); } $vote->setLang_id($lang->getId()); $vote->setValue(($voteValue == 'true')? true : false); $vote->save(); }else{ $erreur[] = 'La proposition n\'existe pas.'; } } $this->tpl->errors = $erreur; } }