サイトマップ
最近の更新

DokuWiki mboardプラグイン - 掲示板を設置する

形式

{{mboard>id=板ID&sort=asc|desc&size=10&post=public}}

概要

Wikiコンテンツ内に掲示板を配置します。

使い方

インストール

  1. このプラグインにはdatasourceプラグインが必要なので、まずそれをインストールしてください。
  2. DokuWikiの管理画面を開き、[管理者メニュー]→[サイト設定]で表示される画面の「Datasource プラグイン設定」で、データベース関連の設定を行ってください。
  3. 下記のダウンロードリンクからファイルをダウンロードし、
    DokuWikiのインストールディレクトリ/lib/plugin/

    の下で展開してください。mboardというディレクトリの下に本プラグインが展開されます。

  4. 再度DokuWikiの管理画面を開き、追加プラグインの[mboard - メッセージボード・プラグイン]をクリックし、mboardプラグインの管理画面を開いてください。
  5. データベースに接続できた場合は必要なテーブルを作成します。すでにテーブルが存在する場合は何もしません。
  6. 以上でインストールは終了です。

マークアップ

DokuWikiコンテンツで、掲示板を設置したいところに形式に従ってマークアップを記述してください。その場所に掲示板のメッセージ一覧と書き込み用のフォームが表示されます。マークアップには次のパラメータを使用します。

 
id
掲示板のIDを指定します[必須]。あまりないことかもしれませんが、同一ページ内に複数の掲示板を設置したとき、それぞれを区別するために必要となります。
 
sort
'asc'を指定すると、メッセージが昇順に、'desc'を指定するとメッセージが降順に表示されます。省略時は'asc'と解釈されます。
 
size
一度に表示するメッセージ数を指定してください。省略時は'20'と解釈されます。
 
post
掲示板に誰が書き込み可能かを指定します。'public'を指定するとログインユーザであるかどうかにかかわらず、すべてのユーザが書き込み可能となります。'group'を指定するとページ所有者と同一グループユーザのみが書き込み可能です。'owner'を指定すると配置したページの所有者のみが書き込み可能となります。省略時は'owner'と解釈されます。

メッセージの書き込み

名前、メッセージ欄に記入して[送信]ボタンをクリックしてください。メッセージはただちに書き込まれ、書き込んだメッセージの背景が黄色く表示されます。

メッセージの削除

ページの所有者または書き込んだ本人は、レス番号の上にカーソルを合わせると「このメッセ―ジを削除します」とポップアップ表示されます。そのままレス番号をクリックすると、削除確認のダイアログが表示されます。削除する場合は[OK]、削除しない場合は[キャンセル]をクリックしてください。

post=publicが指定されていて、書き込んだ本人がログインユーザでない場合は、セッションが継続中(サイトによりますが、大体30分程度でしょう)の間のみ削除可能です。

アクセス権

閲覧のアクセス権はページのアクセス権に準じ、書き込みのみが制御されます。

  • owner .. ページの所有者のみが書き込みできます。
  • group .. 指定したグループに所属するユーザのみが書き込みできます。
  • public .. ログインしていないユーザも書き込みができます。

また、セキュリティトークンを用いてSPAM防止を行います。

ファイル

  • 掲示板コンテンツは、MySQLデータベースとして保存されます。

必要な環境

  • Apache + PHP 5.3.x
  • MySQL
  • DokuWiki本体
  • PHP MySQL extension
  • PHP PDO extension
  • datasourceプラグイン

イベント

LOGGER_LOG_WRITEイベントを使用してログを出力します。このイベントを処理するプラグインがない場合は、ログは捨てられます。

実装

  • コアな機能はhelperに集約する。
  • syntaxは初期のメッセージ一覧を表示する。
  • ページ繰りはAJAXで。
  • AJAXはactionからAJAX_UNKNOWN_CALLでフックして実行する。

TODO

  • 書き込んだらページの最終更新日付も更新したい。

ダウンロード

4 : 開発担当 : 2012-09-25 16:32:26
あまりきちんと動作検証ができていませんが、とりあえずリリースしました。
 
plugin/mboard.txt · 最終更新: 2012/09/27 20:01 by Kazuyuki Matsuda
特に明示されていない限り、本サイトの内容は次のライセンスに従います:Copyright(C) 2011 Shorindo, Inc. All Rights Reserved
Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki