操作
Bug(バグ) #3130
完了管理画面「Web 全体への年齢公開許可設定」および「メンバーのプロフィールページ公開範囲設定」のデフォルト値を変更しても設定に反映されない
開始日:
2012-07-24
期日:
進捗率:
0%
予定工数:
3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Yes (はい)
説明
概要¶
管理画面「Web 全体への年齢公開許可設定」および「メンバーのプロフィールページ公開範囲設定」のデフォルト値を変更しても設定に反映されない.
具体的には下記ファイルの 173 行目および 160 行目 を変更しても pc_frontend 側で設定が反映されていない.
lib/config/config/sns_config.yml 166 is_allow_web_public_flag_age: 167 Name: "is_allow_web_public_flag_age" 168 Caption: "Web 全体への年齢公開許可設定" 169 Help: "メンバーが年齢を Web 全体に公開できるようにするかどうかを設定します" 170 FormType: "radio" 171 ValueType: "text" 172 IsRequired: true 173 Default: 0 174 Choices: 175 0: "メンバーの設定を許可しない" 176 1: "メンバーの設定を許可する"
lib/config/config/sns_config.yml 153 is_allow_config_public_flag_profile_page: 154 Name: "is_allow_config_public_flag_profile_page" 155 Caption: "メンバーのプロフィールページ公開範囲設定" 156 Help: "メンバーがプロフィールページの公開範囲を変更できるようにするどうかを設定します" 157 FormType: "radio" 158 ValueType: "text" 159 IsRequired: true 160 Default: 1 161 Choices: 162 0: "メンバーの設定を許可する" 163 1: "メンバーの設定を許可しない(全員に公開)" 164 4: "メンバーの設定を許可しない(Web全体に公開)"
確認バージョン¶
OpenPNE 3.8.0
OpenPNE 3.6.4
原因¶
年齢を得るメソッドで設定ファイルが考慮されていない.
lib/model/doctrine/Member.class.php
56 public function getAge($viewableCheck = false, $myMemberId = null) 57 { ... 82 if (ProfileTable::PUBLIC_FLAG_WEB == $publicFlag && Doctrine::getTable('SnsConfig')->get('is_allow_web_public_flag_age')) 83 { 84 return $age; 85 }
修正案¶
デフォルト値を考慮した実装に変更する.
diff --git a/lib/model/doctrine/Member.class.php b/lib/model/doctrine/Member.class.php index 5dd0d1a..b1a7d5f 100644 --- a/lib/model/doctrine/Member.class.php +++ b/lib/model/doctrine/Member.class.php @@ -79,7 +79,7 @@ class Member extends BaseMember implements opAccessControlRecordInterface return $age; } - if (ProfileTable::PUBLIC_FLAG_WEB == $publicFlag && Doctrine::getTable('SnsConfig')->get('is_allow_web_public_flag_age')) + if (ProfileTable::PUBLIC_FLAG_WEB == $publicFlag && opConfig::get('is_allow_web_public_flag_age')) { return $age; }
diff --git a/lib/form/MemberConfigForm/MemberConfigPublicFlagForm.class.php b/lib/form/MemberConfigForm/MemberConfigPublicFlagForm.class.php index 69fd9d9..9047bae 100644 --- a/lib/form/MemberConfigForm/MemberConfigPublicFlagForm.class.php +++ b/lib/form/MemberConfigForm/MemberConfigPublicFlagForm.class.php @@ -23,12 +23,12 @@ class MemberConfigPublicFlagForm extends MemberConfigForm { parent::__construct($member, $options, $CSRFSecret); - if (Doctrine::getTable('SnsConfig')->get('is_allow_config_public_flag_profile_page')) + if (opConfig::get('is_allow_config_public_flag_profile_page')) { unset($this['profile_page_public_flag']); } - if (!Doctrine::getTable('SnsConfig')->get('is_allow_web_public_flag_age')) + if (!opConfig::get('is_allow_web_public_flag_age')) { $widget = $this->widgetSchema['age_public_flag'];
diff --git a/lib/model/doctrine/MemberTable.class.php b/lib/model/doctrine/MemberTable.class.php index 8ad8a28..0c995a9 100644 --- a/lib/model/doctrine/MemberTable.class.php +++ b/lib/model/doctrine/MemberTable.class.php @@ -116,9 +116,9 @@ class MemberTable extends opAccessControlDoctrineTable ->allow('self', $resource, 'edit') ->deny('blocked'); - if (Doctrine::getTable('SnsConfig')->get('is_allow_config_public_flag_profile_page')) + if (opConfig::get('is_allow_config_public_flag_profile_page')) { - $config = Doctrine::getTable('SnsConfig')->get('is_allow_config_public_flag_profile_page'); + $config = opConfig::get('is_allow_config_public_flag_profile_page'); } elseif ($resource) {
Yuya Watanabe さんが約12年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
更新履歴 ec72986b5bf84edddf5db1f2b82863cf67c61bf3 で適用されました。
Rimpei Ogawa さんが11年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
MemberConfigPublicFlagForm にも同様の問題があります。 /member/config?category=publicFlag のフォームに反映されていません。
Yuya Watanabe さんが11年以上前に更新
追加
lib/model/doctrine/MemberTable.class.php 119: if (Doctrine::getTable('SnsConfig')->get('is_allow_config_public_flag_profile_page')) 121: $config = Doctrine::getTable('SnsConfig')->get('is_allow_config_public_flag_profile_page');
lib/config/config/sns_config.yml 153: is_allow_config_public_flag_profile_page: 154: Name: "is_allow_config_public_flag_profile_page"
Yuya Watanabe さんが11年以上前に更新
- ステータス を Rejected(差し戻し) から Pending Review(レビュー待ち) に変更
更新履歴 f6f43dce6db5e3d8ffaf81bf9e399a73a9e9674a で適用されました。
Rimpei Ogawa さんが11年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
Yuya Watanabe さんが11年以上前に更新
- 題名 を 管理画面「Web 全体への年齢公開許可設定」のデフォルト値を変更しても設定に反映されない から 管理画面「Web 全体への年齢公開許可設定」および「メンバーのプロフィールページ公開範囲設定」のデフォルト値を変更しても設定に反映されない に変更
Akihiro KOBAYASHI さんが約10年前に更新
- 関連している Bug(バグ) #3453: 管理画面で「Web 全体への年齢公開許可設定」を「メンバーの設定を許可しない」に設定しても新規登録時には選択できてしまう を追加
操作