File modules/cms/action/page/PageEditAction.class.php
Last commit: Tue Oct 13 22:52:59 2026 +0200 Jan Dankert New: The UI is now able to send hierarchical form data and the server is converting it into an object. This is a very nice feature, because this enables a better OpenAPI interface.
1 <?php 2 namespace cms\action\page; 3 use cms\action\Method; 4 use cms\action\PageAction; 5 use cms\api\Language; 6 use cms\api\PageAll; 7 use cms\model\Permission; 8 use cms\model\BaseObject; 9 use cms\model\Element; 10 use cms\model\Folder; 11 use cms\model\Page; 12 use cms\model\Project; 13 use cms\model\Template; 14 use cms\model\Value; 15 16 class PageEditAction extends PageAction implements Method { 17 18 19 public function view() { 20 21 $template = new Template( $this->page->templateid ); 22 $template->load(); 23 24 $pageAll = new PageAll($this->page->objectid,$this->page->pageid,array(),array()); 25 26 /** @var Element[] $elements */ 27 $elements = $template->getElements(); 28 29 /** @var Element[] $elements */ 30 $elements = array_filter(/** 31 * @param $element Element 32 * @return Element 33 */ $elements, function($element ) { 34 return $element->isWritable(); 35 } ); 36 37 foreach ( $elements as $element ) { 38 $pageAll->elements[] = new \cms\api\Element( 39 $element->getId(), 40 $element->name, 41 $element->label, 42 $element->desc, 43 $element->getTypeName(), 44 $element->typeid ); 45 } 46 47 $project = $this->page->getProject(); 48 49 $languages = $project->getLanguageList(); 50 51 foreach( $languages as $language ) { 52 $language->load(); 53 $pageAll->languages[] = new Language( 54 $language->getId(), 55 $language->isoCode, 56 $language->getName() 57 ); 58 59 } 60 61 return $pageAll; 62 } 63 64 65 66 public function post() { 67 68 } 69 }
Downloadmodules/cms/action/page/PageEditAction.class.php
History Tue, 13 Oct 2026 22:52:59 +0200 Jan Dankert New: The UI is now able to send hierarchical form data and the server is converting it into an object. This is a very nice feature, because this enables a better OpenAPI interface. Tue, 13 Oct 2026 18:49:59 +0200 Jan Dankert New: Another action which returns an object instead of single output values. This should be the future, but it's a long way to refactore all old action methods... Fri, 11 Mar 2022 11:32:38 +0100 dankert New: Edit all languages for a page element. Sun, 5 Dec 2021 20:33:24 +0100 dankert Cleanup: Removed unusable properties from class 'Value' and 'BaseObject'. Wed, 10 Mar 2021 23:51:22 +0100 Jan Dankert Refactoring: Cleaned the Request params. Fri, 26 Feb 2021 01:06:01 +0100 Jan Dankert Refactoring accessing the request parameter values. Thu, 25 Feb 2021 01:22:10 +0100 Jan Dankert New: Edit all page elements in 1 view. Mon, 4 Jan 2021 19:03:18 +0100 Jan Dankert Refactoring: ACL class is renamed to Permission, because most RBAC/DMAC concepts are calling it a permission. Thu, 19 Nov 2020 12:36:44 +0100 Jan Dankert Fix: nextSubAction() is depracated and should not be used. Wed, 18 Nov 2020 01:46:36 +0100 Jan Dankert Refactoring of model classes: New method persist() and some other cleanups. Tue, 17 Nov 2020 23:51:00 +0100 Jan Dankert Refactoring: Every Actionmethod has now its own class.