プロジェクト

全般

プロフィール

Bug(バグ) #2906

完了

OpenPNE2系からのコンバートで日記の公開範囲初期値の設定値がコンバートされない

Mutsumi Imamura さんが12年以上前に追加. 約9年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2012-03-26
期日:
進捗率:

100%

予定工数:
3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Unknown (未調査)

説明

Overview (現象)

OpenPNE2系からのコンバートで日記の公開範囲初期値の設定値がコンバートされない。
2系の時にこの設定値を「非公開」などにしていたユーザーが、コンバート後にはデフォルト値の「全体に公開」に変更されてしまい混乱を招く可能性がある。

コンバーターはOpenPNEコア側の機能なので判断に迷いましたが、こちらにチケットを作成しました。
opDiaryPluginプロジェクトにチケットを作成するのが不適切でしたら、お手数ですがOpenPNE3コアのプロジェクトにチケットの移動をお願いいたします。

再現バージョン

  • OpenPNE3.6.2
  • opDiaryPlugin1.4.0.1

再現手順

  1. OpenPNE2系から3系にコンバートする。
  2. 日記の公開範囲初期値の設定値を確認する。(member/config?category=diary)

Causes (原因)

バグが発生した原因を記入

Way to fix (修正内容)

修正内容を記入

Mutsumi Imamura さんが12年以上前に更新

  • 対象バージョンv1.4.1 にセット

Mutsumi Imamura さんが12年以上前に更新

  • 担当者Hidenori Goto にセット

Hidenori Goto さんが12年以上前に更新

問題箇所

V2→V3コンバータで、日記公開範囲フラグに対する処理が行われていません。

修正方針

コンバータにて

  • /data/upgrade/2/sql/member_config.sql にて、以下のSQLを追加
INSERT INTO member_config (id, member_id, name, value, name_value_hash, created_at, updated_at) (SELECT NULL, c_member_id, "diary_public_flag", 1, MD5(<?php echo $this->conn->expression->concat($this->conn->quote('diary_public_flag'), $this->conn->quote(','), 1) ?>), NOW(), NOW() FROM c_member WHERE public_flag_diary = "public");
INSERT INTO member_config (id, member_id, name, value, name_value_hash, created_at, updated_at) (SELECT NULL, c_member_id, "diary_public_flag", 2, MD5(<?php echo $this->conn->expression->concat($this->conn->quote('diary_public_flag'), $this->conn->quote(','), 2) ?>), NOW(), NOW() FROM c_member WHERE public_flag_diary = "friend");
INSERT INTO member_config (id, member_id, name, value, name_value_hash, created_at, updated_at) (SELECT NULL, c_member_id, "diary_public_flag", 3, MD5(<?php echo $this->conn->expression->concat($this->conn->quote('diary_public_flag'), $this->conn->quote(','), 3) ?>), NOW(), NOW() FROM c_member WHERE public_flag_diary = "private");

すでに運営中のコンバート済みSNSについては、まだmember_configにdiary_public_flag設定値がないメンバーに対してのみ、c_memberからpublic_flag_diaryのフラグを取り出して設定するバッチを用意。

以下フラグ値メモ

OpenPNE2 : c_member.public_flag_diary

  • 全員に公開 => "public"
  • マイフレンドまで公開 => "friend"
  • 公開しない => "private"

OpenPNE3 : member_config/diary_public_flag

  • Web全体に公開 => 4
  • 全員に公開 => 1
  • マイフレンドまで公開 => 2
  • 公開しない => 3

Hidenori Goto さんが12年以上前に更新

Hidenori Goto は書きました:

すでに運営中のコンバート済みSNSについては、まだmember_configにdiary_public_flag設定値がないメンバーに対してのみ、c_memberからpublic_flag_diaryのフラグを取り出して設定するバッチを用意。

こちらのバッチについては、本チケットの作業からは除外させて頂きます。
必要なのかどうか、また必要であればどのパッケージにどのように含めるべきか、検討が必要かと思われます。

Hidenori Goto さんが12年以上前に更新

  • ステータスNew(新規) から Accepted(着手) に変更

Hidenori Goto さんが12年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

Yuya Watanabe さんが12年以上前に更新

  • プロジェクトopDiaryPlugin から OpenPNE 3 に変更
  • 対象バージョン を削除 (v1.4.1)

Yuya Watanabe さんが12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 対象バージョンOpenPNE 3.6.4 にセット
  • 進捗率50 から 70 に変更
  • 3.6 で発生するかUnknown (未調査) から Yes (はい) に変更

note-4 の懸念については対処しようがないと思うので対応は必要ないと思います.

修正内容は問題無いとして, 下記コミットで stable-3.6.x にマージを行いました.

3221f5b1b8780fe388a691b5a6fb04a9fe20fa61

Yuma Sakata さんが12年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

kaoru n さんが約9年前に更新

  • 3.8 で発生するかUnknown (未調査) にセット

他の形式にエクスポート: Atom PDF