ConfigurationShowAction.class.php (1300B)
1 <?php 2 namespace cms\action\configuration; 3 use cms\action\ConfigurationAction; 4 use cms\action\Method; 5 use cms\base\DefaultConfig; 6 use util\Session; 7 8 9 class ConfigurationShowAction extends ConfigurationAction implements Method { 10 public function view() { 11 $defaultConfig = DefaultConfig::get();; 12 $currentConfig = Session::getConfig(); 13 14 $currentConfig['system'] = $this->getSystemConfiguration(); 15 16 // Language are to much entries 17 unset($currentConfig['language']); 18 19 $pad = str_repeat("\xC2\xA0",10); // Hard spaces 20 21 $flatDefaultConfig = \util\ArrayUtils::dryFlattenArray( $defaultConfig , $pad ); 22 $flatCMSConfig = \util\ArrayUtils::dryFlattenArray( Session::getConfig(), $pad ); 23 $flatConfig = \util\ArrayUtils::dryFlattenArray( $currentConfig , $pad ); 24 25 $config = array_map( function($key,$value) use ($flatConfig,$flatCMSConfig,$flatDefaultConfig) { 26 27 if ( strpos($key,'password') !== false ) 28 $value = '*'; 29 30 return ['key'=>$key,'value'=>$value,'class'=>(empty($flatCMSConfig[$key])?'readonly':(isset($flatDefaultConfig[$key]) && $flatDefaultConfig[$key]==$flatConfig[$key]?'default':'changed'))]; 31 32 },array_keys($flatConfig),$flatConfig); 33 34 $this->setTemplateVar('config',$config ); 35 } 36 37 38 public function post() { 39 } 40 }