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

Opened 11 years ago

Closed 11 years ago

#3107 closed defect (fixed)

フレンド申請などの件数が多くなると、携帯版の承認待ちリストが表示できなくなる場合がある

Reported by: ebihara Owned by: akamine
Priority: minor Milestone: OpenPNE2.12.6
Component: 指定しない Version: 2.10.x & 2.12.x & 2.14.x
Keywords: OpenPNE2.10.12 OpenPNE2.13.5 Cc:

Description (last modified by akamine)

■現象

承認待ちリストのページは、フレンド申請などを全件表示する実装になっている。

■原因

そのため、ページサイズが肥大化してしまい、一部の携帯端末における制限に引っかかり、表示できなくなってしまう場合がある。

■修正内容

・申請内容を個別に表示させるページを作成

・今まで全部表示していたh_confirm_listを個別ページのリンクページにしました。

・個別ページは件数制限をかけて1ページあたりに表示する申請数にも制限をかけました。(デフォルト5件(コメントが挿入されるため一応少なめにしてあります。))

これで表示できなくなってしまう不具合がなくなりました。

■関連情報

Change History (27)

comment:1 Changed 11 years ago by akamine

Owner: changed from nobody to akamine
Status: newassigned

対応します。

comment:2 Changed 11 years ago by ebihara

Keywords: OpenPNE2.13.5 added; OpenPNE2.13.4 removed

今回の開発版では対応をおこないません。

2.13.4 リリース前に対応が完了した場合、2.13.4リリース後までtrunkへのマージを控えてください。

comment:3 Changed 11 years ago by akamine

Description: modified (diff)
Keywords: 確認中 added

以下のリビジョンを修正しました。

comment:4 Changed 11 years ago by akamine

以下のリビジョンを再度修正しました。

(携帯で、フレンド認証を受けた時に承認、拒否共にエラーになる不具合を修正)

comment:5 Changed 11 years ago by akamine

以下のリビジョンを修正しました。

comment:6 Changed 11 years ago by kiwa

Keywords: 差し戻し added; 確認中 removed

まだコードチェックが入ってないですが、軽く動かしてた中で発見した不備を報告しておきます。

h_confirm_list

  1. タイトルが「承認・要請中リスト」では承認待ちリストが無いように感じます。「承認待ち・要請中リスト」になるのではないでしょうか?意味的には普通に「承認待ちリスト」でもいい気がしますが……。
  2. ◆の前にあるfontタグが切れていません。「<font color="#({$ktai_color_config.bg_02})">◆</font>」としてください

h_home

  1. BIZモードにも変更の適応をお願いします
  2. リンク横の絵文字[i:76]は「紹介文」のリンクと同じですが、何か意図的なものでしょうか?とくに意図がなければ別の絵文字にしたほうがいい気がします
  3. 各種承認待ちメッセージ(「★コミュニティ参加承認待ち1件」など)の遷移先がh_confirm_listのままです。ページが分割されたならこちらも対応するページに遷移したほうが親切かと思います

分割された承認待ちリスト

  1. タイトル名はh_confirm_listにあわせてください
  2. h_anatani_c_friend_confirm_list,h_anataga_c_friend_confirm_list以外のサブタイトルがセンタリングされていません
  3. h_anatani_c_friend_confirm_list,h_anataga_c_friend_confirm_listのサブタイトルが他のページと統一されていません
    • サブタイトルに件数が表示されています
    • 他のページは「コミュニティ副管理者承認待ち」などになっているのに対し、上記2ページのみ「承認待ちリスト」となっています
  4. 承認待ちのリストが0件の場合のメッセージが所々不自然です。特に意図するものがないのならPC版のメッセージに合わせていいのではないでしょうか
  5. 設定変更にある各種変更ページのように、ページ下部罫線とフッタの間にh_confirm_listへのリンクを入れてください

comment:7 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンを修正しました。

comment:8 Changed 11 years ago by ebihara

