[FetchIt] - Поддержка MODX 3

Нашёл я все-таки время для FetchIt и выпустил версию 3.0.0-pl, которая совместима с MODX 3. Для MODX 2 все также будут версии 1.*.*.



Установить компонент вы уже сможете из маркетплейса modstore.pro.

В официальный modx.com/extras я уже отправил запрос (в последнее время он болел/болеет, не знаю когда выпустят).

Всё, больше новостей на данный момент нет… но, я уже пару месяцев как занимаюсь кое-каким проектом для сообщества и будьте уверены, он вам понравится.

UPD
Компонент также доступен для скачивания из официального репозитория.

Документация
Репозиторий на GitHub
☕ Угостить чашкой кофе
Баха Волков
06 июня 2023, 11:52
modx.pro
1 327
+13

Комментарии: 20

Константин Ильин
06 июня 2023, 16:06
+4
я уже пару месяцев как занимаюсь кое-каким проектом для сообщества
интриганы))) сколько уже видел подобных комментариев в последнее время) очень интересно)
Константин Ильин
09 июня 2023, 17:47
0
@Баха Волков Подскажи пожалуйста, как отменить reset формы после отправки? чтоб поля не сбрасывались.
    Баха Волков
    09 июня 2023, 19:12
    +1
    При вызове сниппета тебе достаточно указать значение 0 параметру clearFieldsOnSuccess.

    [[!FetchIt?
      ...
      &clearFieldsOnSuccess=`0`
    ]]

    Подробнее о работе компонента можно узнать на сайте документации. А конкретнее на странице сниппета FetchIt, где и перечислены параметры с их описанием.
      Константин Ильин
      09 июня 2023, 22:34
      +1
      Спасибо! Я в событиях js смотрел думал там, как же упрощает жизнь FetchIt, спасибо за шикарный компонент!
      Александр Мельник
      10 июня 2023, 18:32
      +1
      Прямо и восхищение и удивление у меня возникло.
      Удивление вызвал Константин, вот прям интересно стало, зачем может понадобиться не очищать форму, после того как она отправлена? Это вроде бы такое странное поведение, все равно что пригнать машину на мойку, но попросить оставить грязным две двери) Ну тоесть теоретически там может быть, но зачем.
      Расскажите пожалуйста, Константин, побалуйте пожалуйста мое любопытство, для каких целей форма должна оставаться с отправленными данными…
      Ну а восхищение вызвал Баха, которые несмотря на нелогичность этого действия, даже добавил в сниппет параметр, за это отвечающий.
        Артур Шевченко
        10 июня 2023, 20:23
        +2
        Параметр этот был и в AjaxForm, только там он не работал. А действие вполне логичное в тех случаях, когда форма, которую нужно отправить, это форма с данными пользователя в его ЛК, согласись если ты, как пользователь, зайдёшь в ЛК, изменишь свой email, сохранишь и форма очиститься, ты сильно удивишься)))
          Константин Ильин
          11 июня 2023, 01:23
          +1
          Интересный Вы Александр. Отвечу кратко:
          Редактирование профиля пользователя, например поле fullname, пишешь «Александр Мельник 666», а после нажатия кнопки сохранить отобразится «Александр Мельник», defaul value.
          ну и Артур про это же написал.
            Александр Мельник
            11 июня 2023, 06:52
            +1
            Вот видите как иногда полезно узнать чужое мнение. А то каждый «в своем мирке» и привыкает использовать инструменты только для каких то строго определенных целей. Я вот например использую ajaxForm (да я понимаю что речь идет о fetchIt, но задачи у них общие) только для примитивных форм в модалках, типа — заказать обратный звонок и так далее. И там необходимо, чтобы данные очищались. Если уже делать что то более серьезное, например личный кабинет о котором говорил Артур, то я предпочту писать все сам, благо сейчас на чистом js очень просто и подписаться на событие submit формы, и собрать данные через formData и отправить их на сервер через fetch и дождаться ответ через promise. Это приносит огромное ощущение удовлетворенности, что каждая строчка кода в личном кабинете написана тобой, что ты именно Разработчик, а не собиратель конструктора из чужих пакетов. Спасибо за ответы, я правда не мог подумать о таких способах применения этого пакета.
              Александр Мельник
              11 июня 2023, 07:03
              +1
              плюс лично мне очень не нравится сама идея, когда ajaxForm (и fetchIt я думаю делает так же), хранит данные для форм в сессии.
              Вся эта идея с генерацией уникального ключа для каждой формы, помещения по этому ключу данных в сессию, при отправке формы считываная этого с сессии… вызывает ощущение дикого костыля. Да, я вынуждем признать, что когда я писал свой аналог ajaxForm я тоже не придумал ничего лучшего и использовал этот же костыль.
              Может быть, отчасти, именно поэтому я все реже и реже использую ajaxForm и его аналоги на сайтах и предпочитаю оставить форму в верстке, написаь свой js обработчик и свой php контроллер для отправки.
                Артур Шевченко
                11 июня 2023, 21:17
                0
                А почему хранить данные форм в сессии это костыль?
                  Баха Волков
                  11 июня 2023, 22:57
                  +1
                  Как почему? Потому что...: «вызывает ощущение дикого костыля», но «вынуждем признать, что когда я писал свой аналог ajaxForm я тоже не придумал ничего лучшего и использовал этот же костыль».

                  Любому кто придумает не «костыльное» решение пожму руку и поблагодарю. Мне даже PR не нужен, просто напишите на словах решение лучше. Варианты: хранить в бд (сами сессии зачастую хранятся там), в файлах (зачем?) или гонять данные на фронт (небезопасно, в параметрах сниппета могут быть чувствительные данные) не предлагать.
                  Александр Мельник
                  12 июня 2023, 06:36
                  0
                  сложно четко разграничить на «черное и белое», мол вот это костыль, а это нет, поэтому я так и написал — ощущение костыля. Но я не могу пока предложить решения лучше.
                  Максим
                  16 июня 2023, 09:30
                  +1
                  Вся эта идея с генерацией уникального ключа для каждой формы, помещения по этому ключу данных в сессию, при отправке формы считываная этого с сессии… вызывает ощущение дикого костыля.
                  А для чего тогда нужно использовать сессии в PHP, если не для этого в том числе? Когда лет 10 назад (а то и больше) изучал PHP, препод как раз так и предлагал делать: хранить данные формы в сессии! Думаю, ничего принципиально нового в подходе не поменялось за это время… если мы говорим именно про PHP.
            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
            20