Anton

Anton

С нами с 26 мая 2013; Место в рейтинге пользователей: #232

Верификация на заполненность поля или Моб.тел, или Email. Что лучше FormIt-хук или JS?

Всем привет.
У меня уже не раз стояла задача сделать форму обратной связи, чтобы хотя бы 1 способ связи был указан.
В форме есть поля: Моб.тел. и Email

Надо чтобы хотя бы одно поле было заполнено. Если заполнил Email, то Моб.тел. можно оставить пустым. И наоборот.

Проблема в том, что я могу сделать верификатор (FormIt hook — обязательно для заполнения) на любое поле.

Как оптимальнее решить задачу? Хотелось бы именно проверку на сервере (hook), чем js, мне кажется так надежнее.

Подскажите, пожалуйста.
Anton
18 августа 2020, 15:45
modx.pro
578
0

MIGXdb. Как распарсить вложенный json?

Всем привет.

Создал модуль с помощью MIGX.
Добавляется запись, у которой есть «Заголовок», «Функции», «Цена».
Где «Описание» это еще один TV типа MIGX. Там добавляются «Функция» по одной.



Вызываю так:
{$_modx->runSnippet('!migxLoopCollection', [
                'packageName' => 'modules',
                'classname' => 'modulesGroup',
                'tpl' => '@CODE: <h1>[[+title]]</h1><p>[[+description]]
[[+price]]</p>'
                ])}
Выводит так:
<h1>Урок 1</h1><p>[{"MIGX_id":"1","title":"Вступление"},{"MIGX_id":"2","title":"Тестирование"}]
50.00</p>
Как распарсить [[+description]] в нужный вид? Например, с переносом
< br >
Желательно на Fenom.
Но можно и сниппетом.

Спасибо.
Anton
14 июля 2020, 15:53
modx.pro
679
0

Как сделать 1 чеклист для всех пользователей?

Всем привет.

Есть чеклист — список шагов, которые надо выполнить каждому пользователю на сайте.
Этот чеклист релизован в виде MIGX и выводится на каждой странице.

Реализовано следующим образом:
  • Создан ресурс «Этап 1»
  • Создан MIGX-tv, где есть Название задания, Описание, Выполнено (чекбокс), Дата завершения (дата, когда выставлен чекбокс)
Anton
15 июня 2020, 14:54
modx.pro
592
0

Как вызвать сниппет из файла не кэшированным на Fenom?

Всем привет!
Как можно его вызвать?
{$_modx->runSnippet('@FILE snippets/getFiltersFields.php')}
Вставлял знаки восклицания куда только мог — ничего не работает.

Спасибо.
Anton
10 июня 2020, 19:04
modx.pro
1 344
0

Как вывести список файлов из папки с разбивкой на подпапки?

Всем привет.

У меня такая ситуация: есть очень большая папка с документами (шаблоны в Word и Excel, презентации, pdf), которая имеет множество подпапок с документами (максимум 2-3 уровня вложенности).