Keywords: 差し戻し対応 added; 確認中 removed
  • webapp/lib/db/*.php で定義する関数名は、周りにあわせて db_*_ というプレフィックスを付けるようにしてください。以下の関数が該当します(他にもあるかも)。
    • db_count_c_anatani_friend_confirm()
    • db_count_c_anataga_friend_confirm()
    • db_ktai_commu_anatani_c_commu_sub_admin_confirm_list4c_member_id()
    • db_ktai_commu_anataga_c_commu_member_confirm_list4c_member_id()
    • db_ktai_commu_anataga_c_commu_sub_admin_confirm_list4c_member_id()
    • db_ktai_commu_anatani_c_commu_admin_confirm_list4c_member_id()
    • db_ktai_commu_anatani_c_commu_member_confirm_list4c_member_id()
    • db_ktai_commu_anatani_c_commu_sub_admin_confirm_list4c_member_id()
    • db_ktai_commu_anataga_c_commu_admin_confirm_list4c_member_id()
  • db_friend_ktai_anataga_c_friend_confirm_list4c_member_id(), db_friend_ktai_anatani_c_friend_confirm_list4c_member_id() の関数定義(引数、返り値)を安定版で変えてしまうのは問題かなと思います。別に関数を作れないでしょうか?
  • webapp/modules/ktai/page/h_confirm_list.php のコメントが不自然です
    //あなたにフレンド認証を求めいるメンバーリストの数
    
  • ktai_page_h_anatani_c_friend_confirm_list, ktai_page_h_anatani_c_commu_sub_admin_confirm_list, ktai_page_h_anataga_c_commu_admin_confirm_list, ktai_page_h_anatani_c_commu_member_confirm_list, ktai_page_h_anatani_c_commu_admin_confirm_list, ktai_page_h_anataga_c_commu_sub_admin_confirm_list, ktai_page_h_anataga_c_commu_member_confirm_list, ktai_page_h_anataga_c_friend_confirm_list で $target_c_member_id を受け取っているようですが、このページは自分自身の情報を表示するページであり、その必要はないのではないでしょうか。このような紛らわしい記述が残っていると、たとえば今後 $u ではなく $target_c_member_id の情報を取ってくるように誤って修正されてしまうなど、重大な脆弱性に繋がる可能性があり、危険です。確実に削除してください。
  • webapp/modules/ktai/templates/h_anataga_c_commu_member_confirm_list.tpl, webapp/modules/ktai/templates/h_anataga_c_friend_confirm_list.tpl, webapp/modules/ktai/templates/h_anatani_c_commu_admin_confirm_list.tpl, webapp/modules/ktai/templates/h_anataga_c_commu_admin_confirm_list.tpl, webapp/modules/ktai/templates/h_anatani_c_friend_confirm_list.tpl, webapp/modules/ktai/templates/h_anatani_c_commu_sub_admin_confirm_list.tpl, webapp/modules/ktai/templates/h_anatani_c_commu_member_confirm_list.tpl, webapp/modules/ktai/templates/h_anatani_c_commu_sub_admin_confirm_list.tplのリストが false と評価される値の場合に、開始タグのない table 要素の終了タグのみが残っている状態になってしまいます
  • webapp/modules/ktai/templates/h_anataga_c_commu_sub_admin_confirm_list.tpl に「副管理者交代」という文言がありますが、副管理者交代機能は存在しないため適切ではありません
  • db_ktai_commu_anataga_c_commu_member_confirm_list4c_member_id(), db_ktai_commu_anataga_c_commu_sub_admin_confirm_list4c_member_id(), db_ktai_commu_anatani_c_commu_admin_confirm_list4c_member_id(), db_ktai_commu_anatani_c_commu_member_confirm_list4c_member_id(), db_ktai_commu_anatani_c_commu_sub_admin_confirm_list4c_member_id(), db_ktai_commu_anataga_c_commu_admin_confirm_list4c_member_id() の第二引数にデフォルト値を設定する意味はありません。混乱するので削除をお願いします

comment:9 Changed 11 years ago by ebihara

Keywords: 差し戻し added; 差し戻し対応 removed

comment:10 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンを修正しました。


  • プレフィックスに関しては指摘された関数に加えwebapp/lib/db/commu.phpで作成したdb_count・・・の関数も修正しました。今回の修正で作成した関数に関しては全て修正してあります。
  • db_friend_ktai_anataga_c_friend_confirm_list4c_member_id(),   db_friend_ktai_anatani_c_friend_confirm_list4c_member_id() に関しては新規作成した関数を他に習い語尾に2をつけdb_friend_ktai_anatani_c_friend_confirm_list4c_member_id2()のようにし、従来の関数定義は元に戻しました。
  • その他は上記コメントを参考にし、それに準ずる形で修正しました。

comment:11 Changed 11 years ago by ebihara

Keywords: 差し戻し added; 確認中 removed

「新規作成した関数を他に習い語尾に2をつけ db_friend_ktai_anatani_c_friend_confirm_list4c_member_id2() のように」とありますが、これはやめてください。これでは関数の意味が不明確になってしまいます。 _with_pager を付けるなど、関数の意味が伝わりやすくなるよう区別してください

comment:12 Changed 11 years ago by ebihara

  • db_commu_ktai_anataga_c_commu_sub_admin_confirm_list4c_member_id() の関数定義に、不要なデフォルト値 $page_size=5 の指定があります
  • db_member_c_member4c_member_id_LIGHT() の代わりに db_common_c_member4c_member_id_LIGHT() を使うように修正しているようですが、これはなぜでしょうか? db_common_c_member4c_member_id_LIGHT() は webapp/lib/db/deprecated_lib.php というファイルで定義されていることから明らかなように、非推奨であり、今後のバージョンアップで削除される可能性があり得ます。決して使わないでください

comment:13 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンを修正しました。

関数名はdb_friend_ktai_anataga_c_friend_confirm_list4c_member_id2だった関数に関しては2の部分を_with_pagerに変更し、
db_friend_ktai_anataga_c_friend_confirm_list4c_member_id_with_pager
のように変更しました。

又、db_member_c_member4c_member_id_LIGHT() の代わりに db_common_c_member4c_member_id_LIGHT() を使用するよう修正した部分は全てdb_member_c_member4c_member_id_LIGHT()に修正し、新しく作成した関数に関しても同様の修正を行いました。

comment:14 Changed 11 years ago by shingo

【2.12・trunk】

  • 今回追加されたヴァリデーションファイルに以下の未使用の変数の定義がなされている
    [target_c_member_id]
    type = "int"
    default = 0
    
  • 今回の修正内容とは外れますが、旧関数が「db_common_c_member4c_member_id_LIGHT」が使われている箇所があります。ついでに修正してください。
    webapp/lib/db/diary.php
    
    1199- * @return  array_of_array  (c_diary.*, nickname)
    1200- */
    1201-function p_h_home_c_diary_all_list($limit)
    1202-{
    1203-    $sql = 'SELECT * FROM c_diary WHERE public_flag = \'public\''
    1204-         . ' ORDER BY c_diary.r_datetime DESC';
    1205-
    1206-    $c_diary_list_all = db_get_all_limit($sql, 0, $limit);
    1207-
    1208-    foreach ($c_diary_list_all as $key => $value) {
    1209:        $c_member = db_common_c_member4c_member_id_LIGHT($value['c_member_id']);
    1210-        $c_diary_list_all[$key]['nickname'] = $c_member['nickname'];
    1211-        $c_diary_list_all[$key]['count_comments'] = db_diary_count_c_diary_comment4c_diary_id($value['c_diary_id']);
    1212-    }
    1213-    return $c_diary_list_all;
    1214-}
    1215-
    1216-
    


