openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 39b4a48f506061e217210aaa7ebb8d94aaa6929b
parent ce9ae635e6c6af2e272d506dec63c41bab6684a0
Author: dankert <devnull@localhost>
Date:   Mon,  2 Jul 2007 23:59:44 +0200

Korrektur f?r das Speichern aller Seitenelemente.

Diffstat:
actionClasses/PageAction.class.php | 29+++++++++++++++++------------
actionClasses/PageAction.ini.php | 4++++
2 files changed, 21 insertions(+), 12 deletions(-)

diff --git a/actionClasses/PageAction.class.php b/actionClasses/PageAction.class.php @@ -59,23 +59,23 @@ class PageAction extends ObjectAction { $this->page->public = true; $this->page->simple = true; - $this->page->generate_elements(); - foreach( $this->page->values as $id=>$value ) + foreach( $this->page->getElements() as $elementid=>$name ) { - if ( $value->element->isWritable() && $this->getRequestVar('saveid'.$value->element->elementid)=='1' ) + if ( $this->hasRequestVar('saveid'.$elementid) ) { $value = new Value(); $value->objectid = $this->page->objectid; $value->pageid = Page::getPageIdFromObjectId( $value->objectid ); - $value->element = new Element( $id ); + $value->element = new Element( $elementid ); $value->element->load(); $value->publish = false; $value->load(); - $varname = 'id'.$value->element->elementid; - $inhalt = $this->getRequestVar($varname); - + // Eingegebenen Inhalt aus dem Request lesen + $inhalt = $this->getRequestVar( 'id'.$elementid ); + + // Den Inhalt speichern. switch( $value->element->type ) { case 'number': @@ -94,6 +94,7 @@ class PageAction extends ObjectAction case 'link': case 'list': + case 'insert': $value->linkToObjectId = intval($inhalt); break; } @@ -106,11 +107,14 @@ class PageAction extends ObjectAction else $value->publish = false; - // Inhalt speichern - // Wenn Inhalt in allen Sprachen gleich ist, dann wird der Inhalt - // fuer jede Sprache einzeln gespeichert. +// Html::debug($inhalt,'Eingabe'); +// Html::debug($value,'Inhalt'); + + // Inhalt speichern. + // Inhalt in allen Sprachen gleich? if ( $value->element->allLanguages ) { + // Inhalt fuer jede Sprache einzeln speichern. $p = new Project(); foreach( $p->getLanguageIds() as $languageid ) { @@ -397,11 +401,10 @@ class PageAction extends ObjectAction */ function el() { - global $conf_php; - $this->page->public = true; $this->page->simple = true; $this->page->generate_elements(); +// Html::debug($this->page,'Seite'); $list = array(); @@ -451,6 +454,8 @@ class PageAction extends ObjectAction $list[$id]['name'] = $value->element->name; $list[$id]['desc'] = $value->element->desc; $list[$id]['type'] = $value->element->type; + $list[$id]['id' ] = 'id'.$value->element->elementid; + $list[$id]['saveid'] = 'saveid'.$value->element->elementid; switch( $value->element->type ) { diff --git a/actionClasses/PageAction.ini.php b/actionClasses/PageAction.ini.php @@ -17,6 +17,7 @@ target=prop menu=elements [form] +target=saveform menu=elements [pub] @@ -29,6 +30,9 @@ goto=pub [saveprop] goto=showprop +[saveform] +goto=el + [showprop] menu=prop