Ticket #3723 (closed enhancement: fixed)

Opened 8 years ago

Last modified 8 years ago

指定したメンバーの書き込みを全て削除する機能

Reported by: toraneko Assigned to: toraneko
Priority: minor Milestone: OpenPNE2.13.7
Component: 指定しない Version:
Keywords: Cc:

Description (Last modified by kudo)

■ 概要

http://sns.openpne.jp/?m=pc&a=page_fh_diary&target_c_diary_id=20993&comment_count=13

特定ユーザに書き込まれたものを事後対策として管理画面から削除出来るようにします。

■仕様

< 機能内容 > ユーザ指定で、書き込み一括削除を行えるようにする

< 機能詳細 > 管理者用「メンバーリスト」画面の「操作パネル」欄に、「書き込み一括削除」ボタンを 設ける 本ボタン押下により、指定メンバーの書き込みを全て削除できるようにする

< 修正内容 > (1) 管理者画面

1.メンバーリスト画面の「操作パネル」欄に、「書き込み一括削除」ボタンを追加 2.[1]のボタンが押された後、確認画面を表示 3.[2]の確認画面でOKが押された場合、以下の項目を全て削除する

    ・日記     ・日記コメント     ・トピック     ・トピックコメント     ・イベント     ・イベントコメント     ・アルバム     ・送信メッセージ

現段階では、対象者がコミュニティ管理者のコミュニティは削除しない

  また、対象者の受信メッセージも削除はしていない

(2) PC/携帯画面

変更なし

(3) DB

変更なし

(4) config.php

変更なし

(5) ソース OpenPNE2.13.6ベースで作成

< 備考 > メンバーリスト管理画面の「書き込み一括削除」ボタンに表示する画像ファイル名を 「./modules/admin/img/icn_delete_all.gif」としてありますが、適切な名前に変更 してください

■関連情報

修正ソース

  • r10996でコミットしました。
  • r10997 日記コメント削除時のパラメタ不正修正

Change History

03/11/09 16:11:05 changed by toraneko

  • description changed.

03/11/09 16:35:12 changed by toraneko

  • description changed.

03/11/09 16:42:18 changed by kiwa

  • milestone set to OpenPNE2.13.7.

2.13.7でみてみましょう。

03/11/09 16:58:24 changed by toraneko

  • description changed.

03/16/09 16:31:30 changed by nakasone

  • keywords set to 確認中.

以下のリビジョンで対応しました。

03/16/09 17:38:01 changed by nakasone

不要な閉じタグがあったので以下のリビジョンで削除しました。

03/19/09 19:00:49 changed by nagasawa

  • keywords deleted.
  • owner changed from nobody to nagasawa.
  • status changed from new to assigned.
  • admin_do_delete_c_member_write_all
  • admin_page_delete_c_member_write_all_confirm

メンバーIDのチェックが行なわれていないので存在しないメンバーでもエラー画面に遷移しない

修正します

03/19/09 19:20:31 changed by nagasawa

  • keywords set to 確認中.

r11070 で修正しました。

03/23/09 18:15:11 changed by ebihara

  • keywords changed from 確認中 to 差し戻し.
  • コミュニティは削除しなくて大丈夫でしょうか?(大丈夫ならOKです)
  • db_common_delete_c_member_write_all() でおこなっている投稿削除処理で、以下のものが db_common_delete_c_member() のものと重複しています。共通化してください。
    • 日記削除処理
    • アルバム削除処理
  • アイコン画像がありません(認識はしていると思いますが。もちろんリリースまでに準備できるよう動いていますよね?)。
  • admin_do_delete_c_member_write_all と admin_page_delete_c_member_write_all_confirm のバリデーションルールが微妙に異なっています。
  • webapp/modules/admin/templates/delete_c_member_write_all_confirm.tpl の 15 行目、 strong 要素の閉じタグ直前に不要な < があります。
  • 以下のようなマークアップは正直言ってあまり歓迎されるものではない気がします。無理矢理リストにしているのであれば別の方法でマークアップしてください。そうでなければリストを入れ子にするなどしてください。
    <ul class="cautionList">
        <li class="caution" ><strong>※以下の投稿が削除対象になります<</strong></li>
        <li class="caution" >&nbsp;&nbsp;&nbsp;日記、日記コメント、トピック・イベント、トピック・イベントのコメント、送信メッセージ、アルバム</li>
    </ul>
    
  • docblock コメントが間違っています。 param ではなく params です
    /**
     * 指定メンバーの書き込み一括削除
     * 以下の書き込みが削除対象
     * ・日記、日記コメント
     * ・トピック・イベント、トピック・イベントのコメント
     * ・送信メッセージ
     * ・アルバム
     *
     * @param int $c_member_id
     */
    

03/23/09 20:24:51 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

r11114 で修正しました。

03/23/09 20:51:04 changed by ebihara

  • keywords changed from 確認中 to テスト待ち.

03/25/09 15:51:26 changed by fukamachi

  • keywords changed from テスト待ち to 差し戻し.

db_common_delete_c_member_write_all 内のSQLパラメータの指定間違いがあります。

