Ejemplo n.º 1
0
 public function add_comment($post)
 {
     $post = $this->getPost($post);
     $anonymous = $this->user->isLoggedIn() ? '' : '_anonymous';
     $validator = models\Comment::validator('add' . $anonymous);
     //echo '<pre>';
     //print_r($validator); exit;
     if (!empty($_POST)) {
         if ($validator->validate($_POST, $context)) {
             $insert = $validator->output;
             if (!$this->user->isLoggedIn() && isset($context['user'])) {
                 $this->user->login($context['user']);
             }
             //print_r($insert); print_r($context); exit;
             $insert['post_id'] = $post->post_id;
             $insert['created_on'] = time();
             $insert['created_by_ip'] = $_SERVER['REMOTE_ADDR'];
             //print_r($insert); exit;
             try {
                 $cid = models\Comment::insert($insert);
                 //var_dump($cid); exit;
                 $comment = models\Comment::get($cid);
                 //print_r($comment); exit;
                 Session::success('Comment created');
                 $this->_redirect($comment->url());
             } catch (\Exception $ex) {
                 Session::error('Didn\'t save... Try again!?');
             }
         } else {
             Session::error('See input errors below:');
         }
     }
     $messages = Session::messages();
     return $this->tpl->display('blog/comment_form', get_defined_vars());
 }