ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Opened 11 years ago

Closed 11 years ago

#3645 closed task (fixed)

特定のカテゴリをコミュニティ作成時に選べないようにする機能#3063 のバグ修正

Reported by: toraneko Owned by: kiwa
Priority: minor Milestone: OpenPNE2.13.6
Component: 指定しない Version: 2.14.x
Keywords: Cc:

Description (last modified by kiwa)

■現象

・小カテゴリ追加の際の不具合
並び順の欄に入力した値が反映されない。
可/不可の欄に不適切な値(「可」、「不可」も含む)を入力した場合「追加できませんでした」と表示され追加がされない。
可/不可の欄に「0」、「1」を入力した場合、どちらも不可となって追加される→値が反映されない。

・コミュニティ設定変更の際の不具合
小カテゴリの変更で作成不可のカテゴリを選択できてしまう。

・個人的な意見
初期値が「不可」であるよりも「可」である方が私としては使いやすいかな、と感じました。

提案1. 作成可能なコミュニティカテゴリがひとつもない場合については、「現在コミュニティを作成することができません」といった表示があったほうが、利用者が混乱しなくて済むかなと思いました。
提案2. bool 値が入るとわかっているフィールド名、変数名については、 is_*** という形式にするとそのフィールド、変数の役割が自明になりますのでオススメです。

また、バグとおぼしき現象を見つけたので報告します。
コミュニティカテゴリによるコミュニティ作成の「可」・「不可」設定が、表示上のみしか有効でなく、アクション内では一切考慮していないように見えますがどうでしょうか。

■原因

■修正内容

■関連情報

http://sns.openpne.jp/?m=pc&a=page_c_topic_detail&target_c_commu_topic_id=3917 にて ebiharaさんより指摘された内容

関連チケット

  • #3655: コミュニティカテゴリ設定で小カテゴリが正しく登録できない
  • #3656: 携帯版コミュニティ設定にて作成不可の小カテゴリを選択すると、「target_c_commu_idを指定してください」のエラーになる
  • #3608: コミュニティ作成不可の時に新規作成画面へのリンクが表示される
  • #3657: 選択可能な小カテゴリがない場合、コミュニティ編集画面に遷移しても更新が行えない
  • #3658: [c_commu_category]テーブル内の作成可否フィールド[create_flag]のフィールド名の変更

Change History (14)

comment:1 Changed 11 years ago by toraneko

諸々の不具合を整理しました。

<原因>
1) 管理画面にて小カテゴリが正しく登録できない
  (指定した並び順が反映されない、作成可否が常に「不可」として登録される)
  → 登録フィールド名が間違っていた(両フィールド共 [ sort_order ] になっていた
    → フィールド名を修正し、作成可否欄をプルダウンに変更

2) 選択可能な小カテゴリがなくても、コミュニティ作成画面に遷移する
  → 選択可能な小カテゴリの数をチェックせず、無条件に作成画面を表示していたため
    → 画面表示前に指定可能な小カテゴリ数をチェックし、1つも無い場合、新規作成不可の画面を表示

3) 携帯版にてコミュニティ設定画面表示中に、管理者がある小カテゴリを不可に変更、設定画面にて不可にされた小カテゴリを選択すると、「 target_c_commu_idを指定してください」のエラーになる
  →  [ c_edit ] を表示する際のパラメタ不正
    → [ c_edit ]表示時のパラメタに[taget_c_commu_id]を追加

4) 選択可能な小カテゴリがない場合、コミュニティ編集画面に遷移するが更新が行えない
  → カテゴリ欄にカテゴリが1つも表示されないため、設定変更時にパラメタエラーになる
    → 選択可能なカテゴリが無い場合、「設定変更できません」のメッセージを表示し、設定変更画面には遷移しない


5) [c_commu_category]テーブル内の作成可否フィールド[create_flag]のフィールド名
  → 設定する値は可/不可のbool値となるため、[is_****]というフィールド名の方が好ましい
    →  フィールド名を[create_flag]から[is_create_commu]に変更
        フィールド名変更に伴い、作成可能カテゴリを取り出す関数名[db_commu_c_commu_category4createflag]を[db_commu_c_commu_category4is_create_commu]に変更

comment:2 Changed 11 years ago by toraneko

以下の方針で修正を行いました。

コミュ管理機能改善プロジェクト不具合修正内容

■方針
・小カテゴリが全て作成不可の場合
  新規作成:作成不可のメッセージを表示し、新規作成画面には遷移しない
  設定変更:選択可能カテゴリがないため設定変更不可のメッセージを表示し、設定変更画面には遷移しない

・小カテゴリが一部のみ作成不可の場合
  新規作成:行える、ただし、作成不可の小カテゴリは選択できない
  設定変更:行える、ただし、作成不可の小カテゴリは選択できない

・新規作成画面表示中に、カテゴリが全て作成不可にされた場合
  作成ボタン押下後のアクションでエラー検知となり、新規作成不可のメッセージを表示

・新規作成画面にて作成ボタン押下時、選択されたカテゴリが作成不可に変更されていた場合
  作成ボタン押下後のアクションでエラー検知となり、選択できないカテゴリーというエラーを表示

・設定変更画面表示中に、カテゴリが全て作成不可にされた場合
  変更ボタン押下後のアクションでエラー検知となり、設定変更不可のメッセージを表示

