exists() public static method

Check if a page exists
public static exists ( integer $id ) : boolean
$id integer The id to check for existence.
return boolean
Example #1
0
 /**
  * Execute the action
  */
 public function execute()
 {
     // get parameters
     $this->id = $this->getParameter('id', 'int');
     // does the item exist
     if ($this->id !== null && BackendPagesModel::exists($this->id)) {
         // call parent, this will probably add some general CSS/JS or other required files
         parent::execute();
         // init var
         $success = false;
         // cannot have children
         if (BackendPagesModel::getFirstChildId($this->id) !== false) {
             $this->redirect(BackendModel::createURLForAction('Edit') . '&error=non-existing');
         }
         $revisionId = $this->getParameter('revision_id', 'int');
         if ($revisionId == 0) {
             $revisionId = null;
         }
         // get page (we need the title)
         $page = BackendPagesModel::get($this->id, $revisionId);
         // valid page?
         if (!empty($page)) {
             // delete the page
             $success = BackendPagesModel::delete($this->id, null, $revisionId);
             // trigger event
             BackendModel::triggerEvent($this->getModule(), 'after_delete', array('id' => $this->id));
             // delete search indexes
             BackendSearchModel::removeIndex($this->getModule(), $this->id);
             // build cache
             BackendPagesModel::buildCache(BL::getWorkingLanguage());
         }
         // page is deleted, so redirect to the overview
         if ($success) {
             $this->redirect(BackendModel::createURLForAction('Index') . '&id=' . $page['parent_id'] . '&report=deleted&var=' . rawurlencode($page['title']));
         } else {
             $this->redirect(BackendModel::createURLForAction('Edit') . '&error=non-existing');
         }
     } else {
         $this->redirect(BackendModel::createURLForAction('Edit') . '&error=non-existing');
     }
 }
Example #2
0
 /**
  * Load the record
  */
 private function loadData()
 {
     // get record
     $this->id = $this->getParameter('id', 'int');
     $this->isGod = BackendAuthentication::getUser()->isGod();
     // check if something went wrong
     if ($this->id === null || !BackendPagesModel::exists($this->id)) {
         $this->redirect(BackendModel::createURLForAction('Index') . '&error=non-existing');
     }
     // get the record
     $this->record = BackendPagesModel::get($this->id);
     // load blocks
     $this->blocksContent = BackendPagesModel::getBlocks($this->id, $this->record['revision_id']);
     // is there a revision specified?
     $revisionToLoad = $this->getParameter('revision', 'int');
     // if this is a valid revision
     if ($revisionToLoad !== null) {
         // overwrite the current record
         $this->record = (array) BackendPagesModel::get($this->id, $revisionToLoad);
         // load blocks
         $this->blocksContent = BackendPagesModel::getBlocks($this->id, $revisionToLoad);
         // show warning
         $this->tpl->assign('appendRevision', true);
     }
     // is there a revision specified?
     $draftToLoad = $this->getParameter('draft', 'int');
     // if this is a valid revision
     if ($draftToLoad !== null) {
         // overwrite the current record
         $this->record = (array) BackendPagesModel::get($this->id, $draftToLoad);
         // load blocks
         $this->blocksContent = BackendPagesModel::getBlocks($this->id, $draftToLoad);
         // show warning
         $this->tpl->assign('appendRevision', true);
     }
     // reset some vars
     $this->record['full_url'] = BackendPagesModel::getFullURL($this->record['id']);
     $this->record['is_hidden'] = $this->record['hidden'] == 'Y';
 }