Bug(バグ) #871
Daily news is not sent to the default setting members (デイリー・ニュース受信設定を一度もしていないメンバー宛てにデイリー・ニュースが配信されない)
開始日:
2010-03-18
期日:
進捗率:
100%
3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Unknown (未調査)
説明
関連するチケット
履歴
#1 Yuki Yamashita が約14年前に更新
- ステータス を Pending Fixing(修正待ち) から Accepted(着手) に変更
#2 Yuki Yamashita が約14年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 担当者 を Yuki Yamashita にセット
以下のように修正しました。
if (null !== $dailyNewsConfig && 0 === (int)$dailyNewsConfig) { continue; } if (1 === (int)$dailyNewsConfig && !$this->isDailyNewsDay()) { continue; }
#3 Yuki Yamashita が約14年前に更新
- 進捗率 を 0 から 50 に変更
更新履歴 5123693f3d0c40b71cc79df9adadcc526b3d6bf3 で適用されました。
#4 Yuki Yamashita が約14年前に更新
更新履歴 fc5a140b699094052d534f154b55a0f1041a68b0 で適用されました。
#5 Yuki Yamashita が約14年前に更新
- 対象バージョン を OpenPNE 3.5.2 にセット
#6 Kousuke Ebihara が約14年前に更新
- 対象バージョン を OpenPNE 3.5.2 から OpenPNE 3.5.1 に変更
#7 Mutsumi Imamura が約14年前に更新
- 進捗率 を 50 から 70 に変更
動作確認しました。
設定変更を実施しなくてもデイリーメールが受信されることを確認。
また、ユーザー側にて各設定を切り替え、./symfony openpne:send-daily-newsを実行し確認した。
- 送信しない → デイリーメール送信されない
- 週2回送信する (月,木) → デイリーメール送信されない(2010/03/26金曜日にテスト実施のため)
- 毎日送信する → デイリーメール送信される
#8 Kousuke Ebihara が約14年前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
このコードからは設定値が空の場合にどの値が設定されたものと見なして処理をするのかどうかが判別しにくいです(マジックナンバーを使わざるを得ない部分であることも影響しているとは思いますが)。
コードの重複を防ぐ意味では、 config/member_config.yml の Default の値を用いるようにするのがベストだと思いますが、変更がかなり大きくなりそうで影響範囲も大きいので、とりあえず sfConfig::get() や SnsConfigTable::get() や opConfig::get() と同様に Member::getConfig() や MemberConfigTable::retrieveByNameAndMemberId() でも引数にデフォルト値を指定できるようにしてはどうでしょうか。
#9 Kousuke Ebihara が約14年前に更新
- ステータス を Rejected(差し戻し) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
Member::getConfig() にデフォルト値を許す件についてはこのチケットでは対応しない方針にしたいと思います。