Typo — Drupal 7 модуль для борьбы с опечатками на сайте

Главные вкладки

Аватар пользователя Ромка Ромка 16 сентября 2012 в 18:48

Разработал новый модуль для Drupal 7, который позволяет пользователю выделить мышью найденную в тексте опечатку и нажатием Ctrl + Enter отправить сообщение о ней администратору сайта. Модуль не зависит от внешних сервисов типа Орфуса и тесно интегрирован с популярными модулями Друпала такими как Rules, Token, Views и Views bulk operations.

Интеграция с модулями Rules и Token, позволяет, например, настроить отправку сообщений о найденных ошибках по е-мейлу, в системный журнал или вызвать любое другое действие, доступное в модуле Rules. С помощью токенов [typo:url], [typo:text] и [typo:comment] в текст сообщения можно включить информацию об опечатке.

Интеграция с Views позволяет сделать вывод списка ошибок на странице, в комплекте с модулем уже идет настроенное представление, а интеграция с Views bulk operations позволяет удалять из этого представления обработанные сообщения.

По умолчанию, все сообщения старше 3 дней автоматически удаляются, но это действие можно отключить в настройках модуля.

Popup-окно с формой отправки опечатки выводится модулем Ctools и его вид может быть изменён как правкой CSS-файла, так и правкой соответствующего tpl-файла. Ctools — это единственная зависимость модуля, остальные модули (Rules, Views, etc) нужны только если вы хотите использовать соответствующий функционал.

Скачать модуль можно на странице проекта: http://drupal.org/project/typo.

Испытать этот модуль вы можете на моем сайте, список отправленных отчетов об опечатках доступен всем посетителям здесь: http://romka.eu/typo-reports (на реальном сайте доступ к этому представлению анонимам лучше не давать).

Я знаю о существовании аналогичных модулей, но в приведенном примере захардкожено поведение модуля при отправке отчета об ошибке, мне же было необходимо не только отправлять отчеты по почте, но и выводить их списком, по этому пришлось написать свою версию.

P.S.

Встроенная в модуль вьюха по пока непонятной мне причине по умолчанию возвращает ошибку 404 после активации, чтобы избавиться от ошибки необходимо зайти в настройки вьюхи и пересохранить её.

Комментарии

Аватар пользователя iNFerNo iNFerNo 16 сентября 2012 в 22:39

баги есть. поюзал и отключил....

один из юагов - - закрыть нельзя.... сразу. а если закрывается... еще раз на это же странице не выделяет ничего.... квадрат белый...

Аватар пользователя Ромка Ромка 17 сентября 2012 в 17:09

iNFerNo wrote:
при удлание косяк

   #2: Суууууоff &<s trong> Thetrixx</s trong>

код стронг а не выделение текста


Это не баг моего модуля, а особенность Друпальской функции confirm_form. Не считаю такое поведение багом, так как в реальных условиях выводиться эта форма должна только модераторам/администраторам и вреда от такого отображения заголовка нет.

Аватар пользователя fr1end fr1end 18 сентября 2012 в 2:58

"iNFerNo" wrote:
Ну не красиво все равно.

Вам шашечки или ехать?)))

А так модуль не плох, надо сравнение с орфусом. По возможностям и скорости работы. А может вообще на уровне темы такие вещи интегрировать.

Аватар пользователя Ромка Ромка 18 сентября 2012 в 10:26

Fr1eNd wrote:
А может вообще на уровне темы такие вещи интегрировать.

На уровне темы? В модуле же не только всплывающее окошко сделано, но и форма, работа с базой, интеграция с вьюсами, рулсами и т.д. Нет, только на уровне темы такой функционал делать нельзя.

Аватар пользователя Chyvakoff Chyvakoff 18 сентября 2012 в 9:06

"Fr1eNd" wrote:
По возможностям и скорости работы.

Возможности, думаю, автор описал. Нет интеграции разве что с триггерами.Но от них, слышал, решили отказаться и не поддерживать в дальнейшем.
Будет возможность пользователю в своём профиле посмотреть список отправленных им багрепортов?С возможностью их удаления? Это по сути просто вьюс + VBO... А есть право на просмотр "своих" багрепортов?

Аватар пользователя iNFerNo iNFerNo 18 сентября 2012 в 9:33

Было бы хорошо что бы была опция не распространятся на страницы вьюхи, а только для нод и кастомных блоков... потому что сегодня чел отправил ошибку на тот же тизер... а завтра эта нода ушла с это вьюхи по каким либо причинам... а ссылка дается на страницу вьюхи....

было бы хорошо что бы если выделяют тизер ссылка была бы на ноду еще...

Аватар пользователя rodman1980 rodman1980 18 сентября 2012 в 10:50

Супер
Немного не красиво вызывать в шаблоне - drupal_render(drupal_get_form('typo_report_form'));
Все таки рендер правильнее добавить через template_preprocess.
В typo_views_data() для поля "created" выбраны views_handler_sort и views_handler_argument_string.
Почему не views_handler_argument_date и views_handler_sort_date.

Аватар пользователя Ромка Ромка 18 сентября 2012 в 12:35

rodman1980 wrote:
Супер
Немного не красиво вызывать в шаблоне - drupal_render(drupal_get_form('typo_report_form'));
Все таки рендер правильнее добавить через template_preprocess.
В typo_views_data() для поля "created" выбраны views_handler_sort и views_handler_argument_string.
Почему не views_handler_argument_date и views_handler_sort_date.

Спасибо за ревью Smile

Хендлер поменяю. Скорее всего просто неглядя скопипастил и забыл подправить.

Друпал_рендер тоже уберу из шаблона.

Аватар пользователя artyomalin artyomalin 20 сентября 2012 в 13:25

Спасибо за модуль! Что-то у меня в Rules не появилось правило о новой ошибке, хотя в файлах модуля typo.rules.inc есть, будем смотреть ...

Аватар пользователя Ромка Ромка 20 сентября 2012 в 13:42

artyomalin wrote:
Спасибо за модуль! Что-то у меня в Rules не появилось правило о новой ошибке, хотя в файлах модуля typo.rules.inc есть, будем смотреть ...

Правило и не должно было появиться. Его вы должны создать руками. Появиться должен был event (событие) в настройках правила.

Аватар пользователя Ромка Ромка 21 сентября 2012 в 11:51

RedRat wrote:
А для 6-ки версия планируется?

Да, планируется, но по срокам сориентировать не могу. Хочу сначал допилить эту версию до стабильного сосотяния, потом сделаю бэкпорт.

Аватар пользователя Stepanisk Stepanisk 10 февраля 2013 в 22:10

Было бы хорошо добавить в настройки ссылку по которой можно запустить форму отправки.

Это пригодилась бы для планшетов и смартфонов. Чтобы выделять текст и нажимать на ссылку

Пример: "Если вы встретили в тексте опечатку. Выделите ее мышкой и нажмите Ctrl + Enter или по этой ссылке".

Аватар пользователя sergldom sergldom 10 ноября 2015 в 11:49

Здравствуйте.
сайт http://softnastroy.com/
Работал модуль, работал, теперь обнаружился баг, при нажатии отправить вываливается ошибка: ошибка прикреплена в файле, так как не работает вставка кода.

Само письмо уходит нормально, напрягает только вываливающееся окно.

Аватар пользователя RedRat RedRat 30 апреля 2014 в 14:03

А вот реальная ошибка: если модальное окно закрыть не по ссылке "Закрыть", а нажатием Escape, то при попытке ещё раз отправить сообщение об ошибке модальное окно появляется пустым. Проверено в последнем FF, лечится перезагрузкой страницы.

Аватар пользователя SVictor SVictor 13 марта 2019 в 10:25

Привет,
Модуль работает нормально уже много лет. Но хотел задать вопрос.
Бесконечно пишутся кеши в cache_form именно формой модуля.
Понимаю, что проблема друпала в целом, но возможно есть какой-то вариант как-то от этого избавиться?