mvtDocs: удобное хранение документов
Бесплатный компонент для удобного хранения файлов документов (инструкций, сертификатов и т.д.), а также внешних ссылок (например на ролики youtube) для ресурсов / товаров MS2.
Описание / загрузить в modstore.pro
Описание функционала:
Для любого ресурса можно прицеплять множество файлов и ссылок на внешние файлы.
Особенностью является то, что компонент может автоматически добавлять связи приложенных документов для всех связанных товаров MS2. Например, у вас есть товар и у него 5 аналогов, связанных штатным механизмом связей MS2, уставите системную настройку «Создавать связи автоматически» = «Да» и при загрузке файла он автоматически будет связан с аналогами данного товара. Важно: во избежание путаницы, автосвязи строятся только в том случае, если данный товар является master'ом по отношению к аналогам.
Можно ограничить список доступных ресурсов каким-то каталогом.
Можно транслитерировать имена файлов в соответствии с установками дружественных урлов (translit = russian).
Работа с файлами идёт через указанный в настройках источник файлов, поэтому вы можете хранить файлы не на сервере, а в облаке (Swift нам в помощь!). Профит очевиден, т.к. документации бывает очень много…
В комплекте есть один чанк и один сниппет. И то и другое рассчитано на pdoTools + fenom. Кому не нужно — скопируйте сниппет и раскомментируйте кусочек кода отдающий чанк вместо массива.
Настройка и использование чрезвычайно просты, поэтому выложу картинками:
Настройки:
Работа:
Результат:
Обновление до версии 1.0.4-beta.
Добавлен выбор идентификаторов связи MS2 при для формировании связей файл-товары. Например, у вас есть 2 связи: 1 — аналоги, 2 — аксессуары. Поставим опцию «Использовать только указанные связи» = 1 и получим связи только для аналогов.
Описание функционала:
Для любого ресурса можно прицеплять множество файлов и ссылок на внешние файлы.
Особенностью является то, что компонент может автоматически добавлять связи приложенных документов для всех связанных товаров MS2. Например, у вас есть товар и у него 5 аналогов, связанных штатным механизмом связей MS2, уставите системную настройку «Создавать связи автоматически» = «Да» и при загрузке файла он автоматически будет связан с аналогами данного товара. Важно: во избежание путаницы, автосвязи строятся только в том случае, если данный товар является master'ом по отношению к аналогам.
Можно ограничить список доступных ресурсов каким-то каталогом.
Можно транслитерировать имена файлов в соответствии с установками дружественных урлов (translit = russian).
Работа с файлами идёт через указанный в настройках источник файлов, поэтому вы можете хранить файлы не на сервере, а в облаке (Swift нам в помощь!). Профит очевиден, т.к. документации бывает очень много…
В комплекте есть один чанк и один сниппет. И то и другое рассчитано на pdoTools + fenom. Кому не нужно — скопируйте сниппет и раскомментируйте кусочек кода отдающий чанк вместо массива.
Настройка и использование чрезвычайно просты, поэтому выложу картинками:
Настройки:
Работа:
Результат:
Обновление до версии 1.0.4-beta.
Добавлен выбор идентификаторов связи MS2 при для формировании связей файл-товары. Например, у вас есть 2 связи: 1 — аналоги, 2 — аксессуары. Поставим опцию «Использовать только указанные связи» = 1 и получим связи только для аналогов.
Поблагодарить автора
Отправить деньги
Комментарии: 45
Это сообщение было удалено
Это сообщение было удалено
А при загрузке файлов через mvtDocs на сервере будут создаваться отдельные папки для каждого ресурса? Как это делает Tickets или MsGallery
Дя, именно так.
Подскажите, пожалуйста, как через msProducts вывести только те товары, в которых загружен хоть один файл
Вот так, например:
{set $list = 'msProducts' | snippet :[
'parents' => 0,
'limit' => 1,
'loadModels' => 'mvtdocs',
'innerJoin' => '{
"ds": {
"class": "mvtDocsResources",
"on": "ds.resource_id = msProduct.id"
}
}',
'select' => '{
"msProduct": "msProduct.id",
"ds": "ds.file_id"
}',
'setTotal'=>1,
]}
{$list}
Всего с документами: {'total' | placeholder}
Хороший плагин, а есть возможность сделать вкладку в ресурсе с документами? Вот это однозначно было бы круто с настройкой для каких ресурсов эту вкладку отображать или наоборот какие исключить…
Можно. Основная идея была именно в том, чтобы не лазить по документам, а делать всё в одном месте — в форме компонента. Но как дополнительная возможность, да, не помешает.
Просьба: напишите мне в личку, попробую в течении месяца добавить, как время будет.
Просьба: напишите мне в личку, попробую в течении месяца добавить, как время будет.
Алексей, вы случаем не реализовали данную фичу? =)
Увы. Времени пока не нашлось и в обозримом будущем скорее всего не будет.
На странице компонента указан git, можно забрать и добавить нужный функционал.
На странице компонента указан git, можно забрать и добавить нужный функционал.
Как реализовать сортировку при выводе?
Можно так:
{'mvtDocs' | snippet : ['sortby' => 'Resource.type', 'sortbir' => 'DESC', 'limit' => 0]}
Посмотрите в модели какие есть поля — по ним можно сортировать.
хорошо бы, если был ранг в интерфейсе и по нему можно было сортировать…
Дмитрий, отписался на почту. Настроим на твоём кейсе и внесу правки в компонент при необходимости.
а мелкий вопрос попутно, в чанке можно отловить это файл или внешняя ссылка будет выведен?
(например для подстановки в анкор «скачать», если это файл или «перейти», если это внешняя ссылка)
_
Вопрос снят, нашел
(например для подстановки в анкор «скачать», если это файл или «перейти», если это внешняя ссылка)
_
Вопрос снят, нашел
{$file.itemtype}
Доброго дня
по Files.added не сортирует? Вновь добавленные, что бы выводились первыми
по Files.added не сортирует? Вновь добавленные, что бы выводились первыми
Доброго!
Должен сортировать по всем полям модели mvtDocsFiles.
Можно, как вариант, по и id / DESC сортировать — тот же результат с т.з. времени добавления будет.
Должен сортировать по всем полям модели mvtDocsFiles.
Можно, как вариант, по и id / DESC сортировать — тот же результат с т.з. времени добавления будет.
да, понимаю что должен, может в чем-то у меня косяк, проверю, но пока не сортирует, пусто вместо вывода если параметр отличается от Resource.type
Доброго дня
Проблема с сортировкой по added актуальна. Собственно, кроме как по name сортировка не работает. И все новые добавленные файлы в итоге в конце списка.
Проблема с сортировкой по added актуальна. Собственно, кроме как по name сортировка не работает. И все новые добавленные файлы в итоге в конце списка.
Вопрос снят.
Версия обновлена, теперь есть сортировка файлов.
Доброго дня
Очень удобное хранение документов!
Вот только если залит не тот документ, то загрузить новый файл под тем же описанием нельзя- жаль. Удаление и новая загрузка перемещают файл в конец списка. Кстати, сортировку бы тоже было бы круто иметь возможность менять.
Спасибо, закинул на кошелёк)
Очень удобное хранение документов!
Вот только если залит не тот документ, то загрузить новый файл под тем же описанием нельзя- жаль. Удаление и новая загрузка перемещают файл в конец списка. Кстати, сортировку бы тоже было бы круто иметь возможность менять.
Спасибо, закинул на кошелёк)
Доброго!
Спасибо, постараюсь добавить.
Спасибо, постараюсь добавить.
Мысль: вместо прямой ссылки на хранящийся файл иногда хорошо бы иметь возможность заменить псевдонимом, который бы не менялся в случае замены файла (сейчас замена файла так же не предусмотрена, редактируется только описание)
Принято. Не знаю, только когда руки дойдут (
Возможно на майские, если погода совсем плохая будет.
Возможно на майские, если погода совсем плохая будет.
добрый день,
можно ли как-то совместить с simpleSearch?
Благодарю
можно ли как-то совместить с simpleSearch?
Благодарю
В плане поиска поиска по названию файлов?
simpleSearch практически не пользовался — сразу не скажу.
Посмотрите, как устроен его алгоритм, возможно можно расширить классы и добавить индексацию/поиск с и по модели mvtDocsFiles.
simpleSearch практически не пользовался — сразу не скажу.
Посмотрите, как устроен его алгоритм, возможно можно расширить классы и добавить индексацию/поиск с и по модели mvtDocsFiles.
Дело в то, что не совсем еще разбираюсь. А поиск очень нужен((
Напишите в личку доступ к сайту с simpleSearch и mvtDocs, попробую на выходных посмотреть.
Всем привет, хочу в ресурсе вывести список прикрепленных файлов.
вставляю в шаблон код:
С пустым tpl тоже ничего не выводит
Подскажите куда копать?
вставляю в шаблон код:
[[!pdoResources? &resources=`[[*id]]` &tpl=`tpl.mvtDocsList` ]]
А в результате ничего не выводит. Файлы добавлены.С пустым tpl тоже ничего не выводит
Подскажите куда копать?
использовать loadModels
[[!pdoResources? &loadModels=`mvtdocs` &resources=`[[*id]]` &tpl=`tpl.mvtDocsList` ]]
Тоже ничего не выводит. Какая то проблема есть…
Тоже ничего не выводит. Какая то проблема есть…
innerJoin?
Вообще вроде же сниппет в комплекте готовый есть…
Ага, стандартный снипет выводит, спасибо
Подскажите, как ограничить вывод по определенному типу или виду и как ограничить количество выводимых документов?
Используйте параметры where и limit сниппета mvtDocs.
Либо, если выводите через pdoResources — есть пример выше.
Либо, если выводите через pdoResources — есть пример выше.
Подскажи, а как называется этот параметр «вид файла».
Вывожу через mvtDocs
Вывожу через mvtDocs
type или kind
Посмотрите в модели или просто в phpMyAdmin
Посмотрите в модели или просто в phpMyAdmin
Не поддается:
{$_modx->runSnippet('mvtDocs', [выводит пустоту
'tpl' => 'tpl-mvtDocsList'
'limit' => '1'
'where' => '{«kind»:«Спецификация»}'
])}
Как минимум исправьте «». Настройка where стандартно.
Подробнее не подскажу сейчас нет возможности.
Подробнее не подскажу сейчас нет возможности.
кавычки — это тут автозаменились.
такое ощущение чтьо сниппет сам не понимает kind
Если в чанке вывести {$kind} — то он ничего не выводит, хотя в модели он есть
такое ощущение чтьо сниппет сам не понимает kind
Если в чанке вывести {$kind} — то он ничего не выводит, хотя в модели он есть
Реально нет сейчас возможности помочь :-(
Посмотрите сам сниппет, там всё очень просто.
Посмотрите сам сниппет, там всё очень просто.
Пробую посмотреть =)
обманул чуть, если в чанке вывести {$kind} — то он выводит значение типа файла
обманул чуть, если в чанке вывести {$kind} — то он выводит значение типа файла
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.