openrat-cms

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

commit 2dd8a5ce31fa48a6846e5adffcfc7dd50cb647ea
parent 7d0999660b95f4c250774ad3ab6ea4d9402f2079
Author: dankert <openrat@jandankert.de>
Date:   Sun, 20 Mar 2022 22:34:34 +0100

Fix: Mask passwords in configuration output.

Diffstat:
Mmodules/cms/action/configuration/ConfigurationEditAction.class.php | 17+++++++----------
Dmodules/cms/action/configuration/ConfigurationShowAction.class.php | 40----------------------------------------
2 files changed, 7 insertions(+), 50 deletions(-)

diff --git a/modules/cms/action/configuration/ConfigurationEditAction.class.php b/modules/cms/action/configuration/ConfigurationEditAction.class.php @@ -3,9 +3,10 @@ namespace cms\action\configuration; use cms\action\ConfigurationAction; use cms\action\Method; use cms\base\DefaultConfig; +use util\ArrayUtils; use util\Session; -class ConfigurationEditAction extends ConfigurationAction implements Method { +class ConfigurationEditAction extends ConfigurationAction { public function view() { @@ -20,14 +21,14 @@ class ConfigurationEditAction extends ConfigurationAction implements Method { $pad = str_repeat("\xC2\xA0",10); // Hard spaces - $flatDefaultConfig = \util\ArrayUtils::dryFlattenArray( $defaultConfig , $pad ); - $flatCMSConfig = \util\ArrayUtils::dryFlattenArray( Session::getConfig(), $pad ); - $flatConfig = \util\ArrayUtils::dryFlattenArray( $currentConfig , $pad ); + $flatDefaultConfig = ArrayUtils::dryFlattenArray( $defaultConfig , $pad ); + $flatCMSConfig = ArrayUtils::dryFlattenArray( Session::getConfig(), $pad ); + $flatConfig = ArrayUtils::dryFlattenArray( $currentConfig , $pad ); $config = array_map( function($key,$value) use ($flatConfig,$flatCMSConfig,$flatDefaultConfig) { - if ( strpos($key,'password') !== false ) - $value = '*'; + if ( strpos($value['key'],'password') !== false ) + $value['value'] = '**********'; return ['key'=>$key,'value'=>$value,'class'=>(empty($flatCMSConfig[$key])?'readonly':(isset($flatDefaultConfig[$key]) && $flatDefaultConfig[$key]==$flatConfig[$key]?'default':'changed'))]; @@ -35,8 +36,4 @@ class ConfigurationEditAction extends ConfigurationAction implements Method { $this->setTemplateVar('config',$config ); } - - - public function post() { - } } diff --git a/modules/cms/action/configuration/ConfigurationShowAction.class.php b/modules/cms/action/configuration/ConfigurationShowAction.class.php @@ -1,40 +0,0 @@ -<?php -namespace cms\action\configuration; -use cms\action\ConfigurationAction; -use cms\action\Method; -use cms\base\DefaultConfig; -use util\Session; - - -class ConfigurationShowAction extends ConfigurationAction implements Method { - public function view() { - $defaultConfig = DefaultConfig::get();; - $currentConfig = Session::getConfig(); - - $currentConfig['system'] = $this->getSystemConfiguration(); - - // Language are to much entries - unset($currentConfig['language']); - - $pad = str_repeat("\xC2\xA0",10); // Hard spaces - - $flatDefaultConfig = \util\ArrayUtils::dryFlattenArray( $defaultConfig , $pad ); - $flatCMSConfig = \util\ArrayUtils::dryFlattenArray( Session::getConfig(), $pad ); - $flatConfig = \util\ArrayUtils::dryFlattenArray( $currentConfig , $pad ); - - $config = array_map( function($key,$value) use ($flatConfig,$flatCMSConfig,$flatDefaultConfig) { - - if ( strpos($key,'password') !== false ) - $value = '*'; - - return ['key'=>$key,'value'=>$value,'class'=>(empty($flatCMSConfig[$key])?'readonly':(isset($flatDefaultConfig[$key]) && $flatDefaultConfig[$key]==$flatConfig[$key]?'default':'changed'))]; - - },array_keys($flatConfig),$flatConfig); - - $this->setTemplateVar('config',$config ); - } - - - public function post() { - } -}