[ms2Gallery] Версия 2.0
С новым годом, друзья! Сегодня я хочу рассказать вам об изрядно переписанной ms2Gallery 2.0.

— Весь код заново просмотрен и отформатирован в PSR-2.
— Улучшена сортировка картинок, настройка «ms2gallery_exact_sorting» удалена.
— Улучшен вывод картинок в админке, настройка «ms2gallery_thumbnail_size» удалена. Больше вы не должны видеть логотип вместо превьюшек — они подключаются в зависимости от настроек источника файлов.
— В properties файла пишется дата съёмки EXIF, если скрипт может её получить.
Все параметры &tplRow, &tplOuter и т.д. заменены на один &tpl. Старые чанки больше не устанавливаются, вместо них один Fenom чанк как у miniShop2. Соотвественно, также подключается Fotorama.
Чтобы сохранить свой вывод на рабочих сайтах после обновления, есть 2 варианта:
— просто указать пустой &tpl и добавить все старые чанки:
Изменён формат параметра thumbnails источника файлов. Теперь можно указывать ключи массивам параметров, и именно по ним будут называться превьюшки. То есть, вместо
Соотвественно, названия превьюх и пути к ним больше никак не привязаны к размерам. Параметры w и h можно заменить на mw, mh и любые другие, какие только позволяет phpThumb.
Более того, если у вас есть несколько источников с разными размерами и вы хотите выводить файлы из них в одной выборке — теперь это возможно! Вы можете даже использовать один чанк с такими общими именами превьюшек.
Понятное дело, что текущие настройки thumbnails при обновлении не перезаписываются. Вам нужно поменять их самостоятельно и перегенерировать все превьюшки.
Новая версия ms2Gallery позволяет полностью заменить родную галерею товаров. Зачем это делать?
1. Единообразие с остальными страницами.
2. Возможность отключать файлы, без удаления.
3. Дополнительные поля файлов.
4. Теги файлов (с оговоркой).
Для правильной работы вам нужно:
1. Обновить miniShop2 до версии 2.4.8-pl.
2. Включить системную настройку ms2gallery_sync_ms2.
3. Импортировать картинки из ms2 в ms2gallery через консольный скрипт core/components/ms2gallery/cli/import_ms2.php
4. Проверить, что родная галерея спряталась, а выводится только ms2Gallery c источником файлов для товаров (по умолчанию MS2 Images). Очень важно, чтобы новая галерея подхватила старый источник, иначе будут генерироваться дубликаты.
Имейте в виду, что старая галерея просто скрыта, но записи в её БД будут синхронизироваться с новой. Это сделано для поддержки родных сниппетов ms2 и сторонних дополнений.
Есть одна особенность, о которой нужно знать: если вы будете импортировать картинки в старую галерею через её родной процессор, то они будут также обновляться в новой галерее, но c изменением id файлов. Теги файлов привязаны к этим id и при таком раскладе будут сбиваться.
То есть:
— или все действия с файлами вы делаете только через админку и процессоры ms2Gallery (и тогда синхронизация работает в одну сторону старой галереи).
— или вы импортируете файлы через сторонние дополнения в старую галерею, они синхронизируются с новой и вы просто не используете теги.
По другому, к сожалению, пока никак.
Раз уж у нас есть поддержка miniShop2, было бы странно не поддержать и Tickets, у которого вообще никаких файлов в админке не выводится.
Для исправления этого недостатка вам нужно:
1. Обновить Tickets до версии 1.8.0-pl.
2. Включить системную настройку ms2gallery_sync_tickets.
3. Импортировать файлы тикетов в ms2Gallery через консольный скрипт core/components/ms2gallery/cli/import_tickets.php
4. Проверить, чтобы галерея использовала правильный источник файлов (по умолчанию Tickets Files).
После этого вы сможете загружать файлы в тикеты с фронтенда и видеть их в админке. Удалять, редактировать и т.д.
Тут нужно только помнить, что если ссылка на файл вставлена в содержимое страницы, то при удалении через ms2Gallery она не будут убрана — так что следите за этим самостоятельно. Ну и сортировка на вывод через TicketMeta никак не влияет.
С тегами ситуация такая же, как и у ms2. А в остальном — нормальная двухсторонняя синхронизация файлов.
Помимо двух уже упомянутых скриптов, теперь есть еще и третий — core/components/ms2gallery/cli/generate.php. Это скрипт для обновления всех превью ms2Gallery.
Можете запускать его для глобального обновления всех картинок после изменений настроек источников файлов.
Как видите, разом выпущены новые версии трёх дополнений. Хоть я и старался всё отладить, где-то могут проскочить ошибки. Не забываем про резервные копии, ну и большие серьёзные проекты я бы сразу так не советовал обновлять.
— Убрана системная настройка «ms2_product_thumbnail_size», за ненадобностью.
— Всякие улучшения для поддержки ms2Gallery.
— Форма редактирования тикета теперь обновляется данными с сервера. Удалённые файлы и ссылки на них пропадают сразу после сохранения.
— Обновлён код замены ссылок на файлы в тексте тикета. Надеюсь, больше не будет битых ссылок при сохранении. Но так как у меня и раньше их повторить не удавалось, 100% гарантии нет.
— Всякие улучшения для поддержки ms2Gallery.
В связи с таким обновлением функционала, ms2Gallery теперь стоит 1490 рублей. Пока идут скидки в магазине, вы можете купить её почти по прежней цене — 1192 руб. Старые покупатели обновляются бесплатно.
Всем спасибо за внимание!