【210】

  • 関数db_friend_ktai_anatani_c_friend_confirm_list4c_member_id_with_pager 内に「db_common_c_member4c_member_id_LIGHT」が使用されている。

comment:15 Changed 11 years ago by shingo

Keywords: 差し戻し added; 確認中 removed

comment:16 Changed 11 years ago by kiwa

現象1

場所

  • ktai_page_h_anatani_c_friend_confirm_list
  • ktai_page_h_anatani_c_commu_member_confirm_list
  • ktai_page_h_anatani_c_commu_admin_confirm_list
  • ktai_page_h_anatani_c_commu_sub_admin_confirm_list
  • ktai_page_h_anataga_c_friend_confirm_list
  • ktai_page_h_anataga_c_commu_member_confirm_list
  • ktai_page_h_anataga_c_commu_admin_confirm_list
  • ktai_page_h_anataga_c_commu_sub_admin_confirm_list

内容

リスト表示のためのforeachのなかに</table>も含まれてしまっているためレイアウトが崩れている。

現象2

場所

  • ktai_page_h_confirm_list

内容

「コミュニティ管理者交代要請中」「コミュニティ副管理者要請中」の件数が承認待ちの件数になっている

現象3

場所

  • ktai_page_h_anataga_c_commu_admin_confirm_list

内容

FatalErrorが発生しているため表示できない

Fatal error: Smarty error: [in file:/hogehoge/webapp/modules/ktai/templates/h_anataga_c_commu_admin_confirm_list.tpl
 line 38]: syntax error: mismatched tag {/if}. expected {/foreach} (opened line 17). (Smarty_Compiler.class.php,
 line 2289) in /hogehoge/lib/include/Smarty/Smarty.class.php on line 1095

