• avatar levonty
  • 0
Ребят, минуло 6 лет и вот что-то пошло не так! Для передачи email в скрипт использовал конструкцию в событии eFormOnBeforeMailSent
global $modx;
$prm=$modx->Event->params;
$email = $prm[to];

Вроде бы ничего не менял и не трогал, но теперь $modx->Event->params дает NULL!

Попробовал в другом снипете — параметры показывает. Может кто сталкивался, где искать? Evolution 1.4.15, Eform 1.4.9
  • avatar digitz
  • 0
Отписал в личку
  • avatar marinau
  • 0
Здравствуйте! А как установить темную тему для TV параметров?
  • avatar nohc
  • 0
Нашел.
php artisan closuretable:rebuild
  • avatar tmih
  • 0
Здравствуйте!
Скажите пожалуйста — тестовый магазин есть? можно ли просить, может у кого есть сборка, чтобы можно было установить и посмотреть как внутри все устроено.
Спасибо!
  • avatar kymage
  • 0
Именно так и сделал.
  • avatar nohc
  • 0
Добавляй тогда скриптом в форму input hidden с нужным значением.
При открытии формы скриптом собирай данные из нужных дивов, и вставляй в форму скрытый инпут. Или отправляй formData аяксом. Типа такого:

let formData = new FormData(form);

const outer = document.querySelector('.customDiv')
if (outer) {
    const priceEl = outer.querySelector('.price')
    if (priceEl) {
        formData.append('price ', priceEl.innerHTML)
    }
    // и все остальные поля
}


    const formOuter = form.parent()
    axios.post(this.action, formData).then(function (response) {
        if (response.data.success) {
            formOuter.innerHTML = response.data.success 
        }
    }


FormLister не цепляет данные из элементов верстки, только из полей отправляемой формы: input, select, textarea и т.д.
  • avatar nohc
  • 0
Пока вместо SiteContent::descendantsOf($parent) использую SiteContent::where('parent', '=', $parent). Это для получения прямых потомков. А вот если нужно получить в глубину, никак. Только если делать еще один запрос?
  • avatar 1px
  • 0
Данные форм в web'е отправляются, исходя из элементов самой формы. Див — это не элемент формы.
Вопросы, пожелания?
Хочешь отправлять данные из хуйпойми откуда — сделай аякс, отправь эти данные, как key:value и прими в вызове runSnippet->('FormLister',[… параметры])
  • avatar Aharito
  • 0
Вся дока теперь на docs.evo.im, а evolution-cms.com видимо никто продлевать не хочет ))
  • avatar Aharito
  • 0
Так он называется — ФормЛистер. Он предназначен именно для работы с формами. В описании так и написано.

Если вы хотите сделать решение, чтобы оно еще и из div'ов отправляло, узнавая данные к примеру по особому классу, то допишите расширение базового контроллера.
  • avatar Aharito
  • 0
Не совсем там(
Искать, оказывается, надо файл PHPMailer.php

Ну так я вам просто путь к папке указал, а там уж чтобы дальше сами.

p.s. толку не дало, пошел ставить FormLister…

Будет легче, чем с еФормом :)
  • avatar kymage
  • 0
Ну здрасьте, на сервер нужно/можно не только формы отправлять, которые пользователь заполняет, но и другие данные. Странно, как раз, втыкать в формы то, что не требует заполнения пользователем.
Нет, странно это пытаться отправить на сервер не элемент формы. =)
  • avatar kymage
  • 0
Ну, если кошерных решений нет, то придётся делать так, хотя это странно, что такой великий и могучий FormLister не может сделать тривиальную вещь (наверняка может, уверен, но как? — известно только, видимо, автору).

Попробовал вот так:
"price":{
			"price":[+price.value+]
			}

тоже мимо(
А что мешает сделать дополнительно инпуты с тайпом хиден и передать эти значения туда?
  • avatar kymage
  • 0
Не совсем там(
Искать, оказывается, надо файл PHPMailer.php! и находится он в
/core/vendor/phpmailer/phpmailer/src/PHPMailer.php
Ну, и если что, то править надо 215 строку.

p.s. толку не дало, пошел ставить FormLister… и это из-за 2-х несчастных инпутов с именем и почтой :(
  • avatar Aharito
  • 1
/core/vendor/phpmailer/phpmailer
  • avatar Aharito
  • 0
eForm на 3.1.6… никто не гарантирует её стабильную работу.
  • avatar 3fir
  • 1
Там же вроде DocLister используется для вывода.
Поставьте display=1