From 3740ceb5c7834c1af6ecbb4b7e69b272bbf010a0 Mon Sep 17 00:00:00 2001 From: Kimura Youichi Date: Mon, 31 Oct 2016 19:00:51 +0900 Subject: [PATCH 1/3] move code that filtering configs by category into else block (refs #4034) --- lib/form/doctrine/MemberConfigForm.class.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/form/doctrine/MemberConfigForm.class.php b/lib/form/doctrine/MemberConfigForm.class.php index a3546a585..a321bb001 100644 --- a/lib/form/doctrine/MemberConfigForm.class.php +++ b/lib/form/doctrine/MemberConfigForm.class.php @@ -95,14 +95,16 @@ public function setMemberConfigSettings() $categories = sfConfig::get('openpne_member_category'); $configs = sfConfig::get('openpne_member_config'); - if (!$this->category) { + if (!$this->category) + { $this->memberConfigSettings = $configs; - return true; } - - foreach ($categories[$this->category] as $value) + else { - $this->memberConfigSettings[$value] = $configs[$value]; + foreach ($categories[$this->category] as $value) + { + $this->memberConfigSettings[$value] = $configs[$value]; + } } } From ca093ca1d27d3f366be2754f9ce597fa36f8b3aa Mon Sep 17 00:00:00 2001 From: Kimura Youichi Date: Mon, 31 Oct 2016 19:11:50 +0900 Subject: [PATCH 2/3] set default settings when retrieving openpne_member_config (fixes #4034) --- lib/form/doctrine/MemberConfigForm.class.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/lib/form/doctrine/MemberConfigForm.class.php b/lib/form/doctrine/MemberConfigForm.class.php index a321bb001..274e302eb 100644 --- a/lib/form/doctrine/MemberConfigForm.class.php +++ b/lib/form/doctrine/MemberConfigForm.class.php @@ -106,6 +106,24 @@ public function setMemberConfigSettings() $this->memberConfigSettings[$value] = $configs[$value]; } } + + foreach ($this->memberConfigSettings as $configName => $configSettings) + { + if (null === $configSettings) + { + continue; + } + + // Set default values if key not in array + $this->memberConfigSettings[$configName] = $configSettings + array( + 'IsRegist' => false, + 'IsConfig' => false, + 'IsRequired' => false, + 'IsUnique' => false, + 'IsConfirm' => false, + 'Info' => '', + ); + } } public function setMemberConfigWidget($name) From 21b09efc7e86042897d31ca1096fd8f89e34efa7 Mon Sep 17 00:00:00 2001 From: Kimura Youichi Date: Mon, 31 Oct 2016 19:27:39 +0900 Subject: [PATCH 3/3] remove checking key exists in member_config settings (refs #4034) --- lib/form/doctrine/MemberConfigForm.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/form/doctrine/MemberConfigForm.class.php b/lib/form/doctrine/MemberConfigForm.class.php index 274e302eb..b847d9190 100644 --- a/lib/form/doctrine/MemberConfigForm.class.php +++ b/lib/form/doctrine/MemberConfigForm.class.php @@ -137,7 +137,7 @@ public function setMemberConfigWidget($name) } $this->validatorSchema[$name] = opFormItemGenerator::generateValidator($config); - if (!empty($config['IsUnique'])) + if ($config['IsUnique']) { $uniqueValidator = new sfValidatorCallback(array( 'callback' => array($this, 'isUnique'), @@ -155,7 +155,7 @@ public function setMemberConfigWidget($name) )); } - if (!empty($config['IsConfirm'])) + if ($config['IsConfirm']) { $this->validatorSchema[$name.'_confirm'] = $this->validatorSchema[$name]; $this->widgetSchema[$name.'_confirm'] = $this->widgetSchema[$name]; @@ -171,7 +171,7 @@ public function setMemberConfigWidget($name) ))); } - if (!empty($config['Info'])) + if ($config['Info']) { $this->widgetSchema->setHelp($name, $config['Info']); } @@ -263,7 +263,7 @@ public function isValid() foreach ($this->getValues() as $key => $value) { - if (!empty($this->memberConfigSettings[$key]['IsUnique'])) + if ($this->memberConfigSettings[$key]['IsUnique']) { $memberConfig = Doctrine::getTable('MemberConfig')->retrieveByNameAndValue($key.'_pre', $value); if ($memberConfig)