— Весь код заново просмотрен и отформатирован в PSR-2.
— Улучшена сортировка картинок, настройка «ms2gallery_exact_sorting» удалена.
— Улучшен вывод картинок в админке, настройка «ms2gallery_thumbnail_size» удалена. Больше вы не должны видеть логотип вместо превьюшек — они подключаются в зависимости от настроек источника файлов.
— В properties файла пишется дата съёмки EXIF, если скрипт может её получить.
Один единый чанк
Все параметры &tplRow, &tplOuter и т.д. заменены на один &tpl. Старые чанки больше не устанавливаются, вместо них один Fenom чанк как у miniShop2. Соотвественно, также подключается Fotorama.
Чтобы сохранить свой вывод на рабочих сайтах после обновления, есть 2 варианта:
— просто указать пустой &tpl и добавить все старые чанки:
[[!ms2Gallery?
&tpl=``
&tplRow=`tpl.ms2Gallery.row`
&tplOuter=`tpl.ms2Gallery.outer`
&tplEmpty=`tpl.ms2Gallery.empty`
&tplSingle=`tpl.ms2Gallery.single`
]] — или более правильный способ — переписать новый чанк tpl.ms2Gallery так, чтобы он содержал ваш старый код, только на Fenom. Для тех, кто это уже делал в miniShop2 — проблем не будет.Thumbnails
Изменён формат параметра thumbnails источника файлов. Теперь можно указывать ключи массивам параметров, и именно по ним будут называться превьюшки. То есть, вместо
[{"w":120,"h":90,"q":90,"zc":"1","bg":"000000"},{"w":360,"h":270,"q":90,"zc":"1","bg":"000000"}]теперь можно указать{"small":{"w":120,"h":90,"q":90,"zc":"1","bg":"000000"},"medium":{"w":360,"h":270,"q":90,"zc":"1","bg":"000000"}}и использовать {$file.small} вместо {$file['120x90']}. Соотвественно, названия превьюх и пути к ним больше никак не привязаны к размерам. Параметры w и h можно заменить на mw, mh и любые другие, какие только позволяет phpThumb.
Более того, если у вас есть несколько источников с разными размерами и вы хотите выводить файлы из них в одной выборке — теперь это возможно! Вы можете даже использовать один чанк с такими общими именами превьюшек.
Понятное дело, что текущие настройки thumbnails при обновлении не перезаписываются. Вам нужно поменять их самостоятельно и перегенерировать все превьюшки.
Поддержка miniShop2
Новая версия ms2Gallery позволяет полностью заменить родную галерею товаров. Зачем это делать?
1. Единообразие с остальными страницами.
2. Возможность отключать файлы, без удаления.
3. Дополнительные поля файлов.
4. Теги файлов (с оговоркой).
Для правильной работы вам нужно:
1. Обновить miniShop2 до версии 2.4.8-pl.
2. Включить системную настройку ms2gallery_sync_ms2.
3. Импортировать картинки из ms2 в ms2gallery через консольный скрипт core/components/ms2gallery/cli/import_ms2.php
4. Проверить, что родная галерея спряталась, а выводится только ms2Gallery c источником файлов для товаров (по умолчанию MS2 Images). Очень важно, чтобы новая галерея подхватила старый источник, иначе будут генерироваться дубликаты.
Имейте в виду, что старая галерея просто скрыта, но записи в её БД будут синхронизироваться с новой. Это сделано для поддержки родных сниппетов ms2 и сторонних дополнений.
Есть одна особенность, о которой нужно знать: если вы будете импортировать картинки в старую галерею через её родной процессор, то они будут также обновляться в новой галерее, но c изменением id файлов. Теги файлов привязаны к этим id и при таком раскладе будут сбиваться.
То есть:
— или все действия с файлами вы делаете только через админку и процессоры ms2Gallery (и тогда синхронизация работает в одну сторону старой галереи).
— или вы импортируете файлы через сторонние дополнения в старую галерею, они синхронизируются с новой и вы просто не используете теги.
По другому, к сожалению, пока никак.
Поддержка Tickets
Раз уж у нас есть поддержка miniShop2, было бы странно не поддержать и Tickets, у которого вообще никаких файлов в админке не выводится.
Для исправления этого недостатка вам нужно:
1. Обновить Tickets до версии 1.8.0-pl.
2. Включить системную настройку ms2gallery_sync_tickets.
3. Импортировать файлы тикетов в ms2Gallery через консольный скрипт core/components/ms2gallery/cli/import_tickets.php
4. Проверить, чтобы галерея использовала правильный источник файлов (по умолчанию Tickets Files).
После этого вы сможете загружать файлы в тикеты с фронтенда и видеть их в админке. Удалять, редактировать и т.д.
Тут нужно только помнить, что если ссылка на файл вставлена в содержимое страницы, то при удалении через ms2Gallery она не будут убрана — так что следите за этим самостоятельно. Ну и сортировка на вывод через TicketMeta никак не влияет.
С тегами ситуация такая же, как и у ms2. А в остальном — нормальная двухсторонняя синхронизация файлов.
Консольные скрипты
Помимо двух уже упомянутых скриптов, теперь есть еще и третий — core/components/ms2gallery/cli/generate.php. Это скрипт для обновления всех превью ms2Gallery.
Можете запускать его для глобального обновления всех картинок после изменений настроек источников файлов.
Заключение
Как видите, разом выпущены новые версии трёх дополнений. Хоть я и старался всё отладить, где-то могут проскочить ошибки. Не забываем про резервные копии, ну и большие серьёзные проекты я бы сразу так не советовал обновлять.
Обновление miniShop2
— Такой же формат thumbnails как и у ms2Gallery.— Убрана системная настройка «ms2_product_thumbnail_size», за ненадобностью.
— Всякие улучшения для поддержки ms2Gallery.
Обновление Tickets
— Такой же формат thumbnails как и у ms2Gallery. Соответственно, для новых файлов превьюшки будут храниться в отдельной директории thumb.— Форма редактирования тикета теперь обновляется данными с сервера. Удалённые файлы и ссылки на них пропадают сразу после сохранения.
— Обновлён код замены ссылок на файлы в тексте тикета. Надеюсь, больше не будет битых ссылок при сохранении. Но так как у меня и раньше их повторить не удавалось, 100% гарантии нет.
— Всякие улучшения для поддержки ms2Gallery.
Цена
В общем и целом, все три дополнения теперь более-менее унифицированы по работе с файлами. Даже загрузчик у всех одинаковой версии, чтобы при пережатии на фронтенде совпадал хэш файлов и дубликаты не грузились.В связи с таким обновлением функционала, ms2Gallery теперь стоит 1490 рублей. Пока идут скидки в магазине, вы можете купить её почти по прежней цене — 1192 руб. Старые покупатели обновляются бесплатно.
Всем спасибо за внимание!
Комментарии: 78
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.