・設定変更画面にて変更ボタン押下時、選択されたカテゴリが作成不可に変更されていた場合
  変更ボタン押下後のアクションでエラー検知となり、選択できないカテゴリーというエラーを表示

■修正内容
<事象> [c_commu_category]の作成可否フィールド名[create_flag]が適切ではない
<対策> フィールドの値はbool値となるため、フィールド名を[is_create_commu]に変更
       デフォルト値を'0'から'1'に変更

<事象> 管理者用コミュニティカテゴリ設定画面にて、登録が正常に行えない
<詳細> 項目追加時、並び順が反映されない。
       作成可否が常に「不可」で登録される。
<対策> フィールド名を修正し、作成可否項目をプルダウンに変更

<事象> 作成可能なカテゴリがなくても、コミュニティ新規作成画面に遷移する
<対策> コミュニティ検索画面表示時に、作成可能なカテゴリが無い場合、「新規作成」のリンクは表示しない
       新規作成画面表示中に全てのカテゴリが作成不可となった場合、作成ボタン押下時に「新規作成出来ません」のメッセージを表示する

<事象> 作成可能なカテゴリがなくても、コミュニティ設定変更画面に遷移する
<対象> 「設定変更できません」のメッセージを表示し、設定変更画面は表示しない

<事象> 携帯のコミュニティ設定変更画面にて、作成不可のカテゴリが選択された場合、「taget_c_commu_idを入力してください」のエラーとなる
<詳細> コミュニティ設定変更画面表示中に、選択されているカテゴリが作成不可となり、この状態で「コミュニティを編集する」を押下すると本エラーと
なる
<対策> エラー検知により[c_edit]を表示するが、その際のパラメタに[target_c_commu_id]も設定する

修正リビジョンはこちらです r10811

comment:3 Changed 11 years ago by kiwa

Milestone: OpenPNE2.13.6
Version: 2.13.x

修正おつかれさまです、ありがとうございます。

修正を本線に取り込みたいので、Milestoneを2.13.6にさせてもらいました。

作成不可のカテゴリに属している既存のコミュニティが、設定変更時に元のカテゴリを使用できない・また全てのコミュニティカテゴリが使用不可になった場合、既存の全てのコミュニティが設定変更できなくなる、という仕様はいささか不便ではないでしょうか。特に前者はコミュニティ設定変更時にコミュニティ管理者の意図せぬカテゴリ変更が行われてしまう可能性もあります。

コミュニティ作成不可のカテゴリに属している場合は「コミュニティ作成可のカテゴリ+そのコミュニティが属しているカテゴリ」をカテゴリの選択肢に表示させた方がコミュニティを管理しやすいと思いますが、どうでしょう?

comment:4 Changed 11 years ago by kiwa

Owner: changed from nobody to kiwa
Status: newassigned

取り込みやります。

comment:5 Changed 11 years ago by kiwa

Keywords: 確認中 added

r10822, r10823 で取り込みました。

comment:6 Changed 11 years ago by kiwa

Description: modified (diff)
Type: defecttask

管理の都合上、現象毎に別々のチケットを作成させてもらいました。descriptionに記載してあります。

コードチェック・動作確認や、議論・連絡等々はこのチケットで進行していきましょう。このチケットはタスクにさせてもらいます。

comment:7 Changed 11 years ago by toraneko

r10837 コミュ新規作成画面でカテゴリが全て作成不可だった場合はエラーとする修正を加えました。

r10838 コミュ編集画面で、カテゴリを選ぶ時に作成可能なカテゴリ+現在属しているカテゴリを選べるようにしました。

comment:8 Changed 11 years ago by kiwa

ありがとうございます、取り込みます。

comment:9 Changed 11 years ago by kiwa

  • r10837 - r10839にてtrunkに取り込みました
  • r10838 - r10841にてtrunkに取り込みました

comment:10 Changed 11 years ago by kiwa

r10868 にて、コミュニティ編集時に無効なコミュニティカテゴリを指定した場合、「そのカテゴリに新規にコミュニティを~」というエラーメッセージが返ってきていたのを変更させてもらいました。

コミュニティ作成・編集ともに、無効なコミュニティカテゴリが指定された場合は

指定されたカテゴリは選択できません

というエラーメッセージになります。

comment:11 Changed 11 years ago by ShogoKawahara

Keywords: テスト待ち added; 確認中 removed

comment:12 Changed 11 years ago by mogi

Keywords: 差し戻し added; テスト待ち removed

c_editで以下の条件の場合に、リダイレクト後のカテゴリが変更後のカテゴリになっていない。

  • 入力値→ カテゴリ作成「可」のカテゴリに属するコミュニティ 設定値→ カテゴリID: 存在しないカテゴリID
  • 入力値→ カテゴリ作成「可」のカテゴリに属するコミュニティ 設定値→ カテゴリID: -1
  • 入力値→ カテゴリ作成「不可」のカテゴリに属するコミュニティ 設定値→ カテゴリID: 現在属しているカテゴリ以外の作成「不可」カテゴリID

comment:13 Changed 11 years ago by kiwa

Keywords: テスト待ち added; 差し戻し removed

#3676 コミュニティ設定変更でカテゴリに不正な値を指定した場合、元のカテゴリが保持されない場合がある

致命的な不具合ではないので別チケット作成しました。

comment:14 Changed 11 years ago by kiwa

Keywords: テスト待ち removed
Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.