SB3 仕様書 draft

1.draft概要

1.1.位置付け

サンドボックス3(以下:SB3)の下書き批評システムにおける直接批評を受けるページである。

各ユーザは複数のdraftを持つ事ができ、任意のdraftの各設定を変更する事によって該当のdraftに対しての批評依頼を出す事ができる。

1.2.draftの各設定の意味

各draftは下記3つの項目について設定を変更する事ができる。

  1. ステータス
  2. カテゴリ
  3. ジャンル

SB3の批評システムは各draftにつけられた上記の項目の値を用いて動作する。項目の意味、具体的な値、及びシステム方式については下記仕様書を参照。

詳細: SB3 仕様書 項目設定

1.3.システム構成要素

draftは下書きの執筆を目的としたページである為、システムが下書きに与える影響を軽微にする必要がある。その為、draftのシステムはWikidot構文の拡張によってのみ作られる。

2.UI

2.1.概要

under.PNG

fig.1

draftは大きく分けて4つ要素から成り立つ。

  1. ステータス部
  2. 下書き部
  3. ページコンソール
  4. コメント部

各要素の表示制御は全て[[iftags]]によって行う。

以下より各要素の説明を行う。

2.2 ステータス表示部

ステータス表示部は該当draftのカテゴリ及びステータスの状態に応じて以下の表示を行う。

記事カテゴリが未定義です。
ページコンソールよりカテゴリを選択してください。

dsp.2.2.1

現在このページは批評中です。

dsp.2.2.2

現在このページは改稿中です。

dsp.2.2.3

このページの批評は終了しました。

dsp.2.2.4

また条件によっては何も表示されない事もある。以下に表示条件を記す

条件 表示
  • カテゴリ: 未定義
dsp.2.2.1
  • カテゴリ: 定義済
  • ステータス: 批評中
dsp.2.2.2
  • カテゴリ: 定義済
  • ステータス: 改稿中
dsp.2.2.3
  • カテゴリ: 定義済
  • ステータス: 批評終了
dsp.2.2.4
  • カテゴリ: 定義済
  • ステータス: 未定義
-

2.3.下書き部

ユーザが自由に編集できる範囲である。批評対象はこの範囲に記された文章になる。

2.4 ページコンソール

2.4.1 構成

ページコンソールの構成要素は以下の3つである。

  1. ステータス設定
  2. カテゴリ設定
  3. ジャンル設定

上記はそれぞれ本仕様書「1.2.draftの各設定の意味」に記述した各設定の変更を行うものである。上記の要素は各設定を変更するボタンをまとめて配置する事によって作られる。また、設定を変更するボタンは条件に応じて表示のされ方及び機能が変化する。

ページコンソールの機能を有する各ボタンはタグ変更ボタンにより実装する。

下記より各ボタンの機能及び表示条件の説明を行う。

2.4.2.全体の表示

ページコンソールの項目部は条件に応じて下記の表示に切り替わる。

dsp.2.4.2.1
ページコンソール
dsp.2.4.2.2

dsp.2.4.2.1の時はページコンソール全体が折り畳まれ、項目名をクリックする事が展開される。

表示の条件は下記である。

条件 表示 表示形式
ステータス: 批評中 dsp.2.4.2.1 折り畳み
上記以外 dsp.2.4.2.2 常時表示

2.4.3.ステータス設定

draftのステータスを切り替えるボタンである。

ステータス設定には条件に応じて以下の4つのボタンが表示される。これらは単独ではく、他のボタンと一緒に現れる事もある。また条件によっては表示されない場合もある。

ステータスを「批評中」に変更
dsp.2.4.3.1
ステータスを「改稿中」に変更
dsp.2.4.3.2
ステータスを「批評終了」に変更
dsp.2.4.3.3
批評終了」ステータスを解除
dsp.2.4.3.4

上記のボタンはそれぞれ下記の機能を有している。

ボタン 機能
dsp.2.4.3.1 ステータスを「批評中」に切り替える
dsp.2.4.3.2 ステータスを「改稿中」に切り替える
dsp.2.4.3.3 ステータスを「批評終了」に切り替える
dsp.2.4.3.4 ステータスを「未定義」に切り替える

上記のボタンの表示条件及び表示の組み合わせは下記の通りである。

条件 表示
  • カテゴリ: 未定義
-
  • カテゴリ: 定義済
  • ステータス: 未定義
dsp.2.4.3.1
  • カテゴリ: 定義済
  • ステータス: 批評中
dsp.2.4.3.2
dsp.2.4.3.3
  • カテゴリ: 定義済
  • ステータス: 改稿中
dsp.2.4.3.1
dsp.2.4.3.3
  • カテゴリ: 定義済
  • ステータス: 批評終了
dsp.2.4.3.4

2.4.4.カテゴリ設定

該当draftのカテゴリ設定を切り替えるボタンが配置されている。

カテゴリ設定に配置されている各ボタンは条件に応じて下記のようにデザインを切り替える。

※例はSCP-JP

SCP-JP
dsp.2.4.4.1
SCP-JP
dsp.2.4.4.2

上記のボタンが持つ機能は下記の通りである。

ボタン 機能
dsp.2.4.4.1 カテゴリをボタンに記されたカテゴリに切り替える
dsp.2.4.4.2 機能なし

機能を持たないボタンは[[span]]によって実装する。

上記ボタンの表示条件は以下の通りである。

条件 表示
カテゴリ: 該当ボタンのカテゴリ以外 dsp.2.4.4.1
カテゴリ: 該当ボタンのカテゴリ dsp.2.4.4.2