С предыдущей версией таких проблем не было.
Без pdoPage выводится без проблем.
Может ещё что-то нужно переделать?
Это для photoswipe использую
Нет, друг, мой скрипт нужно запускать из настоящей консоли сервера
Осталось окончательно их объединить.
А вообще, обновись — вернул возможность использовать плейсхолдеры с одним плюсом, типа [[+core_path]].
Ну, и обновился тоже
Мой ms2gUploader из-за новых обновлений ms2g поломался, а обновлять его не вижу смысла т.к. теперь в тикетс это дело реализовано. Только ради этого и писал его. Все равно компонент только в связке с тикетс используют.
Реализована только синхронизация файлов тикетс и ms2Gallery, но это в 2 раза больше записей в таблицах (возможно и файлов в источниках файлов). Зачем лишние сотни мегабайтов дублирующихся записей, если можно напрямую в ms2Gallery грузить?
ms2gUploader — очень классная штука! Вот если она научится ещё понимать и выводить разные типы файлов (не только изображения) + получит поддержку тегов ms2Gallery, то будет очень достойное дополнение к ms2Gallery.
В логе вот что:
Все дальнейшие вопросы — в поддержку платных дополнений магазина. Этот флуд удаляю.
При использовании TicketForm:
Фронтенд. Перетаскиваем фотографию на поле загрузки — Файл по пути записывается правильно, а вывод пути формируется посредством другого источника а именно Tickets Files. В админке по ms2Gallery все нормально.
В общем-то проблема только в выводе на фронтенд.
Замечено: Если я оставляю настройку: tickets.source_default равную пути Тикетов а не галереи, то фоки загружаются именно в тикетный раздел файлов (tikets/-id-/) ну и соответственно в админке фотки не видем тк там Источник галереи (при переключении на Тикетный — фотки видим). А на фронт-енде мы видем фотки и все красиво.
Менял настройки source в самом снипете TicketForm (2 — Тикет, 4 — галерея):
ничего не помогает на фронт-енде сменить пути. Может Кто подскажет что не так? Может, права мешают какие-то?
При включении интеграции с ms2 или Tickets — всегда должен быть один источник файлов у них, и у ms2Gallery.
В общем сам себе придумал работу на вечер :))) поправил на тикеты. Спасибо!
Да я делаю все так:
ms2Gallery: joxi.ru/l2ZRaP0uwljVM2
Тикетсы: joxi.ru/vAWK6PgU135R6A
Ставлю один источник источник msGallery (4 — id). Чищу кеш.
Открываю страницу где TicketForm редактирование-добавление (стандартные шаблон его)
joxi.ru/ZrJY8P3T9QxkBA
перетаскиваю файл. И не вижу его. joxi.ru/bmozZ3asxOGl6r
чанк joxi.ru/Vm6xq8puD3N09A
Даже если я с админки добавляю фотку — такой же эффект. ссылка на картинку есть, а миниатюры нет. Те. в снипете TicketForm не прикрепляется миниатюра фотки плейсхолдеры [[+small]] [[+medium]] так же пусты.
Вопрос — как добавить в выборку данные миниатюры для TicketForm.
Пока у меня вызов стандартный:
В источник файлов я добавил генерацию приевьюшки с названием tbumb и все заработало, но все же на будущее — возможно ли подключить другие вариации сгенерированных вариантов? Может быть это делается через where?
Антонmspre
Ато есть, и не мало, индивидуумов которые которые не понимаю как прописать плейсхолдер [[+image.0.url]].
Дак еще они не понимают как это будет выглядеть и хотят в живую видеть т.е. щас так:
joxi.ru/n2YR1NbuodZM9A
А хотят вместо иконки отсутствующего изображения видеть само изображение из галереи ms2Gallary ну и соответственно ресайзить как им надо и т.п.
Это упростило бы жизнь разработчику, а точнее облегчило объяснение этим индивидуумам.
Если списком предложения:
1. Drag&Drop в редакторы или в поле content c возможностью выбора small,medium(т.е. из настройки медиа thumbnails)
2. Live просмотр
3. Сделать галочку Hidden(Скрыть в галереи) в свойствах картинки joxi.ru/J2bNGpbFXLVxN2. Т.е. по аналогии как у modResource «Не показывать в меню» для изображений, и при выводе сниппетом ms2Gallery они не показывались бы.
Давно заметил у себя ошибку при удалении изображений ресурса.
При попытке удалить все изображения одним нажатием выскакивает ошибка:
по одному удаляются нормально
Хостинг modhost
Все последние версии
Домен временный
Как мне вывести оригинальный размер изображения?
Не удалось загрузить и создать пакет с подписью:ms2gallery-2.0.4-pl
В чем причина покупал 13 апреля 2015.
Прописываю {«w»:1600,«fltr»:«wmi|wm.png|C|100»,«fltr»:«wmt|www.aveo.property|15|BR|000000|||20»} — выводит только второй фильтр.
И вот из наболевшего. Есть отличный параметр ms2gallery_disable_for_templates (Запрет показа у определеных шаблонов). В настройках дополнения.
Но у меня 30 шаблонов, а вывести галерею нужно у максимум 2 шаблонов. Т.е. не удобно перечисляьть запрет у всех. Было бы удробно указать 2 чила и все:
Есть пожелание указывать -1 (Исключить шаблон 1), и просто 5 (Показывать только в 5 шаблоне). Своего рода механизм работы, как у &parents параметра у снипетов.
Спасибо за труды!
как?
Параметр showInactive:
https://docs.modx.pro/components/ms2gallery/snippets/ms2gallery
Только что проверил на ms2gallery 2.0.5, modx 2.6.3, pdoTools самый последний, всё работает по дефолту.
Если потенциальный вор картинок будет знаком с ms2Gallery или msGallery, он сможет получить доступ к оригиналам без вотермарки по пути /assets/images/resources/1/image.jpg
Хочу купить данный компонент, подскажите, можно подключить ms2Gallery к ресурсу не используя miniShop2?
Пример вызова: