예제 #1
0
 public function renderComment(Comment $comm, $template)
 {
     $vars = array('id' => $comm->getId(), 'username' => $comm->getUsername(), 'text' => $comm->getText(), 'date' => date('j.m.Y H:i', $comm->getDate()), 'ip' => $comm->getIpAddress());
     $user = FrontController::getUser();
     $config = FrontController::$config;
     if (in_array($this->_user->user_group, $config['moder_groups']) || in_array($this->_user->user_id, $config['moders']) || ($user->user_id == $comm->getUserId() && $comm->getUserId() || $user->ip_address == $comm->getIpAddress() && $comm->getDate() > time() - $config['owner_comment_del_time'])) {
         $blocks['perm_del'] = true;
     }
     return $this->render($template, $vars, $blocks);
 }
예제 #2
0
 public function onDispatch(FrontController $sender, $action)
 {
     if ($action == 'unsubscribe') {
         $request = FrontController::getRequest();
         if ($request->get('hash') === $this->_getSubscribeHash($request->get('e'), $request->get('u'), $request->get('s'))) {
             $st = Statement::getById($request->getClean('s'), FrontController::getUser());
             if (empty($st)) {
                 $sender->msg('Error', 'Запрашиваемой идеи не найдено');
             }
             $user = new stdClass();
             $user->name = '';
             $user->user_id = $request->getClean('u');
             $user->email = $request->get('e');
             $st->removeSubscriber($user);
             $sender->msg('Подписка', 'Вы были удачно отписаны от рассылки');
         } else {
             $sender->msg('Error', 'Ошибка проверки хеша');
         }
         return false;
     }
     return true;
 }
예제 #3
0
 /**
  *
  * @param int $id
  * @param stdClass $user
  * @return Statement|null 
  */
 public static function getById($id, stdClass $user = null)
 {
     if (!$user) {
         $user = FrontController::getUser();
     }
     $row = self::$db->super_query("SELECT s.*, l.id AS isset FROM " . PREFIX . "_statement AS s\n                    LEFT OUTER JOIN " . PREFIX . "_statement_log AS l\n                    ON l.statement_id=s.id AND (l.user_id={$user->user_id} OR l.ip_address='" . $user->ip_address . "')\n                    WHERE s.id=" . $id);
     if ($row) {
         return new self($row);
     } else {
         return null;
     }
 }