XOOPS X(ten)のプライベートメッセージで「うっかりブラックリスト登録」に注意

XOOPS Cube Legacy 2.2.xとXOOPS Xに同梱されているプライベートメッセージモジュールを使っていて、うっかり「ブラックリスト」に登録してハマるのにちょくちょく遭遇します。

これなんかもユーザさんがウッカリブラックリストに登録してしまったケースですね。

プライベートメッセージのブラックリストとは?

プライベートメッセージモジュールのブラックリストはユーザごとの受信拒否リストになってます。

迷惑なプライベートメッセージを送ってくるユーザをブロックするための機能ですね。(XOOPS で「ブロック」って言うとトップページ等に配置するカスタムブロックやモジュールブロックとゴッチャになりそうですね^^;)

便利な機能なのですが、ちょっとボタン画像がわかりにくいみたいで、ブロックする気がないのにブロックしてしまったという事態がちょくちょく発生するようです。

ブラックリストに登録(ブロック)するには

受信メッセージを開くと、返信等のボタンと共にブラックリストに登録するボタンも並んでます。

封筒のアイコンなのでうっかりクリックするユーザさんが結構いるみたいです。
このブラックリストへの登録ボタンをクリックすると確認画面無しでブラックリスト(拒否リスト)に登録されます。(確認のダイアログ出すようにしたら間違って登録すること減りますかね?)

ブラックリストから除外するには?

まちがってブラックリストに登録してしまってもプライベートメッセージのサブメニューにある「設定」からブラックリストの解除ができます。

この設定画面にある「受取拒否ユーザ」欄に表示されてる数字を直接削除でも解除できますが、ユーザ名を確認して解除したいときは「詳細」をクリックしてください。

下記が詳細画面です。ユーザ名が確認できるのでブラックリストから登録解除したい(つまりちゃんと受信したい)ユーザにチェックをいれて「削除」ボタンクリックすれば、ブラックリストから解除され、プライベートメッセージが届くようになります。

ブラックリストボタンを消すには?

うっかりブラックリストに登録してしまうことが多いから、ブラックリストに登録するボタンを削除したい!

ってときは、テンプレート修正しちゃいましょう。

修正するのはmessageモジュールのmessage_inboxview.htmlテンプレートです。

39行目あたりに下記の様なブラックリストボタンの記述があります。

<{if $msgdata.from_uid != 0}>
 <input type="image" value="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" src="<{$smarty.const.XOOPS_MODULE_URL}>/message/images/email_blacklist.png" alt="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" title="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" onclick="location.href='index.php?action=blacklist&amp;uid=<{$msgdata.from_uid}>'" style="float:left;" />
<{/if}>

これを削除してしまうか、コメントアウトしちゃいましょう
コメントアウトなら下記な感じ

<{*
 <{if $msgdata.from_uid != 0}>
 <input type="image" value="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" src="<{$smarty.const.XOOPS_MODULE_URL}>/message/images/email_blacklist.png" alt="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" title="<{$smarty.const._MD_MESSAGE_ADDBLACKLIST}>" onclick="location.href='index.php?action=blacklist&amp;uid=<{$msgdata.from_uid}>'" style="float:left;" />
<{/if}>
*}>

これでブラックリストボタンが非表示になります。お試しください

[PR]

投稿者プロフィール

龍司
XOOPS CubeとNetCommons3のカスタマイズをよくやってます。
技術ネタは https://qiita.com/RyujiAMANO に書くコトがおおいです。