Пример #1
0
 public function submit()
 {
     if ($this->validateAction()) {
         $c = $this->page;
         $cp = $this->permissions;
         $u = new User();
         if ($cp->canDeletePage() && $c->getCollectionID() != HOME_CID && !$c->isMasterCollection()) {
             $children = $c->getNumChildren();
             if ($children == 0 || $u->isSuperUser()) {
                 if ($c->isExternalLink()) {
                     $c->delete();
                 } else {
                     $pkr = new DeletePagePageWorkflowRequest();
                     $pkr->setRequestedPage($c);
                     $pkr->setRequesterUserID($u->getUserID());
                     $u->unloadCollectionEdit($c);
                     $response = $pkr->trigger();
                     $pr = new PageEditResponse();
                     $pr->setPage($c);
                     $parent = Page::getByID($c->getCollectionParentID(), 'ACTIVE');
                     if ($response instanceof WorkflowProgressResponse) {
                         // we only get this response if we have skipped workflows and jumped straight in to an approve() step.
                         $pr->setMessage(t('Page deleted successfully.'));
                         if (!$this->request->request->get('sitemap')) {
                             $pr->setRedirectURL($parent->getCollectionLink(true));
                         }
                     } else {
                         $pr->setMessage(t('Page deletion request saved. This action will have to be approved before the page is deleted.'));
                     }
                     $pr->outputJSON();
                 }
             }
         }
     }
 }
Пример #2
0
 public function submit()
 {
     if ($this->validateAction()) {
         $request = \Request::getInstance();
         $this->page->addCollectionAliasExternal($request->request->get('name'), $request->request->get('link'), $request->request->get('openInNewWindow'));
         $r = new EditResponse();
         $r->setPage($this->page);
         $r->setRedirectURL(URL::to('/dashboard/sitemap'));
         $r->outputJSON();
     }
 }
Пример #3
0
 public function submit()
 {
     $e = Core::make('error');
     $pagetype = Type::getByID($this->request->request->get('ptID'));
     if (is_object($pagetype)) {
         $configuredTarget = $pagetype->getPageTypePublishTargetObject();
         $cParentID = $configuredTarget->getPageTypePublishTargetConfiguredTargetParentPageID();
         if (!$cParentID) {
             $cParentID = $this->request->request->get('cParentID');
         }
     }
     $parent = Page::getByID($cParentID);
     if ($this->request->request->get('ptComposerPageTemplateID')) {
         $template = Template::getByID($this->request->request->get('ptComposerPageTemplateID'));
     }
     if (!is_object($template)) {
         $template = $pagetype->getPageTypeDefaultPageTemplateObject();
     }
     if (is_object($pagetype)) {
         $validator = $pagetype->getPageTypeValidatorObject();
         $e->add($validator->validateCreateDraftRequest($template));
         $e->add($validator->validatePublishLocationRequest($parent));
         if ($this->request->request('addPageComposeAction') == 'publish') {
             $e->add($validator->validatePublishDraftRequest());
         }
     }
     $pr = new EditResponse();
     $pr->setError($e);
     if (!$e->has()) {
         $d = $pagetype->createDraft($template);
         $d->setPageDraftTargetParentPageID($cParentID);
         $pagetype->savePageTypeComposerForm($d);
         if ($this->request->request('addPageComposeAction') == 'publish') {
             $pagetype->publish($d);
             $pr->setAdditionalDataAttribute('cParentID', $cParentID);
             $pr->setMessage(t('Page Added Successfully.'));
         } else {
             $pr->setRedirectURL($d->getCollectionLink(true));
         }
     }
     $pr->outputJSON();
 }
Пример #4
0
 public function reset_site_customizations($pThemeID)
 {
     if ($this->validateAction()) {
         Page::resetAllCustomStyles();
         $pt = PageTheme::getByID($pThemeID);
         $pt->resetThemeCustomStyles();
         $r = new PageEditResponse();
         $r->setPage($this->page);
         $r->setRedirectURL(URL::to($this->page));
         $r->outputJSON();
     }
 }
Пример #5
0
 public function setRedirectURL($url)
 {
     return parent::setRedirectURL($url);
 }