1033    $sql = 'DELETE FROM c_diary WHERE c_member_id = ?';
1034    db_query($sql, $params);

このときdb_queryの第2引数は$params(削除するメンバーID)ではなく$c_diaryのIDです。

03/25/09 18:16:00 changed by nagasawa

r11070時点でのソースでしょうか?
現在その行は削除され、関数化されています。

指定されたメンバーの日記をすべて削除するので$paramsに$c_member_idを指定してるのは 問題ないかと思います。

ソース眺めててミスが見つかってしまいました。

db_diary_delete4c_member_id($c_member_id)
1318	    $single = array(intval($c_member_id)); 
1319	    $c_diary_list = db_get_all($sql, $params, 'main'); 

$paramsではなく$singleですね・・・。

03/25/09 18:21:40 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

r11163 で修正しました。

03/25/09 18:32:39 changed by kiwa

  • keywords changed from 確認中 to 差し戻し.

以下の現象を確認お願いします。

  1. メンバーAがメンバーBの日記にコメントする
  2. メンバーAを対象に書き込みの一括削除を行う
  3. 1で書き込んだメンバーAのコメントが削除されていない

削除対象に「日記コメント」が入っているので、1のような他人の日記へのコメントも削除されるべきだと思います。

(follow-up: ↓ 17 ) 03/25/09 18:46:50 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

r11164 で修正しました。

(in reply to: ↑ 16 ) 03/25/09 23:26:48 changed by ogawa

  • keywords changed from 確認中 to 差し戻し.

r11164 で追加した部分は db_common_delete_c_member() ではおこなっていなかった処理なので、共通関数に入れるべきではありません。

03/27/09 13:19:10 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

r11173 で修正しました。

03/30/09 15:42:23 changed by kiwa

  • keywords changed from 確認中 to 差し戻し.

以下の現象の確認をお願いします

  • 書き込み一括削除の確認画面のニックネームをクリックするとadmin_page_c_member_detailにではなくpage_h_homeに遷移する
  • 書き込み一括削除確認画面にて、削除対象についての表示がSNS名称設定に対応していない
  • 書き込み一括削除後、日記コメント記入履歴にリストが残る(コメントは削除されている)

03/30/09 15:52:48 changed by kiwa

r11180にてメンバーリストの操作ボタンが追加されています。ボタンをキレイにするのはメジャーバージョンアップまでにやりましょう。#3750で対応します。

03/30/09 21:48:16 changed by ogawa

合わせて修正してださい。DocBlock? 内の @params は @param の方が正しいのでこちらで統一してください。

03/31/09 13:38:57 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

r11188 でcomment:19,comment:21を修正しました。

03/31/09 15:07:14 changed by kiwa

  • keywords changed from 確認中 to 差し戻し.

細かいですが、以下の修正をお願いします。

admin_page_delete_c_member_write_all_confirm

ニックネームのリンク

  • ページ名ランダム生成に対応していません
  • ADMIN_MODULE_NAMEの変更に対応していません
  • 管理画面内のリンクなので、リンク先を新しいウインドウで開く必要は無いと思われます

03/31/09 15:19:47 changed by nagasawa

  • keywords changed from 差し戻し to 確認中.

23:r11193 で修正しました。

04/14/09 21:11:45 changed by kiwa

  • keywords changed from 確認中 to 差し戻し.
  • owner changed from nagasawa to kiwa.
  • status changed from assigned to new.

細かい修正やります

(follow-up: ↓ 27 ) 04/15/09 03:10:03 changed by kiwa

  • keywords changed from 差し戻し to 確認中.

r11306 にて取り込みました。

(in reply to: ↑ 26 ; follow-up: ↓ 28 ) 04/15/09 03:10:49 changed by kiwa

Replying to kiwa:

r11306 にて取り込みました。

r11306にてogawaさんから提供された細かい修正部分の取り込みを行いました

(in reply to: ↑ 27 ) 04/15/09 20:27:39 changed by kiwa

  • keywords changed from 確認中 to 差し戻し.

Replying to kiwa:

OpenPNE/trunk/webapp/modules/admin/templates/list_c_member.tpl

の変更でWarningが発生しています。

04/15/09 20:35:34 changed by kiwa

  • keywords changed from 差し戻し to 確認中.

r11315 にてOpenPNE/trunk/webapp/modules/admin/templates/list_c_member.tplの変更を取り消しました。

(follow-up: ↓ 32 ) 04/16/09 11:56:23 changed by kiwa

  • keywords deleted.
  • owner changed from kiwa to toraneko.

#3830:指定したメンバーの書き込みを全て削除する機能 コードチェック

残りのコードチェックは上のチケットで行います。動作を確認したところ致命的な問題はなさそうなので、今回はこれで完了とします。

04/16/09 11:56:32 changed by kiwa

  • status changed from new to closed.
  • resolution set to fixed.

(in reply to: ↑ 30 ) 04/16/09 11:59:19 changed by kiwa

Replying to kiwa:

#3830:指定したメンバーの書き込みを全て削除する機能 コードチェック

#3831の誤りです。

05/25/09 11:25:44 changed by kudo

  • description changed.