/** * update * @param GenericSetup $objGenericSetup * @param object Page * @author Thomas Schedler <*****@*****.**> * @version 1.0 */ public function update(GenericSetup &$objGenericSetup, $objPage) { $this->core->logger->debug('cms->models->Model_Pages->update()'); $intUserId = Zend_Auth::getInstance()->getIdentity()->id; $strWhere = $this->getPageTable()->getAdapter()->quoteInto('pageId = ?', $objPage->pageId); $strWhere .= $this->getPageTable()->getAdapter()->quoteInto(' AND version = ?', $objPage->version); $this->getPageTable()->update(array('idUsers' => $intUserId, 'changed' => date('Y-m-d H:i:s')), $strWhere); /** * update language specific page properties */ $strWhere .= $this->getPageTable()->getAdapter()->quoteInto(' AND idLanguages = ?', $this->intLanguageId); $intNumOfEffectedRows = $this->getPagePropertyTable()->update(array('idGenericForms' => $objGenericSetup->getGenFormId(), 'idTemplates' => $objGenericSetup->getTemplateId(), 'idPageTypes' => $objGenericSetup->getElementTypeId(), 'showInNavigation' => $objGenericSetup->getShowInNavigation(), 'idDestination' => $objGenericSetup->getDestinationId(), 'idUsers' => $intUserId, 'creator' => $objGenericSetup->getCreatorId(), 'idStatus' => $objGenericSetup->getStatusId(), 'published' => $objGenericSetup->getPublishDate(), 'changed' => date('Y-m-d H:i:s')), $strWhere); /** * insert language specific page properties */ if ($intNumOfEffectedRows == 0) { $arrProperties = array('pageId' => $objPage->pageId, 'version' => $objPage->version, 'idLanguages' => $this->intLanguageId, 'idGenericForms' => $objGenericSetup->getGenFormId(), 'idTemplates' => $objGenericSetup->getTemplateId(), 'idPageTypes' => $objGenericSetup->getElementTypeId(), 'showInNavigation' => $objGenericSetup->getShowInNavigation(), 'idDestination' => $objGenericSetup->getDestinationId(), 'idUsers' => $intUserId, 'creator' => $objGenericSetup->getCreatorId(), 'publisher' => $intUserId, 'created' => date('Y-m-d H:i:s'), 'published' => $objGenericSetup->getPublishDate(), 'idStatus' => $objGenericSetup->getStatusId()); $this->getPagePropertyTable()->insert($arrProperties); } }