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; }