現象4

場所

  • ktai(biz)_page_h_home

内容

「お気に入り」と「承認待ちリスト」の間に改行がない

現象5

場所

  • ktai_page_h_anatani_c_friend_confirm_list
  • ktai_page_h_anatani_c_commu_member_confirm_list
  • ktai_page_h_anatani_c_commu_admin_confirm_list
  • ktai_page_h_anatani_c_commu_sub_admin_confirm_list
  • ktai_page_h_anataga_c_friend_confirm_list
  • ktai_page_h_anataga_c_commu_member_confirm_list
  • ktai_page_h_anataga_c_commu_admin_confirm_list
  • ktai_page_h_anataga_c_commu_sub_admin_confirm_list

内容

2.10のみ、「ニックネーム」と表示されるべき場所がすべて表示されない

comment:17 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンを修正しました。

comment:18 Changed 11 years ago by akamine

以下のリビジョンで各ファイルのテーブル終了位置を再度修正しました。

comment:19 Changed 11 years ago by shingo

Keywords: 差し戻し added; 確認中 removed

【2.10】
webapp/modules/ktai/page/h_c_anatani_friend_confirm_list.php
に「$WORD_NICKNAME_HALF」が残っている

comment:20 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンでwebapp/modules/ktai/page/h_c_anatani_friend_confirm_list.phpを削除しました。

comment:21 Changed 11 years ago by shingo

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

comment:22 Changed 11 years ago by kiwa

Keywords: 差し戻し added; テスト待ち removed
  • ktai_page_h_anatani_c_friend_confirm_list
  • ktai_page_h_anatani_c_commu_member_confirm_list
  • ktai_page_h_anatani_c_commu_admin_confirm_list

2.10.x/2.12.x/trunkでFatal errorが表示されます。

Fatal error: Smarty error: [in file:/hogehoge/webapp/modules/ktai/templates/h_anatani_c_friend_confirm_list.tpl line 55]: syntax error: unclosed tag \{else} (opened line 13). (Smarty_Compiler.class.php, line 320) in /hogehoge/lib/include/Smarty/Smarty.class.php on line 1095

全て似たようなエラーメッセージのためktai_page_h_anatani_c_friend_confirm_listのみ載せておきます。

comment:23 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンでFatal errorが出ていたのを修正しました。

又、以下のリビジョンで各詳細画面の並び順を古い順に表示されるよう修正しました。

comment:24 Changed 11 years ago by ogawa

Keywords: 差し戻し added; 確認中 removed

ページ番号の指定に「direc」は使用しないようにしてください。OpenPNE2.12以降では全く使用していません。今回の追加ファイルでもテンプレートには「direc」は存在しないので、2.10でもリクエスト変数から削除しても問題ないと思います。

「direc」の存在するファイル

  • webapp/modules/ktai/page/h_anataga_c_commu_admin_confirm_list.php
  • webapp/modules/ktai/page/h_anataga_c_commu_member_confirm_list.php
  • webapp/modules/ktai/page/h_anataga_c_commu_sub_admin_confirm_list.php
  • webapp/modules/ktai/page/h_anataga_c_friend_confirm_list.php
  • webapp/modules/ktai/page/h_anatani_c_commu_admin_confirm_list.php
  • webapp/modules/ktai/page/h_anatani_c_commu_member_confirm_list.php
  • webapp/modules/ktai/page/h_anatani_c_commu_sub_admin_confirm_list.php
  • webapp/modules/ktai/page/h_anatani_c_friend_confirm_list.php
  • webapp/modules/ktai/validate/page/h_anataga_c_commu_admin_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anataga_c_commu_member_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anataga_c_commu_sub_admin_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anataga_c_friend_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anatani_c_commu_admin_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anatani_c_commu_member_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anatani_c_commu_sub_admin_confirm_list.ini
  • webapp/modules/ktai/validate/page/h_anatani_c_friend_confirm_list.ini

comment:25 Changed 11 years ago by akamine

Keywords: 確認中 added; 差し戻し removed

以下のリビジョンでページ番号の指定に「direc」は使用しないように修正しました。

comment:26 Changed 11 years ago by shingo

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

comment:27 Changed 11 years ago by kiwa

Keywords: テスト待ち removed
Resolution: fixed
Status: assignedclosed

確認しました。問題ありません。

Note: See TracTickets for help on using tickets.