/** * @see \wcf\system\message\quote\AbstractMessageQuoteHandler::getMessages() */ protected function getMessages(array $data) { // read news entries $newsList = new NewsList(); $newsList->getConditionBuilder()->add('news.newsID IN (?)', array(array_keys($data))); $newsList->readObjects(); $quotedMessages = $validNewsIDs = array(); // create QuotedMessage objects foreach ($newsList->getObjects() as $news) { $validNewsIDs[] = $news->newsID; $message = new QuotedMessage($news); foreach (array_keys($data[$news->newsID]) as $quoteID) { $message->addQuote($quoteID, MessageQuoteManager::getInstance()->getQuote($quoteID, false), MessageQuoteManager::getInstance()->getQuote($quoteID, true)); } $quotedMessages[] = $message; } // check for orphaned quotes if (count($validNewsIDs) != count($data)) { $orphanedQuoteIDs = array(); foreach ($data as $newsID => $quoteIDs) { if (!in_array($newsID, $validNewsIDs)) { foreach (array_keys($quoteIDs) as $quoteID) { $orphanedQuoteIDs[] = $quoteID; } } } MessageQuoteManager::getInstance()->removeOrphanedQuotes($orphanedQuoteIDs); } return $quotedMessages; }
/** * @see \wcf\system\message\quote\AbstractMessageQuoteHandler::getMessages() */ protected function getMessages(array $data) { // read messages $messageList = new ConversationMessageList(); $messageList->getConditionBuilder()->add("conversation_message.messageID IN (?)", array(array_keys($data))); $messageList->readObjects(); $messages = $messageList->getObjects(); // read conversations $conversationIDs = $validMessageIDs = array(); foreach ($messages as $message) { $conversationIDs[] = $message->conversationID; $validMessageIDs[] = $message->messageID; } $quotedMessages = array(); if (!empty($conversationIDs)) { $conversationList = new ConversationList(); $conversationList->getConditionBuilder()->add("conversation.conversationID IN (?)", array($conversationIDs)); $conversationList->readObjects(); $conversations = $conversationList->getObjects(); // create QuotedMessage objects foreach ($messages as $conversationMessage) { $conversationMessage->setConversation($conversations[$conversationMessage->conversationID]); $message = new QuotedMessage($conversationMessage); foreach (array_keys($data[$conversationMessage->messageID]) as $quoteID) { $message->addQuote($quoteID, MessageQuoteManager::getInstance()->getQuote($quoteID, false), MessageQuoteManager::getInstance()->getQuote($quoteID, true)); } $quotedMessages[] = $message; } } // check for orphaned quotes if (count($validMessageIDs) != count($data)) { $orphanedQuoteIDs = array(); foreach ($data as $messageID => $quoteIDs) { if (!in_array($messageID, $validMessageIDs)) { foreach (array_keys($quoteIDs) as $quoteID) { $orphanedQuoteIDs[] = $quoteID; } } } MessageQuoteManager::getInstance()->removeOrphanedQuotes($orphanedQuoteIDs); } return $quotedMessages; }
/** * @see \wcf\page\AbstractPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); MessageQuoteManager::getInstance()->assignVariables(); WCF::getTPL()->assign(array('allowSpidersToIndexThisPage' => true, 'attachmentList' => $this->entry->getAttachments(), 'commentCanAdd' => WCF::getSession()->getPermission('user.news.canWriteComment'), 'commentList' => $this->commentList, 'commentObjectTypeID' => $this->objectTypeID, 'lastCommentTime' => $this->commentList->getMinCommentTime(), 'likeData' => MODULE_LIKE ? $this->commentList->getLikeData() : array(), 'entry' => $this->entry, 'entryLikeData' => $this->entryLikeData, 'sidebarCollapsed' => UserCollapsibleContentHandler::getInstance()->isCollapsed('com.woltlab.wcf.collapsibleSidebar', 'de.incendium.cms.NewsEntryPage'), 'sidebarName' => 'de.incendium.cms.NewsPage', 'tags' => $this->tags, 'moreEntryList' => $this->moreEntryList)); }
/** * Returns a list of full quotes by object ids for given object types. * * @return array<array> */ protected function getFullQuoteObjectIDs() { if (empty($this->objectTypes)) { throw new UserInputException('objectTypes'); } try { return MessageQuoteManager::getInstance()->getFullQuoteObjectIDs($this->objectTypes); } catch (SystemException $e) { throw new UserInputException('objectTypes'); } }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); // quotes MessageQuoteManager::getInstance()->assignVariables(); // poll if ($this->canCreatePoll()) { PollManager::getInstance()->assignVariables(); } WCF::getTPL()->assign(array('action' => $this->action, 'subject' => $this->subject, 'text' => $this->text, 'teaser' => $this->teaser, 'categoryList' => $this->categoryList, 'categoryIDs' => $this->categoryIDs, 'enableAutomaticArchiving' => $this->enableAutomaticArchiving, 'archivingDate' => $this->archivingDate, 'enableDelayedPublication' => $this->enableDelayedPublication, 'publicationDate' => $this->publicationDate, 'pictureID' => $this->pictureID, 'picture' => $this->picture, 'isHot' => $this->isHot, 'sources' => $this->sources, 'tags' => $this->tags, 'showSignatureSetting' => false, 'messageQuoteCount' => MessageQuoteManager::getInstance()->countQuotes())); }
/** * @see \wcf\data\IMessageQuoteAction::getRenderedQuotes() */ public function getRenderedQuotes() { $quotes = MessageQuoteManager::getInstance()->getQuotesByParentObjectID('com.woltlab.wcf.conversation.message', $this->conversation->conversationID); return array('template' => implode("\n\n", $quotes)); }
/** * @see \wcf\data\IMessageQuoteAction::getRenderedQuotes() */ public function getRenderedQuotes() { $quotes = MessageQuoteManager::getInstance()->getQuotesByParentObjectID('de.voolia.news.entry', $this->newsEditor->newsID); return array('template' => implode("\n\n", $quotes)); }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); MessageQuoteManager::getInstance()->assignVariables(); WCF::getTPL()->assign(array('conversation' => $this->conversation, 'conversationID' => $this->conversationID, 'items' => $this->messageList->countObjects(), 'messages' => $this->messageList->getObjects(), 'attachmentList' => $this->messageList->getAttachmentList())); }
/** * @see \wcf\page\AbstractPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); MessageQuoteManager::getInstance()->assignVariables(); // configuration for dashboard boxes DashboardHandler::getInstance()->loadBoxes('de.voolia.news.NewsPage', $this); WCF::getTPL()->assign(array('allowSpidersToIndexThisPage' => true, 'attachmentList' => $this->news->getAttachments(), 'commentCanAdd' => WCF::getSession()->getPermission('user.news.canWriteComment'), 'commentList' => $this->commentList, 'commentObjectTypeID' => $this->objectTypeID, 'lastCommentTime' => $this->commentList->getMinCommentTime(), 'likeData' => MODULE_LIKE ? $this->commentList->getLikeData() : array(), 'news' => $this->news, 'newsLikeData' => $this->newsLikeData, 'sidebarCollapsed' => UserCollapsibleContentHandler::getInstance()->isCollapsed('com.woltlab.wcf.collapsibleSidebar', 'de.voolia.news.NewsPage'), 'sidebarName' => 'de.voolia.news.NewsPage', 'tags' => $this->tags, 'moreNewsList' => $this->moreNewsList)); }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); MessageQuoteManager::getInstance()->assignVariables(); WCF::getTPL()->assign(array('participantCanInvite' => $this->participantCanInvite, 'participants' => $this->participants, 'invisibleParticipants' => $this->invisibleParticipants)); }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); // quotes MessageQuoteManager::getInstance()->assignVariables(); // poll if ($this->canCreatePoll()) { PollManager::getInstance()->assignVariables(); } WCF::getTPL()->assign(array('action' => 'add', 'subject' => $this->subject, 'text' => $this->text, 'categoryList' => $this->categoryList, 'categoryIDs' => $this->categoryIDs, 'enableDelayedPublication' => $this->enableDelayedPublication, 'publicationDate' => $this->publicationDate, 'isFeatured' => $this->isFeatured, 'tags' => $this->tags, 'showSignatureSetting' => false, 'messageQuoteCount' => MessageQuoteManager::getInstance()->countQuotes())); }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); MessageQuoteManager::getInstance()->assignVariables(); $tmpHash = StringUtil::getRandomID(); $attachmentHandler = new AttachmentHandler('com.woltlab.wcf.conversation.message', 0, $tmpHash, 0); WCF::getTPL()->assign(array('attachmentHandler' => $attachmentHandler, 'attachmentObjectID' => 0, 'attachmentObjectType' => 'com.woltlab.wcf.conversation.message', 'attachmentParentObjectID' => 0, 'tmpHash' => $tmpHash, 'attachmentList' => $this->objectList->getAttachmentList(), 'labelList' => $this->labelList, 'modificationLogList' => $this->modificationLogList, 'sortOrder' => $this->sortOrder, 'conversation' => $this->conversation, 'conversationID' => $this->conversationID, 'participants' => $this->participantList->getObjects(), 'defaultSmilies' => SmileyCache::getInstance()->getCategorySmilies(), 'permissionCanUseSmilies' => 'user.message.canUseSmilies')); BBCodeHandler::getInstance()->setAllowedBBCodes(explode(',', WCF::getSession()->getPermission('user.message.allowedBBCodes'))); }
/** * @see \wcf\page\IPage::assignVariables() */ public function assignVariables() { parent::assignVariables(); // quotes MessageQuoteManager::getInstance()->assignVariables(); WCF::getTPL()->assign(array('entryID' => $this->entryID, 'entry' => $this->entry)); }