カテゴリが「翻訳」である場合のみ、カテゴリ設定とジャンル設定の間にカテゴリ(原文言語)設定のボタンが現れる。カテゴリ(原文言語)設定ボタンは「カテゴリ(原文言語)」を切り替える機能を持ち既に設定されたカテゴリ(原文言語)に該当するボタンは機能を有しない。デザイン及び切り替わり条件、実装方式はカテゴリ設定ボタンと同じである。

「翻訳」以外のカテゴリ設定ボタンが押された場合、該当のdraftからカテゴリ(原文言語)の設定を削除する。

2.4.5.ジャンル設定

該当のdraftに対するジャンルの付与/削除を行うボタンが配置されている。

ジャンル設定に配置されている各ボタンは条件に応じて下記のようにデザインを切り替える。

※例はJoke

Joke
dsp.2.4.5.1
Joke
dsp.2.4.5.2

上記のボタンが持つ機能は下記の通りである。

ボタン 機能
dsp.2.4.5.1 ボタンに記されたジャンルを付与する
dsp.2.4.5.2 ボタンに記されたジャンルを削除する

上記ボタンの表示条件は以下の通りである。

条件 表示
ジャンル: 該当ボタンのジャンルが存在しない dsp.2.4.5.1
ジャンル: 該当ボタンのジャンルが存在する dsp.2.4.5.2

2.5.コメント部

該当のdraftに対する批評の表示及び批評の投稿を行う事ができる。この箇所には該当のdraftにひも付けられたディスカッションが格納される。

コメント部は普段折り畳みブロックによって隠されている。コメント部のページ送りはjavascript制御によって行われる。

本機能は以下のWikidotモジュールを中心に作られる。

[[module Comments order="@URL"]]

上記のモジュールに以下の追加機能を付与している。

ボタン文章 機能
コメント投稿フォームへ クリックすると投稿フォームでもスクロールする
批評コメントTopへ クリックするとコメント部最上端までスクロールする

上記の機能はアンカーリンクによって実装されている。下記にアンカーリンク先を示す。

ボタン文章 アンカー先 アンカーの種類
コメント投稿フォームへ #new-post-form-container コメント投稿フォームのID
批評コメントTopへ #system-Comment 追加アンカー先

3.内部処理

3.1.ページコンソールタグ操作

3.1.1.概要

draftの項目設定は対応するタグの付与及び削除という動作で実装されている。従って既述の項目設定の操作は全てタグ操作によって行われる。

本章ではページコンソールに配置するボタンによって行われるタグ操作について記述する。

なお、表の「表示」カラムに納められた番号は第2章で示したボタン、もしくはボタンのデザインを示す。各タグの意味及びタグのグループ名については下記仕様書を参照する事。

参照: SB3 仕様書 項目設定

3.1.2.ステータス

表示 付与 削除
dsp.2.4.3.1 批評中 _criticism-in _reforming
_criticism-end
dsp.2.4.3.2 改稿中 _reforming _criticism-in
_criticism-end
dsp.2.4.3.3 批評終了 _criticism-end _criticism-in
_reforming
dsp.2.4.3.4 未定義 - _criticism-end

3.1.3.カテゴリ

3.1.3.1 カテゴリ(一般)

dsp.2.4.4.2は機能を有していない為、記述を除外する。

表示 付与 削除
SCP-JP _scp-jp _scp-jp以外のカテゴリ(一般)
カテゴリ(原文言語)全て
Tale-JP _tale-jp _tale-jp以外のカテゴリ(一般)
カテゴリ(原文言語)全て
GOIフォーマットJP _goi-format-jp _goi-format-jp以外のカテゴリ(一般)
カテゴリ(原文言語)全て
翻訳 _translation
_en
_translation以外のカテゴリ(一般)
その他 _others _others以外のカテゴリ(一般)
カテゴリ(原文言語)全て

3.1.3.2 カテゴリ(原文言語)

表示 付与 削除
English _en _en以外のカテゴリ(原文言語)
Русский _ru _ru以外のカテゴリ(原文言語)
한국어 _ko _ko以外のカテゴリ(原文言語)
中文 _cn _cn以外のカテゴリ(原文言語)
Français _fr _fr以外のカテゴリ(原文言語)
Polski _pl _pl以外のカテゴリ(原文言語)
Español _es _es以外のカテゴリ(原文言語)
ภาษาไทย _th _th以外のカテゴリ(原文言語)
Deutsch _de _de以外のカテゴリ(原文言語)
Italiano _it _it以外のカテゴリ(原文言語)

3.1.4.ジャンル

表示 付与 削除
Joke _joke -
Joke - _joke
ホラー _horror -
ホラー - _horror
SF _sf -
SF - _sf
オカルト・都市伝説 _occult -
オカルト・都市伝説 - _occult
サスペンス _suspense -
サスペンス - _suspense
感動系 _excitement -
感動系 - _excitement
シュール _sur -
シュール - _sur
メタフィクション _metafiction -
メタフィクション - _metafiction
コミカル _comical -
コミカル - _comical
コンテスト _contest -
コンテスト - _contest
その他 _others-g -
その他 - _others-g

3.2.要素出現条件

3.2.1.概要

draftを構成する各要素は全て[[iftags]]によって表示の切り替えが行われる。以下より各ページ構成要素を囲むて[[iftags]]の条件式を示す。

なお、表の「表示」カラムに納められた番号は第2章で示したボタン、もしくはボタンのデザインを示す。

3.2.2.ステータス

3.2.3 ページコンソール

3.2.3.1.項目

3.2.3.2.ステータス設定

3.2.3.3.カテゴリ設定

3.2.3.4.ジャンル設定

3.3.draftシステム用CSSクラス

特に指定がない限り、このサイトのコンテンツには次のライセンスが適用されます: Creative Commons Attribution-ShareAlike 3.0 License