adminixi

adminixi

С нами с 25 марта 2016; Место в рейтинге пользователей: #137
g0dzilla
06 марта 2018, 09:47
2
0
по поводу VK, откройте файл /core/components/hybridauth/vendor/hybridauth/hybridauth/hybridauth/Hybrid/Providers/Vkontakte.php
В функцию getUserProfile допишите:
(после 104 строки, "$params['fields'] = implode(',', $this->fields);")
$params['v'] = '3.0';
Nikita
26 июля 2016, 00:02
1
+1
Собственно, номер заказа выводится так — {$order.num}
adminixi
18 июля 2016, 08:27
1
+1
Подскажите, как теперь выводить TV поля в чанке tpl.msProducts.row?
ck
ck
29 июня 2016, 22:56
1
0
В minishop2 код msProductOptions уже переписан.
Как в новой версии вывести конкретную опцию, без использования ignoreOptions?
Сергей Шлоков
28 апреля 2016, 20:28
1
+1
Создаете плагин с указанным кодом и отмечаете событие «OnBeforeDocFormSave» на вкладке «Системные события». Сохраняете и вуаля.
Роман Садоян
07 апреля 2016, 23:30
1
+2
Если всё так сложно, то можно использовать clientconfig — это лучше, чем лазить по чанкам.
Константин
04 марта 2016, 15:30
7
+1
Недавно делал на сайте вот так:

Вызов сниппета через AjaxForm
[[!AjaxForm?
	&snippet=`QuickOrder`
	&form=`order.form`
]]

И вот сам сниппет QuickOrder
<?php
$errors = array();

if ( empty( trim( $_POST['total'] ) ) OR !is_numeric( trim( $_POST['total'] ) ) ) {
    $errors['total'] = 'Вы не заполнили кол-во человек';
}

if ( empty( trim( $_POST['phone'] ) ) ) {
    $errors['phone'] = 'Вы не заполнили телефон';
}

if ( !empty( $errors ) ) {
    return $AjaxForm->error( 'В форме содержатся ошибки!', $errors );
} else {
    $miniShop2 = $modx->getService( 'minishop2','miniShop2', MODX_CORE_PATH . 'components/minishop2/model/minishop2/', $scriptProperties );

    if ( !( $miniShop2 instanceof miniShop2 ) ) {
        return $AjaxForm->error( 'Ошибка скрипта!' );
    }
    
    $miniShop2->initialize($modx->context->key, $scriptProperties);
    
    $miniShop2->order->add( 'receiver', trim( $_POST['receiver'] )  );
    $miniShop2->order->add( 'email', trim( $_POST['email'] ) );
    $miniShop2->order->add( 'delivery', 1 ); // id метода доставки
    $miniShop2->order->add( 'payment', 1 ); // id метода оплаты
    
    $miniShop2->cart->add($_POST['id'], $modx->getOption('count', $_POST, 1), $modx->getOption('options', $_POST, array()));
    
    return $AjaxForm->success( 'Форма успешно отправлена. Сейчас вы перейдете на страницу оплаты.' );
}

JS Callback для отправки формы:
$( document ).on('af_complete', function( event, response ) {
    if( response.success ) {
        response.form[0].submit();
    }
})