Совет 6.23: Используйте добавление для включения темы
Редактирование с добавлением комментария хорошо вписывается в соглашение «Поиск темы»,
где пользователь может захотеть добавить ссылку на страницу темы только внизу страницы.
Ввод и добавление выполняются значительно быстрее и менее сложны, чем редактирование
Существует несколько вариантов реализации добавления комментария.
возможности, а некоторые варианты аспектов проиллюстрированы хаками для обоих
модульная модель вики и модель разбора запросов.
Модульная версия QuickiWiki
В QuickiWiki* функцию редактирования можно легко изменить несколькими способами.
в зависимости от вашего предпочтительного действия кнопки по умолчанию. Один пример показан в
Рисунок 6-7, где действие кнопки было изменено, чтобы добавить комментарий. Редактировать
полная страница пользователю необходимо дополнительно установить флажок под кнопкой.
Другой вариант показан на рис. 6-8, где кнопка по-прежнему вызывает
полное редактирование, но флажок предварительно установлен, чтобы сделать действие по умолчанию вместо «добавить
комментарий".
ВЗЛОМ ВАШЕГО ИСТОЧНИКА WIKI
183
Ο Редактировать страницу
РИСУНОК 6-7.
Изменить страницу, измененную для добавления
комментарий по умолчанию с
выбор флажка для редактирования
вся страница
PДобавить комментарий
РИСУНОК 6-8.
Вариант редактирования или
добавить, где чек
поле по умолчанию для добавления
Установите флажок в обратном порядке в любом случае, чтобы сделать «редактировать эту страницу»
действие по умолчанию, что, однако, делает добавление менее удобным и скорее
противоречит цели изменения.
Изменение кода в модуле просмотра (wiki .cgi) достаточно простое, здесь показано
реализация второго варианта кнопки и флажка:
<form method=post action="edit.cgi?$page">
<input type=submit value=" Редактировать эту страницу">
<input type="checkbox" name="mode"
value="append" отмечен>Добавить комментарий
</форма>
Это работает совместно с модулями редактирования и сохранения. Модификация модуля редактирования
включает в себя чтение состояния флажка и использование его для изменения того, что показано на
форма редактирования; другими словами, сделать его пустым. Вставьте эти строки сразу после той части, которая
читает $ENV{QUERY_STRING}:
читать (НС, $_,
$ENV{CONTENT_LENGTH} );
мой $mode = (/append/) ;