操作
Backport(バックポート) #3215
完了管理画面「Web 全体への年齢公開許可設定」および「メンバーのプロフィールページ公開範囲設定」のデフォルト値を変更しても設定に反映されない
開始日:
2012-07-24
期日:
進捗率:
100%
予定工数:
説明
概要¶
管理画面「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 さんが11年以上前に更新
- ステータス を New(新規) から Accepted(着手) に変更
- 担当者 を Yuya Watanabe にセット
Yuya Watanabe さんが11年以上前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
更新履歴 597bf77c95e2c76d5fdcce4d3b91d53a7be7354c で適用されました。
Rimpei Ogawa さんが11年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
親チケットを差し戻しました。
https://redmine.openpne.jp/issues/3130#note-6
Yuya Watanabe さんが11年以上前に更新
- ステータス を Rejected(差し戻し) から Pending Review(レビュー待ち) に変更
更新履歴 e32f43b25f2badc7e67c1d6d5bdd46c41f80de61 で適用されました。
Rimpei Ogawa さんが11年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
Yuya Watanabe さんが11年以上前に更新
- 題名 を 管理画面「Web 全体への年齢公開許可設定」のデフォルト値を変更しても設定に反映されない から 管理画面「Web 全体への年齢公開許可設定」および「メンバーのプロフィールページ公開範囲設定」のデフォルト値を変更しても設定に反映されない に変更
Chiharu Nakajima さんが11年以上前に更新
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
動作確認しました。
問題ありません。
操作