Example #1
0
 public function action_post()
 {
     // happens through ajax
     $pagetype = PageType::getByID($this->ptID);
     if (is_object($pagetype) && $this->enablePostingFromGathering) {
         $ccp = new Permissions($pagetype);
         if ($ccp->canEditPageTypeInComposer()) {
             $ct = PageType::getByID($this->post('ptComposerPageTypeID'));
             $availablePageTypes = $pagetype->getComposerPageTypeObjects();
             if (!is_object($ct) && count($availablePageTypes) == 1) {
                 $ct = $availablePageTypes[0];
             }
             $c = Page::getCurrentPage();
             $e = $pagetype->validatePublishRequest($ct, $c);
             $r = new PageTypePublishResponse($e);
             if (!$e->has()) {
                 $d = $pagetype->createDraft($ct);
                 $d->setPageDraftTargetParentPageID($c->getCollectionID());
                 $d->saveForm();
                 $d->publish();
                 $nc = Page::getByID($d->getCollectionID(), 'RECENT');
                 $link = Core::make('helper/navigation')->getLinkToCollection($nc, true);
                 $r->setRedirectURL($link);
             }
             $r->outputJSON();
         }
     }
     exit;
 }
 public function action_post()
 {
     // happens through ajax
     $pagetype = PageType::getByID($this->ptID);
     if (is_object($pagetype) && $this->enableNewTopics) {
         $ccp = new Permissions($pagetype);
         if ($ccp->canAddPageType()) {
             $pagetypes = $pagetype->getPageTypeComposerPageTypeObjects();
             $ctTopic = $pagetypes[0];
             $c = Page::getCurrentPage();
             $e = $pagetype->validatePublishRequest($ctTopic, $c);
             $r = new PageTypePublishResponse($e);
             if (!$e->has()) {
                 $d = $pagetype->createDraft($ctTopic);
                 $d->setPageDraftTargetParentPageID($c->getCollectionID());
                 $d->saveForm();
                 $d->publish();
                 $nc = Page::getByID($d->getCollectionID(), 'RECENT');
                 $link = Loader::helper('navigation')->getLinkToCollection($nc, true);
                 $r->setRedirectURL($link);
             }
             $r->outputJSON();
         }
     }
     exit;
 }