public function get($num = 0, $offset = 0) { $r = parent::get($num, $offset); $messages = array(); foreach ($r as $row) { $messages[] = Message::getByID($row['cnvMessageID']); } return $messages; }
public function blockUserIP() { $json = Loader::helper('json'); $ip = Loader::helper('validation/ip'); $response = new stdClass(); $message = ConversationMessage::getByID($this->post('messageID')); if (is_object($message)) { $targetIP = $message->getConversationMessageSubmitIP(); $ip->createIPBan($targetIP, true); $response->success = t('IP successfully banned.'); echo $json->encode($response); exit; } else { $response->error = t('Invalid message'); echo $json->encode($response); exit; } exit; }
defined('C5_EXECUTE') or die("Access Denied."); use Concrete\Core\Conversation\Message\Message as ConversationMessage; $ax = Loader::helper('ajax'); $vs = Loader::helper('validation/strings'); $ve = Loader::helper('validation/error'); $as = Loader::helper('validation/antispam'); $pageObj = Page::getByID($_POST['cID']); $areaObj = Area::get($pageObj, $_POST['blockAreaHandle']); $blockObj = Block::getByID($_POST['bID'], $pageObj, $areaObj); $form = Loader::helper('form'); $u = new User(); $ui = UserInfo::getByID($u->getUserID()); $val = Loader::helper('validation/token'); if (Loader::helper('validation/numbers')->integer($_POST['cnvMessageID']) && $_POST['cnvMessageID'] > 0) { $message = ConversationMessage::getByID($_POST['cnvMessageID']); if (is_object($message)) { $mp = new Permissions($message); if ($mp->canEditConversationMessage()) { $editor = \Concrete\Core\Conversation\Editor\Editor::getByID($message->getConversationEditorID()); $editor->setConversationMessageObject($message); if (is_object($conversation)) { if ($conversation->getConversationAttachmentOverridesEnabled() > 0) { $attachmentsEnabled = $conversation->getConversationAttachmentsEnabled(); } else { $attachmentsEnabled = Config::get('conversations.attachments_enabled'); } } ?> <div class="ccm-conversation-edit-message" data-conversation-message-id="<?php
} else { $maxFiles = $u->isRegistered() ? $blockObj->getController()->maxFilesRegistered : $blockObj->getController()->maxFilesGuest; if ($maxFiles > 0 && count($_POST['attachments']) > $maxFiles) { $ve->add(t('You have too many attachments.')); } } } } if (!Loader::helper('validation/token')->validate('add_conversation_message', $_POST['token'])) { $ve->add(t('Invalid conversation post token.')); } if (!$vs->notempty($_POST['cnvMessageBody'])) { $ve->add(t('Your message cannot be empty.')); } if (Loader::helper('validation/numbers')->integer($_POST['cnvMessageParentID']) && $_POST['cnvMessageParentID'] > 0) { $parent = ConversationMessage::getByID($_POST['cnvMessageParentID']); if (!is_object($parent)) { $ve->add(t('Invalid parent message.')); } } if (Config::get('conversation.banned_words') && Loader::helper('validation/banned_words')->hasBannedWords($_POST['cnvMessageBody'])) { $ve->add(t('Banned words detected.')); } if ($ve->has()) { $ax->sendError($ve); } else { $msg = ConversationMessage::add($cn, $cnvMessageSubject, $_POST['cnvMessageBody'], $parent); if (!Loader::helper('validation/antispam')->check($_POST['cnvMessageBody'], 'conversation_comment')) { $msg->flag(ConversationFlagType::getByHandle('spam')); } else { $msg->approve();
public function undelete_message() { $e = Core::make('error'); $message = ConversationMessage::getByID($this->post('cnvMessageID')); if (!is_object($message)) { $e->add(t('Invalid message')); } else { $mp = new \Permissions($message); if (!$mp->canDeleteConversationMessage()) { $e->add(t('You do not have permission to restore this message.')); } } $er = new EditResponse($e); if (!$e->has()) { $message->restore(); $er->setMessage(t('Message restored.')); } $er->outputJSON(); }
function unapprove_reply() { $vf = Loader::helper('validation/form'); $vf->setData($_POST['ccm_token']); $vf->addRequiredToken('unapprove_reply'); if ($vf->test()) { $msg = ConversationMessage::getByID($_POST['mID']); $msg->unapprove(); } else { die("Access Denied."); } $this->save_active_tab($_POST['activeTab']); $this->redirect(Page::getCurrentPage()->getCollectionPath()); }