openrat-cms

# OpenRat Content Management System
git clone http://git.code.weiherhei.de/openrat-cms.git
Log | Files | Refs

commit c3ed3152ebbea9f207b0952e1c2a8f4a180fef94
parent ec80382983ba56787861a28738282db13cf04a2d
Author: Jan Dankert <develop@jandankert.de>
Date:   Fri, 17 May 2019 23:20:45 +0200

Refactoring: Element-Namen und -Typ über die Eigenschaften bearbeiten.

Diffstat:
modules/cms-core/action/ElementAction.class.php | 1027+++++++++++++++++++++++++++++++++++++++----------------------------------------
modules/cms-ui/themes/default/html/views/element/advanced.php | 354++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
modules/cms-ui/themes/default/html/views/element/advanced.tpl.src.xml | 265++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
modules/cms-ui/themes/default/html/views/element/edit.php | 36------------------------------------
modules/cms-ui/themes/default/html/views/element/edit.tpl.src.xml | 34----------------------------------
modules/cms-ui/themes/default/html/views/element/info.php | 21++++++++++++++++++---
modules/cms-ui/themes/default/html/views/element/info.tpl.src.xml | 17++++++++++++++---
modules/cms-ui/themes/default/html/views/element/prop.php | 374++++++++-----------------------------------------------------------------------
modules/cms-ui/themes/default/html/views/element/prop.tpl.src.xml | 298+++++++++++++------------------------------------------------------------------
9 files changed, 1210 insertions(+), 1216 deletions(-)

