des1gner

des1gner

С нами с 09 февраля 2019; Место в рейтинге пользователей: #1062

Office - авторизация и регистрация через sms c одной формы

Кейс:

Клиент очень хотел, чтобы у него на странице входа, как у служб доставки, было одно поле — номер телефона. И всё. То есть, если ты новый — ты регистрируешься, если уже юзер — входишь.

Если с авторизацией через email такое можно заставить работать из коробки, то с телефоном пришлось помудрить. Далее — пошаговое описание решения.
mngatoff
26 июля 2018, 16:18
modx.pro
35
4 748
+18

[ogImage] — генерация превью с текстом


Нужно красивое превью страницы в соцсетях?
DocentBF
19 июня 2018, 17:53
modx.pro
11
4 649
+10

Динамическое изменение цены в корзине от условий доставки

Всем добрый день. Помогите разобраться, 2 дня чтения интернета не дают результата :(

Пишу свой модуль доставки СДЭК. Не могу понять как динамически поменять стоимость доставки и общую цену в корзине при расчете сдэка.

написал свой класс стоимости доставки
<?php
//проверяем на отсутствие классов и инициализируем классы msdeliveryhandler, CalculatePriceDeliveryCdek
if(!class_exists('msDeliveryInterface')) {
    require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/minishop2/model/minishop2/msdeliveryhandler.class.php';
}
class msDeliveryHandlerCDEK extends msDeliveryHandler implements msDeliveryInterface {
    
    public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0) {
        $cdekPrice = $_POST['cdekPrice'];
        $fullcost = intval($cost)  + intval($cdekPrice);
        return $fullcost;      
    }
} 
?>
весь сдэк считает в js и там же я вызываю ajax с пересчетом цены
$.ajax({
	type: "POST",
	url: "/assets/components/minishop2/action.php",
	data: "ms2_action=order/getcost&ctx=web&cdekPrice="+data.result.price,
	success: function(msg){
		$.jGrowl('Обновление цены' , { theme: 'message-system', life: 2500 });
		console.log(msg);
	}
});
ответ верный, получает стоимость из скрипта и прибавляет стоимость
{«success»:true,«message»:"",«data»:{«cost»:2430}}

но при этом в самой корзине или в оформленном заказе цена остается старой. Подскажите пожалуйста как правильно обновить стоимость доставки? Перепробовал уже все что можно. Видел подобные компоненты, цену обновляют…
сайт на котором тестирую mod.2f-vsk.ru
Спасибо.
Алексей
24 мая 2018, 07:38
modx.pro
1
2 129
0

Корзина: обновить span с ценой

Привет!

Сломал голову, как перезагрузить только span с ценой у товара.
Stan Ezersky
24 апреля 2018, 16:48
modx.pro
1
1 168
0

Разная почта менеджера в зависимости от варианта доставки

Доброго времени суток, уважаемое сообщество!
Возникла необходимость отправлять письмо о новом заказе на разных менеджеров — разные email-адреса (в зависимости от выбранного клиентом варианта доставки). Облазил казалось бы все, но как внедрить такой функционал так и не понял :(
Михаил
15 марта 2018, 17:59
modx.pro
5
3 356
0

Amp для modx

Наткнулся на плагин для revo AMP модх.
ссылка на github репозиторий

Кто реализовывал AMP на modx? Поделитесь любой информацией.
Oleh
23 июля 2017, 16:22
modx.pro
11
7 623
0

Обновление корзины или рефреш страницы

Добрый день!

Сделал плагин для добавления подарка при достижении определенной суммы. Код стандартен

switch ($modx->event->name) {
	case 'msOnAddToCart': case 'msOnChangeInCart': case 'msOnRemoveFromCart':
		$cartArray = $cart->get();
		$cartStatus = $cart->status();
		
		if ($cartStatus['total_cost'] >= 100){
			$cart->add(666);
			$cartArray = $cart->get();
			foreach ($cartArray as &$cartProduct) {
				if ($cartProduct['id'] == 666) {
					$cartProduct['count'] = 1;
				}
			}
		}
		else{
			foreach ($cartArray as $key => $cartProduct) {
				if ($cartProduct['id'] == 666) {
					unset($cartArray[$key]);
				}
			}
		}
		$cart->set($cartArray);
		break;
}
подарок добавляется в корзину ($cart) все хорошо, но не знаю как обновить страницу с корзиной чтобы показать добавленный подарок в корзине. Тоже самое при удалении части заказа из корзины, если сумма заказа уменьшилась, я из $cart удаляю подарок, но страницу с корзиной не могу обновить.
Как обновить страницу с корзиной?
Алексей Хребтов
28 марта 2017, 15:24
modx.pro
5
2 700
+1

Скрыть блок адрес доставки при самовывозе

Добрый день всем.

Возникла проблема, никак не могу скрыть блок «адрес доставки» при выборе способа доставки самовывоз.

Нашел на просторах сего замечательного сайта вот такую конструкцию

$(document).on('change', '[name="delivery"]', function() {
	if ($('[name="delivery"]:checked').attr('id') == 'delivery_5') {
		и развлекайся на здоровье...
	}
})


Но не пойму никак как заставить ее работать.

Пробывал через [[+delivery.id:]] но тоже не получилось…

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

Minishop2 последней версии.
Георгий Графов
15 ноября 2016, 13:25
modx.pro
1
3 975
0

Добавление своих полей в форму заказа [обновлено]

При разработке нескольких проектов, возникала необходимость в получении дополнительных данных от покупателей, а полей в miniShop2 ограниченное количество. Поиск готового решения результата не дал, поэтому предлагаю свой вариант.

Решение обновлено, убраны правки исходного кода минишопа, теперь при обновлении ничего не затрется, изменены ключи у полей

Решалось это следующим образом:
1. Добавлялись необходимые поля, для примера взяты тип плательщика, название организации и инн.
2. Добавлялся плагин срабатывающий при сохранении заказа и при подключении js минишопа в админке.
3. Редактировались настройки и записи словарей.

Более подробно далее
Дмитрий Меркурьев
11 октября 2016, 16:38
modx.pro
97
21 840
+11

Дополнительные поля профиля юзера (не extended)


Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить карму в порядке возможность обновления системы.
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Павел Гвоздь
30 мая 2016, 22:36
modx.pro
116
21 444
+19