Airship\Cabin\Bridge\Blueprint\CustomPages::deletePage PHP Method

deletePage() public method

Delete a page from the database, along with its revision history.
public deletePage ( integer $pageId ) : boolean
$pageId integer
return boolean
    public function deletePage(int $pageId) : bool
    {
        $this->db->beginTransaction();
        $this->db->delete('airship_custom_page_version', ['page' => $pageId]);
        $this->db->delete('airship_custom_page', ['pageid' => $pageId]);
        return $this->db->commit();
    }

Usage Example

Ejemplo n.º 1
0
 /**
  * Confirm deletion
  *
  * @param int $pageId
  * @param array $post
  * @param string $cabin
  * @param string $dir
  * @return mixed
  */
 protected function processDeletePage(int $pageId, array $post = [], string $cabin = '', string $dir = '') : bool
 {
     $this->log('Attempting to delete a page', LogLevel::ALERT, ['pageId' => $pageId, 'cabin' => $cabin, 'dir' => $dir]);
     list($oldCabin, $oldPath, $oldURL) = $this->pg->getPathByPageId((int) $pageId, $cabin);
     if ($this->pg->deletePage($pageId)) {
         if (!empty($post['create_redirect']) && !empty($post['redirect_to'])) {
             $this->pg->createSameCabinRedirect($oldPath . '/' . $oldURL, $post['redirect_to'], $oldCabin);
         }
         \Airship\redirect($this->airship_cabin_prefix . '/pages/' . $cabin, ['dir' => $dir]);
     }
     return false;
 }