DokuWiki

It's better when it's simple

ユーザ用ツール

サイト用ツール


ja:tips:summary_enforcement

文書の過去の版を表示しています。


“編集の概要”の記述を必須化する

Summary Enforcement

ページの保存時に、ユーザーに編集の概要の入力 (もしくは小変更へのチェック) を強制するように機能を拡張します。そうすることで、メジャーな変更(≒小変更)であるリビジョンに「編集の概要」を残せるようになります。もちろん、小変更へのチェックによらず、編集の概要の入力を強制するようにカスタマイズすることもできます。

機能拡張の詳細

この機能拡張は非常に単純です。ユーザーがページまたはセクションを編集を始めるとき、最初は保存ボタンは無効化されています(クリックできません)。ユーザーはプレビューボタンをクリックできますが、保存するには次のいずれかの操作を行う必要があります。

  • 編集の概要 欄に規定数以上の文字を入力する。または
  • 小変更をチェックする。

保存ボタンは、上記のいずれかの条件が満たされた場合にクリックできるようになります。もちろんですが、編集の概要を記述し、かつ小変更をチェックして保存することもできます。

コードを修正すれば、編集の概要を記述しないと保存できないようにすることもできます。

Dokuwiki 2011-11-10 “Angua”以降のバージョンの場合

この拡張機能を導入するには、以下の Javascript コードを conf/userscript.js に追加して下さい。このファイルが存在しない場合には作成してください。

このコードは jQuery を利用しています。 このコードを動作させるためには、DokuWiki 2011-11-10 “Angua”以降のバージョンにアップグレードする必要があります。

script.js
jQuery(document).ready(function() {
	minSummaryLength = 15;
	$editButton = jQuery("#edbtn__save");
	$minorEdit = jQuery("#minoredit");
	// if you prefer "Miner Changes" by default, uncomment following four lines.
	//var prv = jQuery('div.preview');
	//if (!prv[0]) { // not preview action
	//	$minorEdit.prop('checked', true);
	//}
	$summary = jQuery("#edit__summary");
	$summary.keyup(enforceSummary).focus(enforceSummary);
	$minorEdit.change(enforceSummary);
	enforceSummary(); // To disable form submission on page load.
});
function enforceSummary() {
	if ( $summary.val().length < minSummaryLength && !$minorEdit.is(':checked')) {
		$summary.addClass("missing");
		$editButton.attr("disabled", true).css("color", "#999");
	} else {
		$summary.removeClass("missing");
		$editButton.removeAttr("disabled").css("color", "black");
	}
}

保存の際に(小変更のチェック有無によらず)常に編集の概要を記述するようにしたい場合には、コードを次のように書き換えます。

  • 修正前の部分
    	if ($summary.val().length < minSummaryLength && !$minorEdit.is(':checked')) {
  • 上記を次のように書き換えます。
    	if ($summary.val().length < minSummaryLength) {

また、編集開始時に デフォルトで小変更をチェックしておきたい―編集の概要を省略する―場合には、コードのコメント(4行)を外して下さい。

Older Dokuwiki versions

〔日本語版では割愛〕


ja/tips/summary_enforcement.1345560932.txt.gz · 最終更新: 2012-08-21 16:55 by 125.30.53.159

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki