modDevTools
Компонент, который помогает разработчикам быстрее и проще работать в админке MODX Revolution.
Возможности компонента
На странице редактирования чанка добавляются вкладки, в которых можно изменять связанные объекты
- "Шаблоны" - код шаблонов, в которых выводится данный чанк. Если установлен Ace, появляется выделение чанка в коде шаблонов.
- "Чанки" - код чанков, которые вызываются в данном чанке. Параметры сниппетов, указанные при вызове и по умолчанию, и которые являются чанками, тоже выводятся здесь.
- "Сниппеты" - код сниппетов, которые вызываются в данном чанке. Под кодом сниппетов можно развернуть описание их параметров по умолчанию.
- "Ресурсы" - список ресурсов, в шаблоне или контенте которых вызывается тем или иным образом данный чанк. Можно перейти на редактирование ресурса, открыть его в браузере, быстро изменить шаблон, статус публикации или удалить в корзину.
На странице редактирования шаблона добавляются следующие вкладки
- "Чанки" - код чанков, которые вызываются в данном шаблоне.
- "Сниппеты" - код сниппетов, которые вызываются в данном шаблоне.
- "Ресурсы" - список ресурсов с данным шаблоном.
На странице редактирования сниппета добавляется вкладка с ресурсами, в шаблоне или контенте которых вызывается данный сниппет
На странице редактирования ресурса добавляются так называемые "Хлебные крошки" (BreadCrumbs)
Они сделаны на основе ExtJS-компонента хлебных крошек из установщика пакетов дополнений и вписываются в общее оформление админки независимо от версии.
Так же хлебные крошки показываются в "Обзоре ресурса" (его можно увидеть при клике правой кнопки на ресурсе в дереве, или просто не имея прав на редактирование ресурса, но имея на просмотр). В этом случае производится переход на обзор ресурса родителя, а не на его редактирование.
Поддерживаются контексты, т.е. в каком контексте ресурс, в этом контексте показываются и его родители.
Поиск и замена строк в чанках и шаблонах
Для этого появился подраздел modDevTools в меню «Приложения». Все довольно просто. Вводите строку и нажимаете кнопку «Найти». Ниже есть фильтры в контенте каких элементов осуществлять поиск.
После того, как поиск произошел, выводится код всех найденных элементов с подсветкой искомой строки. Замена производится в каждом элементе отдельно. Для этого после кода элемента идет панель с 3 кнопками: «Заменить», «Заменить все» и «Пропустить».
Кнопка «Заменить» меняет искомую строку, на которой установлен курсор (более темная подсветка), на строку замены. Кнопка «Пропустить» передвигает курсор на следующее совпадение. После первоначального поиска можно изменить строку поиска, и тогда кнопки замены оперируют уже с этой новой строкой только для конкретного элемента, после которого они расположены.
Права пользователей для доступа к функциям modDevTools
Компонент сам не добавляет, но во всю использует стандартные права пользователей.
Права | Описание |
---|---|
view_chunk И view_template | Для доступа к разделу поиска и замены строк (пункт меню modDevTools) |
save_chunk | Для замены строк в чанках в этом разделе. |
save_template | Для замены строк в шаблонах в этом разделе. |
view_chunk | Для показа вкладки "Чанки" |
view_template | Для показа вкладки "Шаблоны" |
view_snippet | Для показа вкладки "Сниппеты" |
resource_tree | Для показа вкладки "Ресурсы" |
edit_document | Для показа кнопки "Редактировать" в таблице на вкладке "Ресурсы" |
save_document | Для изменения шаблона ресурса в таблице на вкладке "Ресурсы" |
publish_document | Для изменения статуса публикации в таблице на вкладке "Ресурсы" |
delete_document | Для удаления ресурса в корзину в таблице на вкладке "Ресурсы" |
save_chunk/save_template/save_snippet | Используются стандартные процессоры MODX, поэтому для редактирования элементов нужны соответствующие права. |
Внимание
Нет поддержки групп ресурсов (пока?), т.е. если какая-то группа ресурсов скрыта от менеджера в админке, то он сможет ее увидеть в списке ресурсов элементов.
Дополнительная информация
- Если элемент, показывающийся в новых вкладках, находится в фокусе и изменен, то с помощью Ctrl+s сохраняется он, если не в фокусе - то родительский элемент (при этом изменения в дочернем потеряются).
- Кнопка "Сохранить" у родительского элемента неактивна, если дочерний элемент оказывался в фокусе для предотвращения случайного сохранения. Включается переходом на другую вкладку.
- Поддерживается AjaxManager
- Поддерживаются версии MODX Revolution 2.3.x (в первую очередь, разработка ведется на нем) и 2.2.x (минимальная поддержка, только чтобы все работало и выглядело не совсем страшно).
- Некоторые второстепенные функции поддерживаются только при наличии редактора Ace