Примерно так выглядит 1 папка DOCUMENTS 1:
DOCUMENTS 1
|---file_doc1.5.docx
|---file_doc1.docx
|---file_filetree.htm
|---file_report.xlsx
|---CATEGORY 1.1
|      |---file_presentation template.pptx
|      `---file_presentation.pptx
`---CATEGORY 1.2
       `---file_custom.txt
Папок с документами штук 30.

Как сделать так, чтобы все эти папки с файлами вывести на одну страницу (можно на отдельные страницы) с разбивкой над подпапки как это делает, например, pdoMenu?

Можно, конечно, сделать по ресурсу на каждую папку и делать список файлов со ссылками на скачивание в content. Но это долго.

Посоветуйте, пожалуйста, как лучше решить такую задачу?
В идеале средствами Fenom и/или pdoTools.

Спасибо.
Anton
20 мая 2020, 12:54
modx.pro
982
0

MODX Revo + PhpStorm. Есть рекомендации по использованию?

Всем привет.
Может кто поделиться рекомендациями по разработке сайта на MODX Revo в студии PhpStorm?

Примеры, видео, куски кода, паттерны, шаблоны и т.д.
Anton
11 апреля 2020, 13:39
modx.pro
1
1 732
0

MODX Revo + шаблонизатор Blade. Реально?

Всем привет.
Реально/возможно ли интегрировать шаблонизатор Blade в MODX Revolution?

Но у меня ситуация такая: почти вся работа у меня теперь на Laravel с Blade, и несколько средней сложности сайтов на Evo 2 на основе Blade.

Сейчас мне предстоит делать два сайта (+ доделать начатый сайт на Fenom) и для этого подойдет только Revo (по разным причинам, в том числе «я на нем сделаю лучше»).
Начал делать шаблоны, ну никак не могу переключить голову на Fenom. Как будто всё с нуля начал, привыкать к синтаксису. А также нет поддержки Fenom в PhpStorm.

Реально ли прикрутить Blade или Twig к Revo? Сколько это может стоить, начать сбор средств?
Anton
10 апреля 2020, 16:35
modx.pro
898
0

FormIt не сохраняет все выбранные значения с помощью bootstrap-select

Всем привет.
Использую для множественного выбора вот такой инструмент на фронт-энде developer.snapappointments.com/bootstrap-select/examples/

Через FormIt на фронт-энде пользователь заполняет форму и отправляет ее. После этого создается ресурс на основе заполненных полей. Всё работает (заполнение всех полей), кроме этого мульти-селекта: сохраняется только первое выбранное значение, а остальные — нет (при выбранных 3-5 категорий).

Если сделать всё чекбоксами, то сниппет обрабатывает всё правильно: все 3-5 категорий сохраняются в одном ТВ (в админке это тоже мульти-селект).

Можете помочь разобраться, пожалуйста?
Anton
20 января 2020, 13:47
modx.pro
843
0

Как реализовать вывод таблицы с лекциями? Данные хранятся в Collections.

Всем привет.
Уже второй день ломаю голову, никак не могу структурировать в мыслях как сделать вывод таблицы (расписания) на 1 день.

В левом столбце время, которое должно идти по возрастанию (можно автоматически, можно вручную — index).
Во втором и следующих столбцах типы лекция (Стоматология, Радиология, Онкология, и т.п.).
В каждой колонке кликабельные лекции с названиями и краткой информацией (+ ссылка Подробнее).

Некоторые лекции идут больше, чем 1,5 часа. То есть, надо занять в таблице несколько ячеек.

Типа такого (обычный Bootstrap Table).
Я споткнулся об структуру table с её th, td, где-то надо пустые вставлять.

То есть, у нас есть:
  1. Категория лекции — TV
  2. Время лекции — TV
  3. Название лекции — pagetitle
  4. Подробности — content
Перекопал самые разные запросы jquery timetable — все либо мудреное (для пользователя), либо не подходит.

Как сделать подобное с помощью Table или по-другому?

Спасибо за любые советы.
Anton
09 января 2019, 11:14
modx.pro
546
0

Как поставить значение по-умолчанию в where?

Всем привет.
Сделал форму для фильтрации ресурсов через GET-параметры:

[[!pdoResources:default=`Извините, к сожалению,ничего не найдено.`?
	&parents=`4`
	&depth=`0`
	&useWebLink=`1`
	&includeContent=`1`
	&processTVs=`1`
	&includeTVs=`gorod,cena,tip`
	&tpl=`adv-list`
	&where=`["TVcena.value >= [[!get_filter? &key1=`cena_min`]] AND TVcena.value <= [[!get_filter? &key1=`cena_max`]] AND TVtip.value LIKE '[[!get_filter? &key1=`tip`]]' AND TVgorod.value LIKE '[[!get_filter? &key1=`gorod`]]'"]`
	&showLog = `1`
]]
Всё работает. Но проблема в том, что при открытии страницы где должен быть вывод ресурсов по-умолчанию в параметрах GET пока пусто, и сниппет [[!get_filter]] передает сразу же пустой параметр.

И выдает вот такой sql-запрос:
0.0003209: Added where condition: 0=TVcena.value >=  AND TVcena.value <=  AND TVtip.value LIKE '' AND TVgorod.value LIKE '', modResource.parent:IN(4), modResource.published=1, modResource.deleted=0
То есть после, например, TVcena.value >= должно стоять число, а там изначально пусто.
Соответственно это сопровождается ошибкой sql внизу лога из-за пустого значения.

Догадываюсь, что надо в сниппете добавить условие при пустом параметре и под это сформировать другой запрос в where. Но я не могу понять как?
Подскажите, пожалуйста.
Anton
09 марта 2018, 12:00
modx.pro
731
0