diff --git a/modules/cms-core/action/ElementAction.class.php b/modules/cms-core/action/ElementAction.class.php @@ -54,23 +54,6 @@ class ElementAction extends Action /** * Umbenennen des Elementes */ - function editPost() - { - $this->element->name = $this->getRequestVar('name' ,OR_FILTER_ALPHANUM); - $this->element->label= $this->getRequestVar('label' ,OR_FILTER_ALPHANUM); - $this->element->desc = $this->getRequestVar('description','all' ); - - $this->element->save(); - $this->element->load(); - - $this->addNotice('element',$this->element->name,'SAVED',OR_NOTICE_OK); - } - - - - /** - * Umbenennen des Elementes - */ public function removeView() { $this->setTemplateVar( 'name' ,$this->element->name ); @@ -108,269 +91,256 @@ class ElementAction extends Action */ public function advancedPost() { - if ( !$this->userIsAdmin() && $this->getRequestVar('type') == 'code' ) - { - // Code-Elemente fuer Nicht-Administratoren nicht benutzbar - $this->addNotice('element',$this->template->name,'CANCELED',OR_NOTICE_ERROR); - } - else - { - // Neuen Typ setzen und speichern - $this->element->updateTypeId( $this->getRequestVar('typeid') ); - $this->addNotice('element',$this->element->name,'SAVED',OR_NOTICE_OK); - } - } + global $conf; + $ini_date_format = config('date','format'); - /** - * Anzeigen des Elementes - */ - function editView() - { + if ( $this->hasRequestVar('format')) + $this->element->format = $this->getRequestId('format'); + + + if ( $this->hasRequestVar('dateformat')) + $this->element->dateformat = $ini_date_format[$this->getRequestVar('dateformat')]; + + + if ( $this->hasRequestVar('default_longtext')) + $this->element->defaultText = $this->getRequestVar('default_longtext',OR_FILTER_RAW); + else + $this->element->defaultText = $this->getRequestVar('default_text',OR_FILTER_ALPHANUM); + + $this->element->subtype = $this->getRequestVar('subtype'); + + $this->element->html = $this->hasRequestVar('html'); + $this->element->withIcon = $this->hasRequestVar('with_icon'); + $this->element->allLanguages = $this->hasRequestVar('all_languages'); + $this->element->writable = $this->hasRequestVar('writable'); + $this->element->inherit = $this->hasRequestVar('inherit'); + + $this->element->decimals = $this->getRequestVar('decimals'); + $this->element->decPoint = $this->getRequestVar('dec_point'); + $this->element->thousandSep = $this->getRequestVar('thousand_sep'); + $this->element->folderObjectId = $this->getRequestVar('folderobjectid' ); + $this->element->defaultObjectId = $this->getRequestVar('default_objectid'); + + if ( $this->hasRequestVar('select_items')) + $this->element->code = $this->getRequestVar('select_items'); + else + $this->element->code = $this->getRequestVar('code' ,'raw'); + + if ( $this->hasRequestVar('name') ) + $this->element->name = $this->getRequestVar('name'); + + if ( $this->hasRequestVar('linkelement') ) + $this->element->setPrefix( $this->getRequestVar('linkelement') ); + + if ( $this->hasRequestVar('parameters')) + $this->element->code = $this->getRequestVar('parameters',OR_FILTER_RAW); + + $this->element->save(); + $this->addNotice('element',$this->element->name,'SAVED'); + + } - // Name und Beschreibung - $this->setTemplateVar('name' ,$this->element->name); - $this->setTemplateVar('label' ,$this->element->label); - $this->setTemplateVar('description',$this->element->desc); - } - - - public function advancedView() { - // Die verschiedenen Element-Typen - $types = array(); + global $conf; + $this->setTemplateVar('type',$this->element->getTypeName() ); + + // Abhaengig vom aktuellen Element-Typ die Eigenschaften anzeigen + $properties = $this->element->getRelatedProperties(); + + foreach( $this->element->getRelatedProperties() as $propertyName ) + { + switch( $propertyName ) + { + case 'withIcon': + $this->setTemplateVar('with_icon' ,$this->element->withIcon ); + break; + + case 'allLanguages': + $this->setTemplateVar('all_languages',$this->element->allLanguages); + break; + + case 'writable': + $this->setTemplateVar('writable' ,$this->element->writable ); + break; + + case 'inherit': + $this->setTemplateVar('inherit' ,$this->element->inherit ); + break; + + case 'html': + $this->setTemplateVar('html' ,$this->element->html ); + break; + + case 'subtype': + + $convertToLang = false; + switch( $this->element->typeid ) + { + case Element::ELEMENT_TYPE_INFO: + $subtypes = Array('db_id', + 'db_name', + 'project_id', + 'project_name', + 'language_id', + 'language_iso', + 'language_name', + 'page_id', + 'page_name', + 'page_desc', + 'page_fullfilename', + 'page_filename', + 'page_extension', + 'edit_url', + 'edit_fullurl', + 'lastch_user_username', + 'lastch_user_fullname', + 'lastch_user_mail', + 'lastch_user_desc', + 'lastch_user_tel', + 'create_user_username', + 'create_user_fullname', + 'create_user_mail', + 'create_user_desc', + 'create_user_tel', + 'act_user_username', + 'act_user_fullname', + 'act_user_mail', + 'act_user_desc', + 'act_user_tel' ); + $convertToLang = true; + break; + + case Element::ELEMENT_TYPE_INFODATE: + case Element::ELEMENT_TYPE_LINKDATE: + $subtypes = Array('date_published', + 'date_saved', + 'date_created' ); + $convertToLang = true; + break; + + case Element::ELEMENT_TYPE_LINK: + $subtypes = Array( + 'file', + 'image', + 'image_data_uri', + 'page', + 'folder', + 'link' ); + $convertToLang = true; + break; + + case Element::ELEMENT_TYPE_LINKINFO: + $subtypes = Array('width', + 'height', + 'id', + 'name', + 'description', + 'mime-type', + 'lastch_user_username', + 'lastch_user_fullname', + 'lastch_user_mail', + 'lastch_user_desc', + 'lastch_user_tel', + 'create_user_username', + 'create_user_fullname', + 'create_user_mail', + 'create_user_desc', + 'create_user_tel', + 'filename', + 'full_filename' ); + $convertToLang = true; + break; - foreach( $this->element->getAvailableTypes() as $typeid=>$t ) - $types[ $typeid ] = 'EL_'.$t; + case Element::ELEMENT_TYPE_INSERT: + $subtypes = Array('inline', + 'ssi' ); + $convertToLang = true; + break; - // Code-Element nur fuer Administratoren (da voller Systemzugriff!) - if ( !$this->userIsAdmin() ) - unset( $types['code'] ); - - // Liste aller Elementtypen - $this->setTemplateVar('types',$types); - - // Aktueller Typ - $this->setTemplateVar('typeid',$this->element->typeid); - } - + case Element::ELEMENT_TYPE_DYNAMIC: - - /** - * Auswahlmaske f�r weitere Einstellungen zum Template-Element. - * - */ - function infoView() - { - $this->setTemplateVar('id' ,$this->element->elementid ); - $this->setTemplateVar('name',$this->element->name ); - } - - /** - * Auswahlmaske f�r weitere Einstellungen zum Template-Element. - * - */ - function propView() - { - global $conf; - $this->setTemplateVar('type',$this->element->getTypeName() ); - - // Abhaengig vom aktuellen Element-Typ die Eigenschaften anzeigen - $properties = $this->element->getRelatedProperties(); + $files = Array(); + $macroFiles = \FileUtils::readDir(__DIR__.'/../../cms-macros/macro'); + foreach( $macroFiles as $macroFile ) + { + $file = substr($macroFile,0,strlen($macroFile)-10); + if ( $file != '' ) + $files[$file] = $file; + } - foreach( $this->element->getRelatedProperties() as $propertyName ) - { - switch( $propertyName ) - { - case 'withIcon': - $this->setTemplateVar('with_icon' ,$this->element->withIcon ); - break; - - case 'allLanguages': - $this->setTemplateVar('all_languages',$this->element->allLanguages); - break; - - case 'writable': - $this->setTemplateVar('writable' ,$this->element->writable ); - break; - - case 'inherit': - $this->setTemplateVar('inherit' ,$this->element->inherit ); - break; - - case 'html': - $this->setTemplateVar('html' ,$this->element->html ); - break; - - case 'subtype': - - $convertToLang = false; - switch( $this->element->typeid ) - { - case Element::ELEMENT_TYPE_INFO: - $subtypes = Array('db_id', - 'db_name', - 'project_id', - 'project_name', - 'language_id', - 'language_iso', - 'language_name', - 'page_id', - 'page_name', - 'page_desc', - 'page_fullfilename', - 'page_filename', - 'page_extension', - 'edit_url', - 'edit_fullurl', - 'lastch_user_username', - 'lastch_user_fullname', - 'lastch_user_mail', - 'lastch_user_desc', - 'lastch_user_tel', - 'create_user_username', - 'create_user_fullname', - 'create_user_mail', - 'create_user_desc', - 'create_user_tel', - 'act_user_username', - 'act_user_fullname', - 'act_user_mail', - 'act_user_desc', - 'act_user_tel' ); - $convertToLang = true; - break; - - case Element::ELEMENT_TYPE_INFODATE: - case Element::ELEMENT_TYPE_LINKDATE: - $subtypes = Array('date_published', - 'date_saved', - 'date_created' ); - $convertToLang = true; - break; - - case Element::ELEMENT_TYPE_LINK: - $subtypes = Array( - 'file', - 'image', - 'image_data_uri', - 'page', - 'folder', - 'link' ); - $convertToLang = true; - break; - - case Element::ELEMENT_TYPE_LINKINFO: - $subtypes = Array('width', - 'height', - 'id', - 'name', - 'description', - 'mime-type', - 'lastch_user_username', - 'lastch_user_fullname', - 'lastch_user_mail', - 'lastch_user_desc', - 'lastch_user_tel', - 'create_user_username', - 'create_user_fullname', - 'create_user_mail', - 'create_user_desc', - 'create_user_tel', - 'filename', - 'full_filename' ); - $convertToLang = true; - break; + $subtypes = $files; + break; - case Element::ELEMENT_TYPE_INSERT: - $subtypes = Array('inline', - 'ssi' ); - $convertToLang = true; - break; - - case Element::ELEMENT_TYPE_DYNAMIC: - - $files = Array(); - $macroFiles = \FileUtils::readDir(__DIR__.'/../../cms-macros/macro'); - foreach( $macroFiles as $macroFile ) - { - $file = substr($macroFile,0,strlen($macroFile)-10); - if ( $file != '' ) - $files[$file] = $file; - } - - $subtypes = $files; - break; - - default: - $subtypes = array(); - break; - } - - if ( $convertToLang ) - { - foreach( $subtypes as $t=>$v ) - { - unset($subtypes[$t]); - $subtypes[$v] = lang('EL_'.$this->element->getTypeName().'_'.$v); - } - } - - // Variable $subtype muss existieren, um Anzeige des Feldes zu erzwingen. - if (!isset($this->element->subtype)) - $this->element->subtype=''; - - $this->setTemplateVar('subtypes',$subtypes ); - $this->setTemplateVar('subtype' ,$this->element->subtype); - - break; - - - case 'dateformat': - - //$ini_date_format = config('date','format'); - //$ini_date_format = Conf()->subset('date')->get('format'); - $ini_date_format = config()['date']['format']; - $dateformat = array(); - - $this->setTemplateVar('dateformat',''); - - foreach($ini_date_format as $idx=>$d) - { - if ( strpos($d,'%')!==FALSE ) - $dateformat[$idx] = strftime($d); - else - $dateformat[$idx] = date($d); - if ( $d == $this->element->dateformat ) - $this->setTemplateVar('dateformat',$idx); - } - - $this->setTemplateVar('dateformats',$dateformat); - - break; - - - // Eigenschaften Text und Text-Absatz - case 'defaultText': - - switch( $this->element->typeid ) - { - case Element::ELEMENT_TYPE_LONGTEXT: - $this->setTemplateVar('default_longtext',$this->element->defaultText ); - break; - - case Element::ELEMENT_TYPE_SELECT: - case Element::ELEMENT_TYPE_TEXT: - $this->setTemplateVar('default_text' ,$this->element->defaultText ); - break; - } - break; - - - case 'format': - $this->setTemplateVar('format', $this->element->format ); + default: + $subtypes = array(); + break; + } + + if ( $convertToLang ) + { + foreach( $subtypes as $t=>$v ) + { + unset($subtypes[$t]); + $subtypes[$v] = lang('EL_'.$this->element->getTypeName().'_'.$v); + } + } + + // Variable $subtype muss existieren, um Anzeige des Feldes zu erzwingen. + if (!isset($this->element->subtype)) + $this->element->subtype=''; + + $this->setTemplateVar('subtypes',$subtypes ); + $this->setTemplateVar('subtype' ,$this->element->subtype); + + break; + + + case 'dateformat': + + //$ini_date_format = config('date','format'); + //$ini_date_format = Conf()->subset('date')->get('format'); + $ini_date_format = config()['date']['format']; + $dateformat = array(); + + $this->setTemplateVar('dateformat',''); + + foreach($ini_date_format as $idx=>$d) + { + if ( strpos($d,'%')!==FALSE ) + $dateformat[$idx] = strftime($d); + else + $dateformat[$idx] = date($d); + if ( $d == $this->element->dateformat ) + $this->setTemplateVar('dateformat',$idx); + } + + $this->setTemplateVar('dateformats',$dateformat); + + break; + + + // Eigenschaften Text und Text-Absatz + case 'defaultText': + + switch( $this->element->typeid ) + { + case Element::ELEMENT_TYPE_LONGTEXT: + $this->setTemplateVar('default_longtext',$this->element->defaultText ); + break; + + case Element::ELEMENT_TYPE_SELECT: + case Element::ELEMENT_TYPE_TEXT: + $this->setTemplateVar('default_text' ,$this->element->defaultText ); + break; + } + break; + + + case 'format': + $this->setTemplateVar('format', $this->element->format ); $formats = Element::getAvailableFormats(); @@ -382,237 +352,279 @@ class ElementAction extends Action $formats[$t] = array('lang'=>'EL_PROP_FORMAT_'.$v); $this->setTemplateVar('formatlist', $formats); - break; - - case 'linktype': - $this->setTemplateVar('linktype', $this->element->wiki ); - $this->setTemplateVar('linktypelist', array('page','file','link') ); - break; - - case 'prefix': - $t = new Template( $this->element->templateid ); - - $elements = array(); - foreach( $t->getElements() as $element ) - { - if ( $element->type == 'link' ) - $elements[$element->name] = $element->name; - } - unset($t); - - $this->setTemplateVar('linkelements',$elements ); - - list($linkElementName,$targetElementName) = explode('%',$this->element->name.'%'); - $this->setTemplateVar('linkelement',$linkElementName ); - - break; - - case 'name': - - $names = array(); + break; + + case 'linktype': + $this->setTemplateVar('linktype', $this->element->wiki ); + $this->setTemplateVar('linktypelist', array('page','file','link') ); + break; + + case 'prefix': + $t = new Template( $this->element->templateid ); + + $elements = array(); + foreach( $t->getElements() as $element ) + { + if ( $element->type == 'link' ) + $elements[$element->name] = $element->name; + } + unset($t); + + $this->setTemplateVar('linkelements',$elements ); + + list($linkElementName,$targetElementName) = explode('%',$this->element->name.'%'); + $this->setTemplateVar('linkelement',$linkElementName ); + + break; + + case 'name': + + $names = array(); $template = new Template( $this->element->templateid ); $template->load(); $project = new Project( $template->projectid ); foreach( $project->getTemplates() as $tid=>$name ) - { - $t = new Template( $tid ); - $t->load(); - - foreach( $t->getElements() as $element ) - { - if ( !in_array($element->type,array('copy','linkinfo','link')) ) - $names[$element->name] = $t->name.' - '.$element->name.' ('.lang('EL_'.$element->type).')'; - } - unset($t); - } - - - $this->setTemplateVar('names',$names ); - - list($linkElementName,$targetElementName) = explode('%',$this->element->name.'%'); - $this->setTemplateVar('name',$targetElementName ); - break; - - // Eigenschaften PHP-Code - case 'code': - - switch( $this->element->typeid ) - { - - case Element::ELEMENT_TYPE_SELECT: - $this->setTemplateVar('select_items',$this->element->code ); - break; - - case Element::ELEMENT_TYPE_DYNAMIC: - - $className = $this->element->subtype; - $fileName = OR_DYNAMICCLASSES_DIR.'/'.$className.'.class.'.PHP_EXT; - - if ( is_file( $fileName ) ) - { - require( $fileName ); - - if ( class_exists($className) ) - { - $dynEl = new $className; - - $desc = array(); - - $description = $dynEl->description; - $paramList = array(); - - $old = $this->element->getDynamicParameters(); - $parameters = ''; - - foreach( get_object_vars($dynEl) as $paramName=>$paramDesc ) - { - if ( isset( $dynEl->$paramName ) ) - { - if ( is_object($dynEl->$paramName)) - continue; - if ( is_array($dynEl->$paramName)) - continue; - if ( in_array($paramName,array('output'))) - continue; - $paramList[$paramName] = $dynEl->$paramName; - - $parameters .= $paramName.':'; - if ( !empty($old[$paramName]) ) - $parameters .= $old[$paramName]; - else - $parameters .= $dynEl->$paramName; - $parameters .= "\n"; - } - } - - $this->setTemplateVar('dynamic_class_description',$dynEl->description ); - $this->setTemplateVar('dynamic_class_parameters' ,$paramList ); - $this->setTemplateVar('parameters' ,$parameters ); - } - } - - break; - - case Element::ELEMENT_TYPE_CODE: - if ( $conf['security']['disable_dynamic_code'] ) - $this->addNotice('element',$this->element->name,'CODE_DISABLED',OR_NOTICE_WARN); - - $this->setTemplateVar('code',$this->element->code); - break; - } - break; - - - case 'decimals': - $this->setTemplateVar('decimals' ,$this->element->decimals ); - break; - - case 'decPoint': - $this->setTemplateVar('dec_point' ,$this->element->decPoint ); - break; - - case 'thousandSep': - $this->setTemplateVar('thousand_sep' ,$this->element->thousandSep ); - break; - - - // Eigenschaften Link - case 'defaultObjectId': - - $objects = array(); - - $template = new Template( $this->element->templateid ); - $template->load(); - $project = new Project( $template->projectid ); - - // Ermitteln aller verfuegbaren Objekt-IDs - foreach( $project->getAllObjectIds() as $id ) - { - $o = new BaseObject( $id ); - $o->load(); - - switch( $this->element->typeid ) - { - case Element::ELEMENT_TYPE_LINK: - if ( ! in_array( $o->typeid, array(BaseObject::TYPEID_PAGE,BaseObject::TYPEID_IMAGE,BaseObject::TYPEID_FILE,BaseObject::TYPEID_LINK,BaseObject::TYPEID_URL,BaseObject::TYPEID_TEXT ) ) ) - continue 2; - break; - //Change tobias - case Element::ELEMENT_TYPE_INSERT: + { + $t = new Template( $tid ); + $t->load(); + + foreach( $t->getElements() as $element ) + { + if ( !in_array($element->type,array('copy','linkinfo','link')) ) + $names[$element->name] = $t->name.' - '.$element->name.' ('.lang('EL_'.$element->type).')'; + } + unset($t); + } + + + $this->setTemplateVar('names',$names ); + + list($linkElementName,$targetElementName) = explode('%',$this->element->name.'%'); + $this->setTemplateVar('name',$targetElementName ); + break; + + // Eigenschaften PHP-Code + case 'code': + + switch( $this->element->typeid ) + { + + case Element::ELEMENT_TYPE_SELECT: + $this->setTemplateVar('select_items',$this->element->code ); + break; + + case Element::ELEMENT_TYPE_DYNAMIC: + + $className = $this->element->subtype; + $fileName = OR_DYNAMICCLASSES_DIR.'/'.$className.'.class.'.PHP_EXT; + + if ( is_file( $fileName ) ) + { + require( $fileName ); + + if ( class_exists($className) ) + { + $dynEl = new $className; + + $desc = array(); + + $description = $dynEl->description; + $paramList = array(); + + $old = $this->element->getDynamicParameters(); + $parameters = ''; + + foreach( get_object_vars($dynEl) as $paramName=>$paramDesc ) + { + if ( isset( $dynEl->$paramName ) ) + { + if ( is_object($dynEl->$paramName)) + continue; + if ( is_array($dynEl->$paramName)) + continue; + if ( in_array($paramName,array('output'))) + continue; + $paramList[$paramName] = $dynEl->$paramName; + + $parameters .= $paramName.':'; + if ( !empty($old[$paramName]) ) + $parameters .= $old[$paramName]; + else + $parameters .= $dynEl->$paramName; + $parameters .= "\n"; + } + } + + $this->setTemplateVar('dynamic_class_description',$dynEl->description ); + $this->setTemplateVar('dynamic_class_parameters' ,$paramList ); + $this->setTemplateVar('parameters' ,$parameters ); + } + } + + break; + + case Element::ELEMENT_TYPE_CODE: + if ( $conf['security']['disable_dynamic_code'] ) + $this->addNotice('element',$this->element->name,'CODE_DISABLED',OR_NOTICE_WARN); + + $this->setTemplateVar('code',$this->element->code); + break; + } + break; + + + case 'decimals': + $this->setTemplateVar('decimals' ,$this->element->decimals ); + break; + + case 'decPoint': + $this->setTemplateVar('dec_point' ,$this->element->decPoint ); + break; + + case 'thousandSep': + $this->setTemplateVar('thousand_sep' ,$this->element->thousandSep ); + break; + + + // Eigenschaften Link + case 'defaultObjectId': + + $objects = array(); + + $template = new Template( $this->element->templateid ); + $template->load(); + $project = new Project( $template->projectid ); + + // Ermitteln aller verfuegbaren Objekt-IDs + foreach( $project->getAllObjectIds() as $id ) + { + $o = new BaseObject( $id ); + $o->load(); + + switch( $this->element->typeid ) + { + case Element::ELEMENT_TYPE_LINK: + if ( ! in_array( $o->typeid, array(BaseObject::TYPEID_PAGE,BaseObject::TYPEID_IMAGE,BaseObject::TYPEID_FILE,BaseObject::TYPEID_LINK,BaseObject::TYPEID_URL,BaseObject::TYPEID_TEXT ) ) ) + continue 2; + break; + //Change tobias + case Element::ELEMENT_TYPE_INSERT: if ( ! in_array( $o->typeid, array(BaseObject::TYPEID_FOLDER,BaseObject::TYPEID_PAGE,BaseObject::TYPEID_IMAGE,BaseObject::TYPEID_FILE,BaseObject::TYPEID_LINK,BaseObject::TYPEID_URL,BaseObject::TYPEID_TEXT ) ) ) - continue 2; - break; - //Change tobias end - default: - continue 2; - } - - $objects[ $id ] = lang( $o->getType() ).': '; - - if ( !$o->isRoot ) - { - $f = new Folder( $o->parentid ); - $f->load(); - $names = $f->parentObjectNames(false,true); - foreach( $names as $fid=>$name ) - $names[$fid] = Text::maxLength($name,15,'..',STR_PAD_BOTH); - $objects[ $id ] .= implode( FILE_SEP,$names ); - } - - $objects[ $id ] .= FILE_SEP.$o->name; - } - - asort( $objects ); // Sortieren - - $this->setTemplateVar('objects',$objects); - - $this->setTemplateVar('default_objectid',$this->element->defaultObjectId); - - break; + continue 2; + break; + //Change tobias end + default: + continue 2; + } + $objects[ $id ] = lang( $o->getType() ).': '; - case 'folderObjectId': + if ( !$o->isRoot ) + { + $f = new Folder( $o->parentid ); + $f->load(); + $names = $f->parentObjectNames(false,true); + foreach( $names as $fid=>$name ) + $names[$fid] = Text::maxLength($name,15,'..',STR_PAD_BOTH); + $objects[ $id ] .= implode( FILE_SEP,$names ); + } - $folders = array(); - - // Ermitteln aller verf?gbaren Objekt-IDs + $objects[ $id ] .= FILE_SEP.$o->name; + } + + asort( $objects ); // Sortieren + + $this->setTemplateVar('objects',$objects); + + $this->setTemplateVar('default_objectid',$this->element->defaultObjectId); + + break; + + + case 'folderObjectId': + + $folders = array(); + + // Ermitteln aller verf?gbaren Objekt-IDs $template = new Template( $this->element->templateid ); $template->load(); $project = new Project( $template->projectid ); foreach( $project->getAllFolders() as $id ) - { - $o = new BaseObject( $id ); - $o->load(); - - $folders[ $id ] = ''; - if ( !$o->isRoot ) - { - $f = new Folder( $o->parentid ); - $f->load(); - $names = $f->parentObjectNames(true,true); - foreach( $names as $fid=>$name ) - $names[$fid] = Text::maxLength($name,15,'..',STR_PAD_BOTH); - $folders[ $id ] = implode( ' &raquo; ',$names ); - $folders[ $id ] .= ' &raquo; '; - } - $folders[ $id ] .= $o->name; - } - - asort( $folders ); // Sortieren + { + $o = new BaseObject( $id ); + $o->load(); + + $folders[ $id ] = ''; + if ( !$o->isRoot ) + { + $f = new Folder( $o->parentid ); + $f->load(); + $names = $f->parentObjectNames(true,true); + foreach( $names as $fid=>$name ) + $names[$fid] = Text::maxLength($name,15,'..',STR_PAD_BOTH); + $folders[ $id ] = implode( ' &raquo; ',$names ); + $folders[ $id ] .= ' &raquo; '; + } + $folders[ $id ] .= $o->name; + } + + asort( $folders ); // Sortieren + + $this->setTemplateVar('folders',$folders); + + $this->setTemplateVar('folderobjectid' ,$this->element->folderObjectId ); + + break; + + default: + throw new \LogicException('Unknown element property: '.$propertyName ); + } + } + } - $this->setTemplateVar('folders',$folders); + - $this->setTemplateVar('folderobjectid' ,$this->element->folderObjectId ); + /** + * Auswahlmaske f�r weitere Einstellungen zum Template-Element. + * + */ + function infoView() + { + $this->setTemplateVar('id' ,$this->element->elementid ); + $this->setTemplateVar('name',$this->element->name ); + $this->setTemplateVar('type',$this->element->getTypeName() ); + } - break; + /** + * Auswahlmaske f�r weitere Einstellungen zum Template-Element. + * + */ + function propView() + { + // Name und Beschreibung + $this->setTemplateVar('name' ,$this->element->name); + $this->setTemplateVar('label' ,$this->element->label); - default: - throw new \LogicException('Unknown element property: '.$propertyName ); - } - } + $this->setTemplateVar('description',$this->element->desc); + + // Die verschiedenen Element-Typen + $types = array(); + + foreach( Element::getAvailableTypes() as $typeId=>$typeKey ) + $types[ $typeId ] = 'EL_'.$typeKey; + + // Code-Element nur fuer Administratoren (da voller Systemzugriff!) + if ( !$this->userIsAdmin() ) + unset( $types['code'] ); + + // Liste aller Elementtypen + $this->setTemplateVar('types',$types); + + // Aktueller Typ + $this->setTemplateVar('typeid',$this->element->typeid); } @@ -622,54 +634,19 @@ class ElementAction extends Action */ function propPost() { - global $conf; - $ini_date_format = config('date','format'); - - - if ( $this->hasRequestVar('format')) - $this->element->format = $this->getRequestId('format'); + if ( !$this->userIsAdmin() && $this->getRequestVar('type') == 'code' ) + // Code-Elemente fuer Nicht-Administratoren nicht benutzbar + throw new \ValidationException('type'); + $this->element->typeid = $this->getRequestId('typeid'); - if ( $this->hasRequestVar('dateformat')) - $this->element->dateformat = $ini_date_format[$this->getRequestVar('dateformat')]; + $this->element->name = $this->getRequestVar('name' ,OR_FILTER_ALPHANUM); + $this->element->label= $this->getRequestVar('label' ,OR_FILTER_ALPHANUM); + $this->element->desc = $this->getRequestVar('description','all' ); + $this->element->save(); - if ( $this->hasRequestVar('default_longtext')) - $this->element->defaultText = $this->getRequestVar('default_longtext',OR_FILTER_RAW); - else - $this->element->defaultText = $this->getRequestVar('default_text',OR_FILTER_ALPHANUM); - - $this->element->subtype = $this->getRequestVar('subtype'); - - $this->element->html = $this->hasRequestVar('html'); - $this->element->withIcon = $this->hasRequestVar('with_icon'); - $this->element->allLanguages = $this->hasRequestVar('all_languages'); - $this->element->writable = $this->hasRequestVar('writable'); - $this->element->inherit = $this->hasRequestVar('inherit'); - - $this->element->decimals = $this->getRequestVar('decimals'); - $this->element->decPoint = $this->getRequestVar('dec_point'); - $this->element->thousandSep = $this->getRequestVar('thousand_sep'); - $this->element->folderObjectId = $this->getRequestVar('folderobjectid' ); - $this->element->defaultObjectId = $this->getRequestVar('default_objectid'); - - if ( $this->hasRequestVar('select_items')) - $this->element->code = $this->getRequestVar('select_items'); - else - $this->element->code = $this->getRequestVar('code' ,'raw'); - - if ( $this->hasRequestVar('name') ) - $this->element->name = $this->getRequestVar('name'); - - if ( $this->hasRequestVar('linkelement') ) - $this->element->setPrefix( $this->getRequestVar('linkelement') ); - - if ( $this->hasRequestVar('parameters')) - $this->element->code = $this->getRequestVar('parameters',OR_FILTER_RAW); - - $this->element->save(); - $this->addNotice('element',$this->element->name,'SAVED'); - + $this->addNotice('element',$this->element->name,'SAVED',OR_NOTICE_OK); } } diff --git a/modules/cms-ui/themes/default/html/views/element/advanced.php b/modules/cms-ui/themes/default/html/views/element/advanced.php @@ -1,19 +1,349 @@ - - + <?php $if2=(config('security','disable_dynamic_code')); if($if2){?> + <?php $if3=(!'1'); if($if3){?> + <div class="message warn"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'NOTICE_CODE_DISABLED'.'')))); ?></span> + + </div> + <?php } ?> + <?php } ?> <form name="" target="_self" data-target="view" action="./" data-method="advanced" data-action="element" data-id="<?php echo OR_ID ?>" method="POST" enctype="application/x-www-form-urlencoded" class="or-form element" data-async="" data-autosave=""><input type="hidden" name="<?php echo REQ_PARAM_EMBED ?>" value="1" /><input type="hidden" name="<?php echo REQ_PARAM_TOKEN ?>" value="<?php echo token() ?>" /><input type="hidden" name="<?php echo REQ_PARAM_ACTION ?>" value="element" /><input type="hidden" name="<?php echo REQ_PARAM_SUBACTION ?>" value="advanced" /><input type="hidden" name="<?php echo REQ_PARAM_ID ?>" value="<?php echo OR_ID ?>" /> - <fieldset class="toggle-open-close<?php echo '1'?" open":" closed" ?><?php echo '1'?" show":"" ?>"><div> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_TYPE')))); ?></span> - + <fieldset class="toggle-open-close<?php echo '1'?" open":" closed" ?><?php echo '1'?" show":"" ?>"><div class="closable"> + <?php $if4=(isset($subtype)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_SUBTYPE')))); ?></span> + + </div> + <div class="input"> + <?php $if7=(isset($subtypes)); if($if7){?> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_subtype" name="subtype" title="" class="" size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($subtypes,$subtype,1,0) ?><?php if (count($subtypes)==0) { ?><input type="hidden" name="subtype" value="" /><?php } ?><?php if (count($subtypes)==1) { ?><input type="hidden" name="subtype" value="<?php echo array_keys($subtypes)[0] ?>" /><?php } ?> + </select></div> + <?php } ?> + <?php $if7=!(isset($subtypes)); if($if7){?> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_subtype" name="<?php if ('') echo ''.'_' ?>subtype<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$subtype) ?>" /><?php if ('') { ?><input type="hidden" name="subtype" value="<?php $subtype ?>"/><?php } ?></div> + + <?php } ?> + </div> </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_typeid" name="typeid" title="" class=""<?php if (count($types)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($types,$typeid,0,1) ?><?php if (count($types)==0) { ?><input type="hidden" name="typeid" value="" /><?php } ?><?php if (count($types)==1) { ?><input type="hidden" name="typeid" value="<?php echo array_keys($types)[0] ?>" /><?php } ?> - </select></div> + <?php } ?> + <?php $if4=(isset($with_icon)); if($if4){?> + <div class="line"> + <div class="label"> + </div> + <div class="input"> + <?php { $tmpname = 'with_icon';$default = '';$readonly = '';$required = ''; + if ( isset($$tmpname) ) + $checked = $$tmpname; + else + $checked = $default; + + ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php + + if ( $readonly && $checked ) + { + ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php + } + } ?> + + <label for="<?php echo REQUEST_ID ?>_with_icon" class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_WITH_ICON')))); ?></span> + + </label> + </div> </div> - </div> + <?php } ?> + <?php $if4=(isset($inherit)); if($if4){?> + <div class="line"> + <div class="label"> + </div> + <div class="input"> + <?php { $tmpname = 'inherit';$default = '';$readonly = '';$required = ''; + if ( isset($$tmpname) ) + $checked = $$tmpname; + else + $checked = $default; + + ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php + + if ( $readonly && $checked ) + { + ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php + } + } ?> + + <label for="<?php echo REQUEST_ID ?>_inherit" class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_INHERIT')))); ?></span> + + </label> + </div> + </div> + <?php } ?> + <?php $if4=(isset($all_languages)); if($if4){?> + <div class="line"> + <div class="label"> + </div> + <div class="input"> + <?php { $tmpname = 'all_languages';$default = '';$readonly = '';$required = ''; + if ( isset($$tmpname) ) + $checked = $$tmpname; + else + $checked = $default; + + ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php + + if ( $readonly && $checked ) + { + ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php + } + } ?> + + <label for="<?php echo REQUEST_ID ?>_all_languages" class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_ALL_LANGUAGES')))); ?></span> + + </label> + </div> + </div> + <?php } ?> + <?php $if4=(isset($writable)); if($if4){?> + <div class="line"> + <div class="label"> + </div> + <div class="input"> + <?php { $tmpname = 'writable';$default = '';$readonly = '';$required = ''; + if ( isset($$tmpname) ) + $checked = $$tmpname; + else + $checked = $default; + + ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php + + if ( $readonly && $checked ) + { + ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php + } + } ?> + + <label for="<?php echo REQUEST_ID ?>_writable" class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_writable')))); ?></span> + + </label> + </div> + </div> + <?php } ?> + <?php $if4=(isset($width)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('width')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_width" name="<?php if ('') echo ''.'_' ?>width<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$width) ?>" /><?php if ('') { ?><input type="hidden" name="width" value="<?php $width ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($height)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('height')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_height" name="<?php if ('') echo ''.'_' ?>height<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$height) ?>" /><?php if ('') { ?><input type="hidden" name="height" value="<?php $height ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($dateformat)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DATEFORMAT')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_dateformat" name="dateformat" title="" class=""<?php if (count($dateformats)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($dateformats,$dateformat,0,0) ?><?php if (count($dateformats)==0) { ?><input type="hidden" name="dateformat" value="" /><?php } ?><?php if (count($dateformats)==1) { ?><input type="hidden" name="dateformat" value="<?php echo array_keys($dateformats)[0] ?>" /><?php } ?> + </select></div> + </div> + </div> + <?php } ?> + <?php $if4=(isset($format)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_FORMAT')))); ?></span> + + </div> + <div class="input"> + <?php include_once( 'modules/template-engine/components/html/radiobox/component-radio-box.php') ?><?php component_radio_box('format',$formatlist,$format) ?> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($decimals)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DECIMALS')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_decimals" name="<?php if ('') echo ''.'_' ?>decimals<?php if ('') echo '_disabled' ?>" type="text" maxlength="2" class="" value="<?php echo Text::encodeHtml(@$decimals) ?>" /><?php if ('') { ?><input type="hidden" name="decimals" value="<?php $decimals ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($dec_point)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEC_POINT')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_dec_point" name="<?php if ('') echo ''.'_' ?>dec_point<?php if ('') echo '_disabled' ?>" type="text" maxlength="5" class="" value="<?php echo Text::encodeHtml(@$dec_point) ?>" /><?php if ('') { ?><input type="hidden" name="dec_point" value="<?php $dec_point ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($thousand_sep)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_thousand_sep')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_thousand_sep" name="<?php if ('') echo ''.'_' ?>thousand_sep<?php if ('') echo '_disabled' ?>" type="text" maxlength="1" class="" value="<?php echo Text::encodeHtml(@$thousand_sep) ?>" /><?php if ('') { ?><input type="hidden" name="thousand_sep" value="<?php $thousand_sep ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($default_text)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_default_text')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_default_text" name="<?php if ('') echo ''.'_' ?>default_text<?php if ('') echo '_disabled' ?>" type="text" maxlength="255" class="" value="<?php echo Text::encodeHtml(@$default_text) ?>" /><?php if ('') { ?><input type="hidden" name="default_text" value="<?php $default_text ?>"/><?php } ?></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($default_longtext)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_default_longtext')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>default_longtext<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($default_longtext) ?></textarea></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($parameters)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DYNAMIC_PARAMETERS')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>parameters<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($parameters) ?></textarea></div> + + </div> + </div> + <div class="line"> + <div class="label"> + </div> + <div class="input"> + <?php foreach($dynamic_class_parameters as $paramName=>$defaultValue){ ?> + <span><?php echo nl2br(encodeHtml(htmlentities($paramName))); ?></span> + + <span><?php echo nl2br('&nbsp;('); ?></span> + + <span><?php echo nl2br(encodeHtml(htmlentities(lang('GLOBAL_DEFAULT')))); ?></span> + + <span><?php echo nl2br(')&nbsp;=&nbsp;'); ?></span> + + <span><?php echo nl2br(encodeHtml(htmlentities($defaultValue))); ?></span> + + <br/> + + <?php } ?> + </div> + </div> + <?php } ?> + <?php $if4=(isset($select_items)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_select_items')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>select_items<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($select_items) ?></textarea></div> + + </div> + </div> + <?php } ?> + <?php $if4=(isset($linkelement)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_LINK')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_linkelement" name="linkelement" title="" class=""<?php if (count($linkelements)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($linkelements,$linkelement,0,0) ?><?php if (count($linkelements)==0) { ?><input type="hidden" name="linkelement" value="" /><?php } ?><?php if (count($linkelements)==1) { ?><input type="hidden" name="linkelement" value="<?php echo array_keys($linkelements)[0] ?>" /><?php } ?> + </select></div> + </div> + </div> + <?php } ?> + <?php $if4=(isset($name)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_NAME')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_name" name="name" title="" class=""<?php if (count($names)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($names,$name,0,0) ?><?php if (count($names)==0) { ?><input type="hidden" name="name" value="" /><?php } ?><?php if (count($names)==1) { ?><input type="hidden" name="name" value="<?php echo array_keys($names)[0] ?>" /><?php } ?> + </select></div> + </div> + </div> + <?php } ?> + <?php $if4=(isset($folderobjectid)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEFAULT_FOLDEROBJECT')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_folderobjectid" name="folderobjectid" title="" class=""<?php if (count($folders)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($folders,$folderobjectid,0,0) ?><?php if (count($folders)==0) { ?><input type="hidden" name="folderobjectid" value="" /><?php } ?><?php if (count($folders)==1) { ?><input type="hidden" name="folderobjectid" value="<?php echo array_keys($folders)[0] ?>" /><?php } ?> + </select></div> + </div> + </div> + <?php } ?> + <?php $if4=(isset($default_objectid)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEFAULT_OBJECT')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_default_objectid" name="default_objectid" title="" class="" size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($objects,$default_objectid,1,0) ?><?php if (count($objects)==0) { ?><input type="hidden" name="default_objectid" value="" /><?php } ?><?php if (count($objects)==1) { ?><input type="hidden" name="default_objectid" value="<?php echo array_keys($objects)[0] ?>" /><?php } ?> + </select></div> + </div> + </div> + <?php } ?> + <?php $if4=(isset($code)); if($if4){?> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_code')))); ?></span> + + </div> + <div class="input"> + <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>code<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($code) ?></textarea></div> + + </div> + </div> + <?php } ?> </div></fieldset> - <div class="or-form-actionbar"><input type="submit" class="or-form-btn or-form-btn--primary" value="OK" /></div></form> + <div class="or-form-actionbar"><input type="button" class="or-form-btn or-form-btn--secondary or-form-btn--cancel" value="<?php echo lang("CANCEL") ?>" /><input type="submit" class="or-form-btn or-form-btn--primary" value="OK" /></div></form> \ No newline at end of file diff --git a/modules/cms-ui/themes/default/html/views/element/advanced.tpl.src.xml b/modules/cms-ui/themes/default/html/views/element/advanced.tpl.src.xml @@ -1,17 +1,254 @@ <output xmlns="http://www.openrat.de/template" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.openrat.de/template ../../../../../../template-engine/components/template.xsd"> - <header back="true"></header> - <form> - <group> - <part class="line"> - <part class="label"> - <text text="ELEMENT_TYPE"></text> - </part> - <part class="input"> - <selectbox name="typeid" list="types" lang="true"></selectbox> - </part> - </part> - </group> + xsi:schemaLocation="http://www.openrat.de/template ../../../../../../template-engine/components/template.xsd"> + <if true="config:security/disable_dynamic_code"> + <if value="var:type" equals="code" false="true"> + <part class="message warn"> + <text key="NOTICE_CODE_DISABLED"/> + </part> + </if> + </if> + <form> + <group> + <if present="subtype"> + <part class="line"> + <part class="label"> + <text text="ELEMENT_SUBTYPE"></text> + </part> + <part class="input"> + <if present="subtypes"> + <selectbox name="subtype" list="subtypes" addempty="true"></selectbox> + </if> + <if not="true" present="subtypes"> + <input name="subtype"></input> + </if> + </part> + </part> + </if> + <if present="with_icon"> + <part class="line"> + <part class="label"> + </part> + <part class="input"> + <checkbox name="with_icon"></checkbox> + <label for="with_icon"> + <text text="EL_PROP_WITH_ICON"></text> + </label> + </part> + </part> + </if> + <if present="inherit"> + <part class="line"> + <part class="label"> + </part> + <part class="input"> + <checkbox name="inherit"></checkbox> + <label for="inherit"> + <text text="EL_PROP_INHERIT"></text> + </label> + </part> + </part> + </if> + <if present="all_languages"> + <part class="line"> + <part class="label"> + </part> + <part class="input"> + <checkbox name="all_languages"></checkbox> + <label for="all_languages"> + <text text="EL_PROP_ALL_LANGUAGES"></text> + </label> + </part> + </part> + </if> + <if present="writable"> + <part class="line"> + <part class="label"> + </part> + <part class="input"> + <checkbox name="writable"></checkbox> + <label for="writable"> + <text text="EL_PROP_writable"></text> + </label> + </part> + </part> + </if> + <if present="width"> + <part class="line"> + <part class="label"> + <text text="width"></text> + </part> + <part class="input"> + <input size="10" name="width"></input> + </part> + </part> + + </if> + <if present="height"> + <part class="line"> + <part class="label"> + <text text="height"></text> + </part> + <part class="input"> + <input size="10" name="height"></input> + </part> + </part> + </if> + <if present="dateformat"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DATEFORMAT"></text> + </part> + <part class="input"> + <selectbox name="dateformat" list="dateformats"></selectbox> + </part> + </part> + </if> + <if present="format"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_FORMAT"></text> + </part> + <part class="input"> + <radiobox name="format" list="formatlist"></radiobox> + </part> + </part> + </if> + <if present="decimals"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DECIMALS"></text> + </part> + <part class="input"> + <input size="10" maxlength="2" name="decimals"></input> + </part> + </part> + </if> + <if present="dec_point"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DEC_POINT"></text> + </part> + <part class="input"> + <input size="10" maxlength="5" name="dec_point"></input> + </part> + </part> + </if> + <if present="thousand_sep"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_thousand_sep"></text> + </part> + <part class="input"> + <input size="10" maxlength="1" name="thousand_sep"></input> + </part> + </part> + </if> + <if present="default_text"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_default_text"></text> + </part> + <part class="input"> + <input size="40" maxlength="255" name="default_text"></input> + </part> + </part> + </if> + <if present="default_longtext"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_default_longtext"></text> + </part> + <part class="input"> + <inputarea rows="10" name="default_longtext"></inputarea> + </part> + </part> + </if> + <if present="parameters"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DYNAMIC_PARAMETERS"></text> + </part> + <part class="input"> + <inputarea rows="15" name="parameters"></inputarea> + </part> + </part> + <part class="line"> + <part class="label"> + </part> + <part class="input"> + <list list="dynamic_class_parameters" key="paramName" value="defaultValue"> + <text var="paramName"></text> + <text raw="_("></text> + <text text="GLOBAL_DEFAULT"></text> + <text raw=")_=_"></text> + <text var="defaultValue"></text> + <newline></newline> + </list> + </part> + </part> + </if> + <if present="select_items"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_select_items"></text> + </part> + <part class="input"> + <inputarea rows="15" cols="40" name="select_items"></inputarea> + </part> + </part> + </if> + <if present="linkelement"> + <part class="line"> + <part class="label"> + <text text="EL_LINK"></text> + </part> + <part class="input"> + <selectbox name="linkelement" list="linkelements"></selectbox> + </part> + </part> + </if> + <if present="name"> + <part class="line"> + <part class="label"> + <text text="ELEMENT_NAME"></text> + </part> + <part class="input"> + <selectbox name="name" list="names"></selectbox> + </part> + </part> + </if> + <if present="folderobjectid"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DEFAULT_FOLDEROBJECT"></text> + </part> + <part class="input"> + <selectbox name="folderobjectid" list="folders"></selectbox> + </part> + </part> + </if> + <if present="default_objectid"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_DEFAULT_OBJECT"></text> + </part> + <part class="input"> + <selectbox name="default_objectid" list="objects" + addempty="true"></selectbox> + </part> + </part> + </if> + <if present="code"> + <part class="line"> + <part class="label"> + <text text="EL_PROP_code"></text> + </part> + <part class="input"> + <inputarea name="code" rows="35"></inputarea> + </part> + </part> + </if> + </group> + </form> - </form> </output> \ No newline at end of file diff --git a/modules/cms-ui/themes/default/html/views/element/edit.php b/modules/cms-ui/themes/default/html/views/element/edit.php @@ -1,35 +0,0 @@ - - - <form name="" target="_self" data-target="view" action="./" data-method="edit" data-action="element" data-id="<?php echo OR_ID ?>" method="POST" enctype="application/x-www-form-urlencoded" class="or-form element" data-async="" data-autosave=""><input type="hidden" name="<?php echo REQ_PARAM_EMBED ?>" value="1" /><input type="hidden" name="<?php echo REQ_PARAM_TOKEN ?>" value="<?php echo token() ?>" /><input type="hidden" name="<?php echo REQ_PARAM_ACTION ?>" value="element" /><input type="hidden" name="<?php echo REQ_PARAM_SUBACTION ?>" value="edit" /><input type="hidden" name="<?php echo REQ_PARAM_ID ?>" value="<?php echo OR_ID ?>" /> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'LABEL'.'')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_label" name="<?php if ('') echo ''.'_' ?>label<?php if ('') echo '_disabled' ?>" required="required" autofocus="autofocus" type="text" maxlength="100" class="" value="<?php echo Text::encodeHtml(@$label) ?>" /><?php if ('') { ?><input type="hidden" name="label" value="<?php $label ?>"/><?php } ?></div> - - </div> - </div> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'NAME'.'')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_name" name="<?php if ('') echo ''.'_' ?>name<?php if ('') echo '_disabled' ?>" required="required" type="text" maxlength="50" class="" value="<?php echo Text::encodeHtml(@$name) ?>" /><?php if ('') { ?><input type="hidden" name="name" value="<?php $name ?>"/><?php } ?></div> - - </div> - </div> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('GLOBAL_DESCRIPTION')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>description<?php if ('') echo '_disabled' ?>" maxlength="255"><?php echo Text::encodeHtml($description) ?></textarea></div> - - </div> - </div> - <div class="or-form-actionbar"><input type="button" class="or-form-btn or-form-btn--secondary or-form-btn--cancel" value="<?php echo lang("CANCEL") ?>" /><input type="submit" class="or-form-btn or-form-btn--primary" value="OK" /></div></form> - - \ No newline at end of file diff --git a/modules/cms-ui/themes/default/html/views/element/edit.tpl.src.xml b/modules/cms-ui/themes/default/html/views/element/edit.tpl.src.xml @@ -1,33 +0,0 @@ -<output xmlns="http://www.openrat.de/template" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.openrat.de/template ../../../../../../template-engine/components/template.xsd"> - - <form> - <part class="line"> - <part class="label"> - <text key="LABEL"></text> - </part> - <part class="input"> - <input name="label" focus="true" required="true" maxlength="100" /> - </part> - </part> - - <part class="line"> - <part class="label"> - <text key="NAME"></text> - </part> - <part class="input"> - <input name="name" required="true" maxlength="50" /> - </part> - </part> - - <part class="line"> - <part class="label"> - <text text="GLOBAL_DESCRIPTION"></text> - </part> - <part class="input"> - <inputarea name="description" rows="5" maxlength="255"></inputarea> - </part> - </part> - - </form> -</output>- \ No newline at end of file diff --git a/modules/cms-ui/themes/default/html/views/element/info.php b/modules/cms-ui/themes/default/html/views/element/info.php @@ -3,11 +3,13 @@ <div class="table-wrapper"><div class="table-filter"><input type="search" name="filter" placeholder="<?php echo lang('SEARCH_FILTER') ?>" /></div><table width="100%"></div> <tr class="data"> <td colspan="1"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'id'.'')))); ?></span> + <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'type'.'')))); ?></span> </td> <td> - <span><?php echo nl2br(encodeHtml(htmlentities($id))); ?></span> + <i class="image-icon image-icon--element-<?php echo $type ?>"></i> + + <span><?php echo nl2br(encodeHtml(htmlentities(lang('el_'.$type.'')))); ?></span> </td> </tr> @@ -16,8 +18,21 @@ <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'name'.'')))); ?></span> </td> + <td class="clickable"> + <a class="" target="_self" data-type="edit" data-action="element" data-method="prop" data-id="<?php echo $id ?>" data-extra="[]" href="<?php echo Html::url('element','prop',$id,array()) ?>"> + <span><?php echo nl2br(encodeHtml(htmlentities($name))); ?></span> + + </a> + + </td> + </tr> + <tr class="data"> + <td colspan="1"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'id'.'')))); ?></span> + + </td> <td> - <span><?php echo nl2br(encodeHtml(htmlentities($name))); ?></span> + <span><?php echo nl2br(encodeHtml(htmlentities($id))); ?></span> </td> </tr> diff --git a/modules/cms-ui/themes/default/html/views/element/info.tpl.src.xml b/modules/cms-ui/themes/default/html/views/element/info.tpl.src.xml @@ -3,18 +3,29 @@ <table> <row class="data"> <column colspan="1"> - <text key="id" /> + <text key="type" /> </column> <column> - <text var="id" /> + <image elementtype="var:type" /> + <text key="var:type" prefix="el_" /> </column> </row> <row class="data"> <column colspan="1"> <text key="name" /> </column> + <column class="clickable"> + <link class="" type="edit" action="element" subaction="prop" id="var:id"> + <text var="name" /> + </link> + </column> + </row> + <row class="data"> + <column colspan="1"> + <text key="id" /> + </column> <column> - <text var="name" /> + <text var="id" /> </column> </row> </table> diff --git a/modules/cms-ui/themes/default/html/views/element/prop.php b/modules/cms-ui/themes/default/html/views/element/prop.php @@ -1,351 +1,49 @@ - - - <?php $if2=(config('security','disable_dynamic_code')); if($if2){?> - <?php $if3=(!'1'); if($if3){?> - <div class="message warn"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'NOTICE_CODE_DISABLED'.'')))); ?></span> - - </div> - <?php } ?> - <?php } ?> <form name="" target="_self" data-target="view" action="./" data-method="prop" data-action="element" data-id="<?php echo OR_ID ?>" method="POST" enctype="application/x-www-form-urlencoded" class="or-form element" data-async="" data-autosave=""><input type="hidden" name="<?php echo REQ_PARAM_EMBED ?>" value="1" /><input type="hidden" name="<?php echo REQ_PARAM_TOKEN ?>" value="<?php echo token() ?>" /><input type="hidden" name="<?php echo REQ_PARAM_ACTION ?>" value="element" /><input type="hidden" name="<?php echo REQ_PARAM_SUBACTION ?>" value="prop" /><input type="hidden" name="<?php echo REQ_PARAM_ID ?>" value="<?php echo OR_ID ?>" /> - <fieldset class="toggle-open-close<?php echo '1'?" open":" closed" ?><?php echo '1'?" show":"" ?>"><div> - <?php $if4=(isset($subtype)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_SUBTYPE')))); ?></span> - - </div> - <div class="input"> - <?php $if7=(isset($subtypes)); if($if7){?> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_subtype" name="subtype" title="" class="" size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($subtypes,$subtype,1,0) ?><?php if (count($subtypes)==0) { ?><input type="hidden" name="subtype" value="" /><?php } ?><?php if (count($subtypes)==1) { ?><input type="hidden" name="subtype" value="<?php echo array_keys($subtypes)[0] ?>" /><?php } ?> - </select></div> - <?php } ?> - <?php $if7=!(isset($subtypes)); if($if7){?> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_subtype" name="<?php if ('') echo ''.'_' ?>subtype<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$subtype) ?>" /><?php if ('') { ?><input type="hidden" name="subtype" value="<?php $subtype ?>"/><?php } ?></div> - - <?php } ?> - </div> - </div> - <?php } ?> - <?php $if4=(isset($with_icon)); if($if4){?> - <div class="line"> - <div class="label"> - </div> - <div class="input"> - <?php { $tmpname = 'with_icon';$default = '';$readonly = '';$required = ''; - if ( isset($$tmpname) ) - $checked = $$tmpname; - else - $checked = $default; - - ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php - - if ( $readonly && $checked ) - { - ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php - } - } ?> - - <label for="<?php echo REQUEST_ID ?>_with_icon" class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_WITH_ICON')))); ?></span> - - </label> - </div> - </div> - <?php } ?> - <?php $if4=(isset($inherit)); if($if4){?> - <div class="line"> - <div class="label"> - </div> - <div class="input"> - <?php { $tmpname = 'inherit';$default = '';$readonly = '';$required = ''; - if ( isset($$tmpname) ) - $checked = $$tmpname; - else - $checked = $default; - - ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php - - if ( $readonly && $checked ) - { - ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php - } - } ?> - - <label for="<?php echo REQUEST_ID ?>_inherit" class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_INHERIT')))); ?></span> - - </label> - </div> - </div> - <?php } ?> - <?php $if4=(isset($all_languages)); if($if4){?> - <div class="line"> - <div class="label"> - </div> - <div class="input"> - <?php { $tmpname = 'all_languages';$default = '';$readonly = '';$required = ''; - if ( isset($$tmpname) ) - $checked = $$tmpname; - else - $checked = $default; - - ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php - - if ( $readonly && $checked ) - { - ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php - } - } ?> - - <label for="<?php echo REQUEST_ID ?>_all_languages" class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_ALL_LANGUAGES')))); ?></span> - - </label> - </div> - </div> - <?php } ?> - <?php $if4=(isset($writable)); if($if4){?> - <div class="line"> - <div class="label"> - </div> - <div class="input"> - <?php { $tmpname = 'writable';$default = '';$readonly = '';$required = ''; - if ( isset($$tmpname) ) - $checked = $$tmpname; - else - $checked = $default; - - ?><input class="checkbox" type="checkbox" id="<?php echo REQUEST_ID ?>_<?php echo $tmpname ?>" name="<?php echo $tmpname ?>" <?php if ($readonly) echo ' disabled="disabled"' ?> value="1"<?php if( $checked ) echo ' checked="checked"' ?><?php if( $required ) echo ' required="required"' ?> /><?php - - if ( $readonly && $checked ) - { - ?><input type="hidden" name="<?php echo $tmpname ?>" value="1" /><?php - } - } ?> - - <label for="<?php echo REQUEST_ID ?>_writable" class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_writable')))); ?></span> - - </label> - </div> - </div> - <?php } ?> - <?php $if4=(isset($width)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('width')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_width" name="<?php if ('') echo ''.'_' ?>width<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$width) ?>" /><?php if ('') { ?><input type="hidden" name="width" value="<?php $width ?>"/><?php } ?></div> - - </div> + <fieldset class="toggle-open-close<?php echo '1'?" open":" closed" ?><?php echo '1'?" show":"" ?>"><div class="closable"> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'LABEL'.'')))); ?></span> + </div> - <?php } ?> - <?php $if4=(isset($height)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('height')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_height" name="<?php if ('') echo ''.'_' ?>height<?php if ('') echo '_disabled' ?>" type="text" maxlength="256" class="" value="<?php echo Text::encodeHtml(@$height) ?>" /><?php if ('') { ?><input type="hidden" name="height" value="<?php $height ?>"/><?php } ?></div> - - </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_label" name="<?php if ('') echo ''.'_' ?>label<?php if ('') echo '_disabled' ?>" required="required" autofocus="autofocus" type="text" maxlength="100" class="" value="<?php echo Text::encodeHtml(@$label) ?>" /><?php if ('') { ?><input type="hidden" name="label" value="<?php $label ?>"/><?php } ?></div> + </div> - <?php } ?> - <?php $if4=(isset($dateformat)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DATEFORMAT')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_dateformat" name="dateformat" title="" class=""<?php if (count($dateformats)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($dateformats,$dateformat,0,0) ?><?php if (count($dateformats)==0) { ?><input type="hidden" name="dateformat" value="" /><?php } ?><?php if (count($dateformats)==1) { ?><input type="hidden" name="dateformat" value="<?php echo array_keys($dateformats)[0] ?>" /><?php } ?> - </select></div> - </div> - </div> - <?php } ?> - <?php $if4=(isset($format)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_FORMAT')))); ?></span> - - </div> - <div class="input"> - <?php include_once( 'modules/template-engine/components/html/radiobox/component-radio-box.php') ?><?php component_radio_box('format',$formatlist,$format) ?> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($decimals)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DECIMALS')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_decimals" name="<?php if ('') echo ''.'_' ?>decimals<?php if ('') echo '_disabled' ?>" type="text" maxlength="2" class="" value="<?php echo Text::encodeHtml(@$decimals) ?>" /><?php if ('') { ?><input type="hidden" name="decimals" value="<?php $decimals ?>"/><?php } ?></div> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($dec_point)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEC_POINT')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_dec_point" name="<?php if ('') echo ''.'_' ?>dec_point<?php if ('') echo '_disabled' ?>" type="text" maxlength="5" class="" value="<?php echo Text::encodeHtml(@$dec_point) ?>" /><?php if ('') { ?><input type="hidden" name="dec_point" value="<?php $dec_point ?>"/><?php } ?></div> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($thousand_sep)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_thousand_sep')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_thousand_sep" name="<?php if ('') echo ''.'_' ?>thousand_sep<?php if ('') echo '_disabled' ?>" type="text" maxlength="1" class="" value="<?php echo Text::encodeHtml(@$thousand_sep) ?>" /><?php if ('') { ?><input type="hidden" name="thousand_sep" value="<?php $thousand_sep ?>"/><?php } ?></div> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($default_text)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_default_text')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_default_text" name="<?php if ('') echo ''.'_' ?>default_text<?php if ('') echo '_disabled' ?>" type="text" maxlength="255" class="" value="<?php echo Text::encodeHtml(@$default_text) ?>" /><?php if ('') { ?><input type="hidden" name="default_text" value="<?php $default_text ?>"/><?php } ?></div> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($default_longtext)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_default_longtext')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>default_longtext<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($default_longtext) ?></textarea></div> - - </div> - </div> - <?php } ?> - <?php $if4=(isset($parameters)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DYNAMIC_PARAMETERS')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>parameters<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($parameters) ?></textarea></div> - - </div> - </div> - <div class="line"> - <div class="label"> - </div> - <div class="input"> - <?php foreach($dynamic_class_parameters as $paramName=>$defaultValue){ ?> - <span><?php echo nl2br(encodeHtml(htmlentities($paramName))); ?></span> - - <span><?php echo nl2br('&nbsp;('); ?></span> - - <span><?php echo nl2br(encodeHtml(htmlentities(lang('GLOBAL_DEFAULT')))); ?></span> - - <span><?php echo nl2br(')&nbsp;=&nbsp;'); ?></span> - - <span><?php echo nl2br(encodeHtml(htmlentities($defaultValue))); ?></span> - - <br/> - - <?php } ?> - </div> - </div> - <?php } ?> - <?php $if4=(isset($select_items)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_select_items')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>select_items<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($select_items) ?></textarea></div> - - </div> + </div> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang(''.'NAME'.'')))); ?></span> + </div> - <?php } ?> - <?php $if4=(isset($linkelement)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_LINK')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_linkelement" name="linkelement" title="" class=""<?php if (count($linkelements)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($linkelements,$linkelement,0,0) ?><?php if (count($linkelements)==0) { ?><input type="hidden" name="linkelement" value="" /><?php } ?><?php if (count($linkelements)==1) { ?><input type="hidden" name="linkelement" value="<?php echo array_keys($linkelements)[0] ?>" /><?php } ?> - </select></div> - </div> + <div class="input"> + <div class="inputholder"><input id="<?php echo REQUEST_ID ?>_name" name="<?php if ('') echo ''.'_' ?>name<?php if ('') echo '_disabled' ?>" required="required" type="text" maxlength="50" class="" value="<?php echo Text::encodeHtml(@$name) ?>" /><?php if ('') { ?><input type="hidden" name="name" value="<?php $name ?>"/><?php } ?></div> + </div> - <?php } ?> - <?php $if4=(isset($name)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_NAME')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_name" name="name" title="" class=""<?php if (count($names)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($names,$name,0,0) ?><?php if (count($names)==0) { ?><input type="hidden" name="name" value="" /><?php } ?><?php if (count($names)==1) { ?><input type="hidden" name="name" value="<?php echo array_keys($names)[0] ?>" /><?php } ?> - </select></div> - </div> + </div> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('GLOBAL_DESCRIPTION')))); ?></span> + </div> - <?php } ?> - <?php $if4=(isset($folderobjectid)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEFAULT_FOLDEROBJECT')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_folderobjectid" name="folderobjectid" title="" class=""<?php if (count($folders)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($folders,$folderobjectid,0,0) ?><?php if (count($folders)==0) { ?><input type="hidden" name="folderobjectid" value="" /><?php } ?><?php if (count($folders)==1) { ?><input type="hidden" name="folderobjectid" value="<?php echo array_keys($folders)[0] ?>" /><?php } ?> - </select></div> - </div> + <div class="input"> + <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>description<?php if ('') echo '_disabled' ?>" maxlength="255"><?php echo Text::encodeHtml($description) ?></textarea></div> + </div> - <?php } ?> - <?php $if4=(isset($default_objectid)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_DEFAULT_OBJECT')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_default_objectid" name="default_objectid" title="" class="" size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($objects,$default_objectid,1,0) ?><?php if (count($objects)==0) { ?><input type="hidden" name="default_objectid" value="" /><?php } ?><?php if (count($objects)==1) { ?><input type="hidden" name="default_objectid" value="<?php echo array_keys($objects)[0] ?>" /><?php } ?> - </select></div> - </div> + </div> + </div></fieldset> + <fieldset class="toggle-open-close<?php echo '1'?" open":" closed" ?><?php echo '1'?" show":"" ?>"><div class="closable"> + <div class="line"> + <div class="label"> + <span><?php echo nl2br(encodeHtml(htmlentities(lang('ELEMENT_TYPE')))); ?></span> + </div> - <?php } ?> - <?php $if4=(isset($code)); if($if4){?> - <div class="line"> - <div class="label"> - <span><?php echo nl2br(encodeHtml(htmlentities(lang('EL_PROP_code')))); ?></span> - - </div> - <div class="input"> - <div class="inputholder"><textarea class="inputarea" name="<?php if ('') echo ''.'_' ?>code<?php if ('') echo '_disabled' ?>"><?php echo Text::encodeHtml($code) ?></textarea></div> - - </div> + <div class="input"> + <div class="inputholder"><select id="<?php echo REQUEST_ID ?>_typeid" name="typeid" title="" class=""<?php if (count($types)<=1) echo ' disabled="disabled"'; ?> size=1"><?php include_once( 'modules/template-engine/components/html/selectbox/component-select-box.php') ?><?php component_select_option_list($types,$typeid,0,1) ?><?php if (count($types)==0) { ?><input type="hidden" name="typeid" value="" /><?php } ?><?php if (count($types)==1) { ?><input type="hidden" name="typeid" value="<?php echo array_keys($types)[0] ?>" /><?php } ?> + </select></div> </div> - <?php } ?> + </div> </div></fieldset> - <div class="or-form-actionbar"><input type="submit" class="or-form-btn or-form-btn--primary" value="OK" /></div></form> + <div class="or-form-actionbar"><input type="button" class="or-form-btn or-form-btn--secondary or-form-btn--cancel" value="<?php echo lang("CANCEL") ?>" /><input type="submit" class="or-form-btn or-form-btn--primary" value="OK" /></div></form> \ No newline at end of file diff --git a/modules/cms-ui/themes/default/html/views/element/prop.tpl.src.xml b/modules/cms-ui/themes/default/html/views/element/prop.tpl.src.xml @@ -1,255 +1,51 @@ <output xmlns="http://www.openrat.de/template" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://www.openrat.de/template ../../../../../../template-engine/components/template.xsd"> - <header></header> + xsi:schemaLocation="http://www.openrat.de/template ../../../../../../template-engine/components/template.xsd"> + + + <form cancel="true"> + + <group open="true"> + + <part class="line"> + <part class="label"> + <text key="LABEL"></text> + </part> + <part class="input"> + <input name="label" focus="true" required="true" maxlength="100"/> + </part> + </part> + + <part class="line"> + <part class="label"> + <text key="NAME"></text> + </part> + <part class="input"> + <input name="name" required="true" maxlength="50"/> + </part> + </part> + + <part class="line"> + <part class="label"> + <text text="GLOBAL_DESCRIPTION"></text> + </part> + <part class="input"> + <inputarea name="description" rows="5" maxlength="255"></inputarea> + </part> + </part> + </group> + + <group open="true"> + <part class="line"> + <part class="label"> + <text text="ELEMENT_TYPE"></text> + </part> + <part class="input"> + <selectbox name="typeid" list="types" lang="true"></selectbox> + </part> + </part> + </group> + + </form> - <if true="config:security/disable_dynamic_code"> - <if value="var:type" equals="code" false="true"> - <part class="message warn"> - <text key="NOTICE_CODE_DISABLED" /> - </part> - </if> - </if> - <form> - <group> - <if present="subtype"> - <part class="line"> - <part class="label"> - <text text="ELEMENT_SUBTYPE"></text> - </part> - <part class="input"> - <if present="subtypes"> - <selectbox name="subtype" list="subtypes" addempty="true"></selectbox> - </if> - <if not="true" present="subtypes"> - <input name="subtype"></input> - </if> - </part> - </part> - </if> - <if present="with_icon"> - <part class="line"> - <part class="label"> - </part> - <part class="input"> - <checkbox name="with_icon"></checkbox> - <label for="with_icon"> - <text text="EL_PROP_WITH_ICON"></text> - </label> - </part> - </part> - </if> - <if present="inherit"> - <part class="line"> - <part class="label"> - </part> - <part class="input"> - <checkbox name="inherit"></checkbox> - <label for="inherit"> - <text text="EL_PROP_INHERIT"></text> - </label> - </part> - </part> - </if> - <if present="all_languages"> - <part class="line"> - <part class="label"> - </part> - <part class="input"> - <checkbox name="all_languages"></checkbox> - <label for="all_languages"> - <text text="EL_PROP_ALL_LANGUAGES"></text> - </label> - </part> - </part> - </if> - <if present="writable"> - <part class="line"> - <part class="label"> - </part> - <part class="input"> - <checkbox name="writable"></checkbox> - <label for="writable"> - <text text="EL_PROP_writable"></text> - </label> - </part> - </part> - </if> - <if present="width"> - <part class="line"> - <part class="label"> - <text text="width"></text> - </part> - <part class="input"> - <input size="10" name="width"></input> - </part> - </part> - </if> - <if present="height"> - <part class="line"> - <part class="label"> - <text text="height"></text> - </part> - <part class="input"> - <input size="10" name="height"></input> - </part> - </part> - </if> - <if present="dateformat"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DATEFORMAT"></text> - </part> - <part class="input"> - <selectbox name="dateformat" list="dateformats"></selectbox> - </part> - </part> - </if> - <if present="format"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_FORMAT"></text> - </part> - <part class="input"> - <radiobox name="format" list="formatlist"></radiobox> - </part> - </part> - </if> - <if present="decimals"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DECIMALS"></text> - </part> - <part class="input"> - <input size="10" maxlength="2" name="decimals"></input> - </part> - </part> - </if> - <if present="dec_point"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DEC_POINT"></text> - </part> - <part class="input"> - <input size="10" maxlength="5" name="dec_point"></input> - </part> - </part> - </if> - <if present="thousand_sep"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_thousand_sep"></text> - </part> - <part class="input"> - <input size="10" maxlength="1" name="thousand_sep"></input> - </part> - </part> - </if> - <if present="default_text"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_default_text"></text> - </part> - <part class="input"> - <input size="40" maxlength="255" name="default_text"></input> - </part> - </part> - </if> - <if present="default_longtext"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_default_longtext"></text> - </part> - <part class="input"> - <inputarea rows="10" name="default_longtext"></inputarea> - </part> - </part> - </if> - <if present="parameters"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DYNAMIC_PARAMETERS"></text> - </part> - <part class="input"> - <inputarea rows="15" name="parameters"></inputarea> - </part> - </part> - <part class="line"> - <part class="label"> - </part> - <part class="input"> - <list list="dynamic_class_parameters" key="paramName" value="defaultValue"> - <text var="paramName"></text> - <text raw="_("></text> - <text text="GLOBAL_DEFAULT"></text> - <text raw=")_=_"></text> - <text var="defaultValue"></text> - <newline></newline> - </list> - </part> - </part> - </if> - <if present="select_items"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_select_items"></text> - </part> - <part class="input"> - <inputarea rows="15" cols="40" name="select_items"></inputarea> - </part> - </part> - </if> - <if present="linkelement"> - <part class="line"> - <part class="label"> - <text text="EL_LINK"></text> - </part> - <part class="input"> - <selectbox name="linkelement" list="linkelements"></selectbox> - </part> - </part> - </if> - <if present="name"> - <part class="line"> - <part class="label"> - <text text="ELEMENT_NAME"></text> - </part> - <part class="input"> - <selectbox name="name" list="names"></selectbox> - </part> - </part> - </if> - <if present="folderobjectid"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DEFAULT_FOLDEROBJECT"></text> - </part> - <part class="input"> - <selectbox name="folderobjectid" list="folders"></selectbox> - </part> - </part> - </if> - <if present="default_objectid"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_DEFAULT_OBJECT"></text> - </part> - <part class="input"> - <selectbox name="default_objectid" list="objects" - addempty="true"></selectbox> - </part> - </part> - </if> - <if present="code"> - <part class="line"> - <part class="label"> - <text text="EL_PROP_code"></text> - </part> - <part class="input"> - <inputarea name="code" rows="35"></inputarea> - </part> - </part> - </if> - </group> - </form> </output> \ No newline at end of file