Beispiel #1
0
 protected function decodeMsgImpl(DiscussionMsg $msg)
 {
     $pointId = $msg->getTemplateData();
     $point = UserPointsManager::inst()->getPointById($pointId, $msg->getUserTo()->getId());
     $describer = $point->getDescriber();
     return new TemplateMessageContent('Вы заработали очки', 'Причина: ' . $describer->title());
 }
Beispiel #2
0
 /**
  * Метод декодирования шаблонных сообщений
  * 
  * @return TemplateMessageContent
  */
 public function decodeTemplateMsg(DiscussionMsg $msg)
 {
     try {
         check_condition($msg->isTemplated(), "Сообщение {$msg} не шаблонизировано");
         $result = $this->getFoldedEntityByDbCode($msg->getTemplateId())->getClassInst()->decodeMsg($msg);
         if ($result instanceof TemplateMessageContent) {
             return $result;
         }
         raise_error(is_string($result) && !isEmpty($result) ? $result : 'Шаблонное сообщение обработано некорректно');
     } catch (Exception $ex) {
         return new TemplateMessageError($ex);
     }
 }
Beispiel #3
0
 /**
  * Построение простой дискуссии - для одного листа. Выполняет основные действия.
  */
 public final function buildDiscussionSimple(DiscussionMsg $leaf)
 {
     //Tree js data
     $treeData[self::JS_DATA_UPDOWN] = true;
     $treeData[self::JS_DATA_THREAD] = $leaf->getThreadId();
     $treeData[self::JS_DATA_UNIQUE] = $this->SETTINGS->getUnique();
     $treeData[self::JS_DATA_THEMED] = $this->SETTINGS->isThemed();
     $params['tree'] = $this->buildLeaf($leaf, true);
     $params['data'] = PsHtml::data2string($treeData);
     return PSSmarty::template('discussion/common/discussion_simple.tpl', $params)->fetch();
 }
Beispiel #4
0
 /**
  * Основная функция, занимающаяся декодированием дискуссионного сообщения.
  * 
  * @return TemplateMessageContent
  */
 public final function decodeMsg(DiscussionMsg $msg)
 {
     check_condition($msg->getTemplateId() === $this->getFoldedEntity()->getDbCode(), "Класс {$this} не может декодировать {$msg}");
     return $this->decodeMsgImpl($msg);
 }
Beispiel #5
0
 protected function decodeMsgImpl(DiscussionMsg $msg)
 {
     return new TemplateMessageContent('Спасибо, что Вы с нами', 'Уважаемый пользователь <b>' . $msg->getUserTo()->getName() . '</b>, мы очень рады, что Вы зарегистрировалиль на нашем сайте. Ура!:)');
 }
Beispiel #6
0
 /**
  * Метод подтверждения сообщения
  */
 public function confirmMsg(DiscussionMsg $msg)
 {
     if (!$msg->isConfirmed()) {
         $this->update("update {$this->table} set b_confirmed=1 where {$this->idColumn}=?", $msg->getId());
         $msg->b_confirmed = 1;
     }
 }
Beispiel #7
0
 protected function decodeMsgImpl(DiscussionMsg $msg)
 {
     return new TemplateMessageContent($msg->getTheme(), $msg->getContent());
 }
Beispiel #8
0
 public function addChild(DiscussionMsg $msg)
 {
     check_condition(!array_key_exists($msg->getId(), $this->childs), 'Cicle!');
     $this->childs[$msg->getId()] = $msg;
 }