Топики пользователя «Temus»

[Module] TvTagsEdit - редактирование облака тегов

Простой модуль массового редактирования или удаления тегов (меток), обычно вбиваемых в tv-поле tags через запятую с пробелом. Сделан по образцу стандартного редактирования ключевых слов. Необходимый параметр только один, ID поля с тегами.

Конфигурация: &tvId=Tags ID;integer;

UPD. 18.03.10
Исправил баг при котором вверху иногда возникало пустое поле.

файл
  • +8
  • 10 марта 2011, 19:35
  • Temus
  • 7+7

[Plugin] MultiFiles - прикрепляем к странице несколько файлов

Это почти то же самое, что MultiPhotos, но для файлов.
Поддерживается несколько подключений на странице.
Необходимые параметры: для плагина — tvIds (один или несколько id через запятую), для сниппета — tvname (имя tv).
Сниппет ещё выводит иконки.

файлы

Установка:
1. Создать новый параметр (TV) типа textarea с именем, к примеру files
2. Создать новый плагин MultiFiles, вставить код плагина, вставить конфигурацию
&tvIds=TV Ids;text;&templ=Template;text;&role=Role;text;
прописать id параметра files в появившееся поле tvIds, отметить галочкой событие OnDocFormRender.

UPD. 16.05.11
Добавил параметр id
UPD. 10.07.11
Исправил ошибку в сниппете
UPD. 03.08.11
Добавил поддержку IE9
UPD. 05.01.12
Исправил баг с несохранением данных в плагине

[Plugin] TvTable - прикрепляем к странице таблицу цен

Плагин для небольшого прайс-листа, родственник MultiPhotos. Выглядит так:



( Читать дальше )

[Plugin] MultiPhotos - прикрепляем к странице несколько фотографий

Бывает так, что нужно прикрепить некоторое неизвестное количество картинок к странице, а связываться со всякими галереями не хочется. Для этой цели я написал плагин на mootools под Evo, выглядит это так:




( Читать дальше )

[Evo] Замена mcpuk на KCFinder

Это способ без использования плагина от yama.

1. Скачиваем KCFinder. Можно ставить последнюю версию, но я ставлю 1.7 — она более шустрая и безглючная.

2. Распаковываем архив в /manager/media/browser/, папку называем kcfinder.


( Читать дальше )

Список ссылок в TinyMCE на Ajax

Когда на сайте много страниц, выпадающий список ссылок в TinyMCE становится огромным и медленно загружается. Я немного переделал его, чтобы он загружался частями на Ajax. Вначале загружаются корневой раздел, а дальше навигация осуществляется кнопочками:

Первая кнопка — переход в выбранный раздел, вторая — переход на уровень выше. Прикрепляю файлы, нужно заменить tinymce.linklist.php и link.htm в плагине advlink.
  • +2
  • 11 августа 2010, 15:38
  • Temus
  • 5+5

[Хак][Evo] Управление страницами не в дереве

Не так давно поднимался вопрос о управлении большим количеством страниц не используя дерево, где дали ссылку на решение yama (но код там не приводился) Захотелось реализовать у себя такое же управление страницами, то есть запретить раскрываться в дереве определенным папкам. Чтобы не создавать отдельное поле, использую поле donthit.


( Читать дальше )

Оптимизация Breadcrumbs

В сниппете Breadcrumbs на каждый выводимый пункт меню приходится один запрос в базу (при первом или некэшированном вызове). Можно сократить количество запросов до одного (не считая ссылки на главную), если код
while ( $parent && $loopSafety < 1000 )
{
    // Get next crumb
    $tempCrumb = $modx->getPageInfo($parent,0,"id,parent,pagetitle,longtitle,menutitle,description,published,hidemenu");
заменить на:
$parentIds = $modx->getParentIds($modx->documentObject['id']);
$tempCrumbs=array();
if (count($parentIds)) $tempCrumbs=$modx->getDocuments($parentIds, 1, 0, '*', '','published', ', FIELD (sc.id,'.implode(',',$parentIds).')');
foreach ( $tempCrumbs as $tempCrumb )
Это сэкономит 3-7 запросов в базу.
А ссылку на главную лучше прописать вручную.