Всего 123 788 комментариев

Николай Савин
27 августа 2023, 10:56
0
Боюсь ошибиться, но как будто бы да — PHP тут бессилен, он ожидает имя файла с собственно именем.
Сергей С
27 августа 2023, 10:52
0
Да. Проблема в другом оказалась. Может Вы Николай подскажете? В общем есть файлы без имени.Такого типа: /assets/images/resources/91080/.jpeg. rename() их не видит file_exists() выдает соответственно, false. как их можно переименовать? Или тут только руками?
Артур Шевченко
27 августа 2023, 10:49
1
+1
Можно, только нужно создать css класс, который будет управлять видимостью элементов, если такого класса еще нет, например «d-none», и блоку с формой и блоку с табами добавить условия. Для формы
[[!+modx.user.id:isloggedin:isnot=`1`:then=`d-none`]]
для табов
[[!+modx.user.id:isloggedin:is=`1`:then=`d-none`]]
Ну и в JS на событие «afl_complete» если response.success и ['regForm', 'authForm'].includes(form.id) переключать классы.
Николай Савин
27 августа 2023, 10:47
0
А какая разница. И в плагинах и в консоли один и тот же PHP интерпретатор
Сергей С
27 августа 2023, 10:46
0
А через Console rename() работает?
Николай Савин
27 августа 2023, 10:43
0
Ниже написано готовое решение
Сергей С
27 августа 2023, 09:49
0
Добрый день! Нашли решение?
Zulya
27 августа 2023, 00:04
1
0
Артур, подскажите пожалуйста, с помощью AjaxFormitLogin возможно ли без перезагрузки страницы после отправки формы на той же странице отобразить TicketForm?
На странице добавления вопроса в шаблоне я разместила следующий код:
[[!+modx.user.id:isloggedin:is=`1`:then=`[[$addquestion]]`:else=`[[$authregtabs]]`]]
  • [[$addquestion]] — в этом чанке у меня сниппет TicketForm
  • [[$authregtabs]] — тут блок с табами, где есть формы авторизации/регистрации/восстановление пароля (как в этом видео скриншоте skrinshoter.ru/vLVs638ZeZi?a )
Когда посетитель не авторизован на сайте, ему отображается табы. Когда посетитель авторизуется/регистрируется, то сейчас страница перезагружается и потом отображается [[$addquestion]] со сниппетом TicketForm. А без перезагрузки страницы, даже после успешной авторизации/регистрации TicketForm не появляется, а остается формы в табах.
Артур Шевченко
26 августа 2023, 23:12
+1
Кстати, если вы не знали, есть группа в Телеграмм где помощь можно получить оперативнее
Артур Шевченко
26 августа 2023, 22:57
+2
Ну и по поводу фенома, он нормально работает со стандартным парсером, главное чтобы в шаблонах и чанках не было открывающих фигурных скобок не относящихся к феном, а если есть, то после них нужно просто поставить пробел.
Артур Шевченко
26 августа 2023, 22:54
+1
НУ я же давал ссылку на документацию по AjaxFormitLogin. Пакет Login использовать не нужно, весь его функционал уже есть в моём компоненте. В документации есть примеры вызовов для всех форм: регистрации, авторизации, восстановления пароля, редактирования данных, вам нужно только свой чанк формы подставить, ну и если мы говорим про регистрацию вот эти значения надо сохранить
&activation=`0`
 &autoLogin=`1`
Zulya
26 августа 2023, 22:36
1
0
У меня на сайте очень много шаблонов. Если я правильно поняла, после включения фенома, на сайте весь код нужно будет под феном переписать. Поэтому пока не могу перейти на феном.
Вот так я вызвала AjaxFormitLogin:
[[!AjaxFormitLogin?
&snippet=`Register`
&hooks=`email`
&form=`regform`
&usergroupsField=`Member`
&submitVar=`login-register-btn`
&activation=`0`
 &autoLogin=`1`
 &usernameField=`email`
 &passwordField=`password`
 &validate=`nospam:blank,
password:required:minLength=^8^,
password_confirm:password_confirm=^password^,
 fullname:required,
email:required:email`
&placeholderPrefix=`reg.`
]]
А из кода формы убрала
action="[[~[[*id]]]]" method="post"
.
Теперь после отправки формы, страница не обновляется. Но также ничего не происходит. Поля формы остаются заполненными и не создается аккаунт.
Артур Шевченко
26 августа 2023, 21:53
0
Лучше разберитесь с феном, с ним удобнее.
Zulya
26 августа 2023, 21:49
0
Спасибо!
Пока изучу как использовать AjaxFormitLogin без fenom для регистрации/авторизации.
Первый раз его использование не решило перезагрузку страницы после отправки формы.
Артур Шевченко
26 августа 2023, 21:07
1
+2
Если хотите разобраться то вот и вот история моих изысканий на эту тему. Всё это в итоге переросло в компонент AjaxFormitLogin, поддержку которого я прекратил, потому что решил полностью переписать JS и PHP, которые достались мне по наследству от AjaxForm. Однако весь функционал из AjaxFormitLogin перекочевал в новый компонент SendIt. Он полностью готов и отлажен. Сегодня я закончил написание документации. Думаю в понедельник или во вторник он станет доступен для скачивание через менеджер пакетов в modstore.
Dan
Dan
26 августа 2023, 20:57
+3
У Артура есть компонент AjaxFormitLogin, который правда уже не поддерживается, но выполнит вашу задачу в любом случае. Не знаю по поводу SendIt, тут уже Артур сам ответит)
Zulya
26 августа 2023, 20:54
0
Будет ли работать регистрация с Login + AjaxForm?
Dan
Dan
26 августа 2023, 20:51
3
+3
В принципе можно и button использовать, но тогда нужно указать у нее атрибут value с любым значением. Ибо иначе в post-запросе передается пустой ключ и поэтому submitVar не отрабатывает.
Артур Шевченко
26 августа 2023, 20:34
+2
Не передавалось значение submitVar поэтому скрипт не отрабатывал.
Zulya
26 августа 2023, 20:25
0
Заменила button на input. С таким способом, регистрация пользователей заработала.
Получается проблема была в button и оно не давало создавать пользователей?