Алексей

Алексей

С нами с 28 ноября 2016; Место в рейтинге пользователей: #416

[СДЕЛАЙ САМ] SendIt и MiniShop2 - заказ в 1 клик - быстро, просто и бесплатно.

Приветствую, решил зафиксировать для себя и поделится с сообществом, прежде всего с новичками, актуальным способом быстро и без боли добавить в интернет-магазин на базе MiniShop2 функцию «Заказать в 1 клик.»
Артур Шевченко
09 февраля 2023, 12:03
modx.pro
11
1 531
+13

Одновременно разбивка по страницам(пагинация) и ajax подгрузка по кнопке "Загрузить еще" в PDO PAGE.

Добрый день! Подскажите пожалуйста возможно ли сделать одновременно пагинацию с разбивкой по страницам и кнопку для ajax загрузки ресурсов при помощи PDO PAGE из коробки?
Алексей
03 февраля 2023, 10:08
modx.pro
5
645
+2

AjaxForm + Register

Нигде не нашел решения как сделать регистрацию из стандартного пакета Login через AjaxForm, ниже мое решение может кому пригодиться.

1 Размещаем сниппет AjaxForm где требуется (на странице, в попап окне и т.п.)

[[!AjaxForm?
    &snippet=`custRegister`
    &form=`tpl.register.form`
    &submitVar=`signup-btn`
    &activationResourceId=`9`
    &activationEmailTpl=`lgnActivateEmailTpl`
    &activationEmailSubject=`Thanks for Registering!`
    &usergroups=`Users`
    &usernameField=`email`
    &generatePassword=`1`
    &validate=`nospam:blank,
               fullname:required:minLength=^3^,
               email:required:email`
    &placeholderPrefix=`reg.`
]]
2 Создаем чанк tpl.register.form с формой

<form id="signup-form" action="[[~[[*id]]]]" method="post">
    <input type="hidden" name="nospam">
    <input type="hidden" name="password" value="11111111">
    <input type="text" name="fullname">
    <small class="alert-fullname"></small>
    <input type="email" name="email">
    <small class="alert-email"></small>
    <input type="submit" name="signup-btn" form="signup-form" value="Signup">
</form>
3 Создаем сниппет custRegister

<?php
$result = $modx->runSnippet('Register', $scriptProperties);
foreach($modx->placeholders as $key => $ph){
    if(strpos($key, $scriptProperties[placeholderPrefix].'error.') === 0) $placeholders[$key] = $ph;
}
if($modx->getPlaceholder($scriptProperties[placeholderPrefix].'validation_error')) return $AjaxForm->error('Form has errors', array('error' => $placeholders));
else return $AjaxForm->success('Form is valid');
4 На странице с формой добавляем скрипт, который заполнит алерты или сообщит об успехе или еще все что угодно

<script>
    $(document).on('af_complete', function(event, response){
        $.each(response.data.error, function(index, value){$(response.form).find('.alert-' + index.split(".").pop()).html(value);});
        response.message='';//jGrowl - off
    });
</script>
Вот и всё!
Рейтинга для размещения в разделе Решения не хватило, поэтому публикую здесь.
Greza
14 января 2020, 17:21
modx.pro
12
2 404
+2

AjaxForm и Login

Здравствуйте, неоднократно задавался вопрос «Можно ли прикрутить AjaxFrom к сниппетам Login?»
Но ответа нигде не нашел. Есть ли решение данного вопроса?
Aleksandr
31 января 2015, 08:09
modx.pro
16
5 465
+1