Exemplo n.º 1
0
 public function save($post)
 {
     $helperFile = Core::make('helper/concrete/file');
     $db = Database::get();
     $cnvID = $db->GetOne('select cnvID from btCoreConversation where bID = ?', array($this->bID));
     if (!$cnvID) {
         $conversation = Conversation::add();
         $b = $this->getBlockObject();
         $xc = $b->getBlockCollectionObject();
         $conversation->setConversationPageObject($xc);
     } else {
         $conversation = Conversation::getByID($cnvID);
     }
     $values = $post + array('attachmentOverridesEnabled' => null, 'attachmentsEnabled' => null, 'itemsPerPage' => null, 'maxFilesGuest' => null, 'maxFilesRegistered' => null, 'maxFileSizeGuest' => null, 'maxFileSizeRegistered' => null, 'enableOrdering' => null, 'enableCommentRating' => null, 'notificationOverridesEnabled' => null, 'subscriptionEnabled' => null, 'fileExtensions' => null);
     if ($values['attachmentOverridesEnabled']) {
         $conversation->setConversationAttachmentOverridesEnabled(intval($values['attachmentOverridesEnabled']));
     } else {
         $conversation->setConversationAttachmentOverridesEnabled(0);
     }
     if ($values['attachmentsEnabled']) {
         $conversation->setConversationAttachmentsEnabled(intval($values['attachmentsEnabled']));
     }
     if (!$values['itemsPerPage']) {
         $values['itemsPerPage'] = 0;
     }
     if ($values['maxFilesGuest']) {
         $conversation->setConversationMaxFilesGuest(intval($values['maxFilesGuest']));
     }
     if ($values['maxFilesRegistered']) {
         $conversation->setConversationMaxFilesRegistered(intval($values['maxFilesRegistered']));
     }
     if ($values['maxFileSizeGuest']) {
         $conversation->setConversationMaxFileSizeGuest(intval($values['maxFileSizeGuest']));
     }
     if ($values['maxFileSizeRegistered']) {
         $conversation->setConversationMaxFilesRegistered(intval($values['maxFileSizeRegistered']));
     }
     if (!$values['enableOrdering']) {
         $values['enableOrdering'] = 0;
     }
     if (!$values['enableCommentRating']) {
         $values['enableCommentRating'] = 0;
     }
     if ($values['notificationOverridesEnabled']) {
         $conversation->setConversationNotificationOverridesEnabled(true);
         $users = array();
         if (is_array($this->post('notificationUsers'))) {
             foreach ($this->post('notificationUsers') as $uID) {
                 $ui = \UserInfo::getByID($uID);
                 if (is_object($ui)) {
                     $users[] = $ui;
                 }
             }
         }
         $conversation->setConversationSubscribedUsers($users);
         $conversation->setConversationSubscriptionEnabled(intval($values['subscriptionEnabled']));
     } else {
         $conversation->setConversationNotificationOverridesEnabled(false);
         $conversation->setConversationSubscriptionEnabled(0);
     }
     if ($values['fileExtensions']) {
         $receivedExtensions = preg_split('{,}', strtolower($values['fileExtensions']), null, PREG_SPLIT_NO_EMPTY);
         $fileExtensions = $helperFile->serializeUploadFileExtensions($receivedExtensions);
         $conversation->setConversationFileExtensions($fileExtensions);
     }
     $values['cnvID'] = $conversation->getConversationID();
     parent::save($values);
 }
Exemplo n.º 2
0
 public function save($post)
 {
     $helperFile = Loader::helper('concrete/file');
     $db = Loader::db();
     $cnvID = $db->GetOne('select cnvID from btCoreConversation where bID = ?', array($this->bID));
     if (!$cnvID) {
         $conversation = Conversation::add();
         $b = $this->getBlockObject();
         $xc = $b->getBlockCollectionObject();
         $conversation->setConversationPageObject($xc);
     } else {
         $conversation = Conversation::getByID($cnvID);
     }
     $values = $post;
     if ($values['attachmentOverridesEnabled']) {
         $conversation->setConversationAttachmentOverridesEnabled(intval($values['attachmentOverridesEnabled']));
     } else {
         $conversation->setConversationAttachmentOverridesEnabled(0);
     }
     if ($values['attachmentsEnabled']) {
         $conversation->setConversationAttachmentsEnabled(intval($values['attachmentsEnabled']));
     }
     if (!$values['itemsPerPage']) {
         $values['itemsPerPage'] = 0;
     }
     if ($values['maxFilesGuest']) {
         $conversation->setConversationMaxFilesGuest(intval($values['maxFilesGuest']));
     }
     if ($values['maxFilesRegistered']) {
         $conversation->setConversationMaxFilesRegistered(intval($values['maxFilesRegistered']));
     }
     if ($values['maxFileSizeGuest']) {
         $conversation->setConversationMaxFileSizeGuest(intval($values['maxFileSizeGuest']));
     }
     if ($values['maxFileSizeRegistered']) {
         $conversation->setConversationMaxFilesRegistered(intval($values['maxFileSizeRegistered']));
     }
     if (!$values['enableOrdering']) {
         $values['enableOrdering'] = 0;
     }
     if (!$values['attachmentsEnabled']) {
         $conversation->setConversationAttachmentsEnabled(intval($values['attachmentsEnabled']));
     }
     if (!$values['enableCommentRating']) {
         $values['enableCommentRating'] = 0;
     }
     if ($values['fileExtensions']) {
         $receivedExtensions = preg_split('{,}', strtolower($values['fileExtensions']), null, PREG_SPLIT_NO_EMPTY);
         $conversation->setConversationFileExtensions($helperFile->serializeUploadFileExtensions($receivedExtensions));
     }
     $values['cnvID'] = $conversation->getConversationID();
     parent::save($values);
 }