Moderation Functions
提供: GeeklogJpWiki
モデレーション関数
まず、現在のGeeklogのコーディングでは,投稿に用いられるプラグインテーブル名を指定の方法で名づけることが強制されるという制限があることに注意してください。全ての記事やリンクといったモデレートされるGeeklogのアイテムは2つのテーブルから構成されています。最初のテーブルは主テーブルで全ての表示される情報が保存されます。2番目のテーブルは投稿テーブルで投稿された情報が管理者の承認を得るまで保存されています。承認されれば、その情報は投稿テーブルから主テーブルに移動します。たとえば、ユーザが書評を投稿できるbook reviewプラグインを書いていて、主テーブル名をbookreviewsとするとします(この名前はプラグインの名前と同じである必要があります)。その場合には,投稿テーブル名はbookreviewssubmissionと名づけられなければなりません。なぜ名前を強制するのでしょう。Geeklogのコードでは,全ての記事の投稿テーブルは<main name>submissionと名づけられているからです。それで主テーブル(そしてプラグイン名)にbookreviewsという名称をつけたら、投稿テーブルはbookreviewssubmissionと名づけられる必要があります。
Geeklogの記事やリンクのようにモデレートできるようにする場合は,次のような関数を実装しなければなりません。
| 関数 | 関数の説明 |
|---|---|
| plugin_submit_{plugin_name} | プラグインの投稿フォームを表示します。 |
| plugin_itemlist_{plugin_name} | moderation.phpでモデレーションが必要なプラグインの項目を表示します。 |
| plugin_savesubmission_{plugin_name} | ユーザの投稿を{plugin_name}submissionテーブルに保存します。 |
| plugin_moderationdelete_{plugin_name} | {plugin_name}submissionテーブルからIDで検索して削除します。 |
| plugin_moderationapprove_{plugin_name} | {plugin_name}submissionテーブルからIDで検索してメインの{plugin_name}テーブルに移動します。 |
| plugin_moderationvalues_{plugin_name} | モデレーションページで表示したいテーブルのprimaryキーカラム名、テーブル名({plugin_name})、フィールドのリストを返します。 |