/** * Edit an existing site page * * @return void */ public function editAction() { $this->view->currentPage = 'pages'; $siteID = $this->getRequest()->getParam('site'); if ($siteID == '') { $siteID = 1; } if ($this->getRequest()->isPost()) { // Save changes $this->_savePage($siteID); } else { // Edit page $pageID = $this->getRequest()->getParam('id'); $page = new Datasource_Cms_Pages(); $pageEdit = $page->getByID($pageID); $passThrough = $this->_helper->getHelper('FlashMessenger')->getMessages(); if (count($passThrough) > 0) { if (isset($passThrough[0]['saved'])) { if ($passThrough[0]['saved'] == true) { $this->view->saved = true; } } if (isset($passThrough[0]['errorMessage'])) { $this->view->errorMessage = $passThrough[0]['errorMessage']; } } $this->view->pageContent = $pageEdit['pageContent']; $this->view->pageTitle = $pageEdit['pageTitle']; $this->view->pageURL = $pageEdit['url']; $this->view->pageID = $pageID; $this->view->metaKeywords = $pageEdit['keywords']; $this->view->metaDescription = $pageEdit['description']; $this->view->urlEditable = $pageEdit['urlEditable'] == 1 ? true : false; $meta = $page->getMeta($pageID); $metaFieldData = $page->getMetaFields($pageID); foreach ($metaFieldData as &$metaRow) { if (isset($meta[$metaRow['metaName']])) { $metaRow['value'] = $meta[$metaRow['metaName']]; } } $metaFieldList = $this->view->partialLoop('partials/edit-page-metafield.phtml', $metaFieldData); $this->view->metaFields = $metaFieldList; // Load the possible testimonial tags from the database $testimonials = new Datasource_Cms_Testimonials(); $this->view->testimonialTags = $testimonials->getPossibleTags(); // Load the possible header quote tags from the database $quotes = new Datasource_Cms_HeaderQuotes(); $this->view->quoteTags = $quotes->getPossibleTags(); $templates = new Datasource_Cms_Page_Template(); $templateArray = $templates->getAll($siteID); foreach ($templateArray as &$template) { $template['current'] = $template['id'] == $pageEdit['layoutID'] ? true : false; } $templateList = $this->view->partialLoop('partials/edit-page-templatefield.phtml', $templateArray); $this->view->templateFields = $templateList; } }