Яна Митрофанова
С нами с 13 августа 2016; Место в рейтинге пользователей: #522Минимальный заказ
Дорогие вы мои, подскажите пожалуйста, есть ли какое готовое решение чтобы запрещать отправку формы оформления заказа или ее вывод, если сформированный заказ не дотягивает до минимальной цены?
Оrder success на отдельной странице
Доброго времени суток!
Подскажите, пожалуйста, как сделать так, чтобы после успешного оформления заказа, на сайте, посетителя перекидывало на определенную страницу, а не на эту же, с чанком tpl.msOrder.success?
Подскажите, пожалуйста, как сделать так, чтобы после успешного оформления заказа, на сайте, посетителя перекидывало на определенную страницу, а не на эту же, с чанком tpl.msOrder.success?
Форма оплаты
Добрый день!
Встала задача создать форму оплаты с последующей отсылкой данных в платежную систему (webpay)
Есть готовый модуль mspWebpay, но он не подходит по той причине, что нет интернет магазина и заказчик не хочет корзину.
1) Необходимо создать форму, которая по кнопке «заказать» загрузится и подхватит pagetitle товара и tv с ценой.
2) Далее покупатель вписывает в эту форму свои данные и нажимает продолжить
3) Когда нажимаем «продолжить» форма должна перекинуть все данные в форму #2 (форма в которой формируются данные для отправки данных в платежную систему)
код формы (дан поставщиком платежной системы)
4) Форма #2 должна наконец отсылать данные на сайт платежной системы
Помогите с чего начать )
Может есть возможность сразу 2 формы в одну объединить?
Заранее спасибо!
Встала задача создать форму оплаты с последующей отсылкой данных в платежную систему (webpay)
Есть готовый модуль mspWebpay, но он не подходит по той причине, что нет интернет магазина и заказчик не хочет корзину.
1) Необходимо создать форму, которая по кнопке «заказать» загрузится и подхватит pagetitle товара и tv с ценой.
2) Далее покупатель вписывает в эту форму свои данные и нажимает продолжить
3) Когда нажимаем «продолжить» форма должна перекинуть все данные в форму #2 (форма в которой формируются данные для отправки данных в платежную систему)
код формы (дан поставщиком платежной системы)
form action="https://secure.sandbox.webpay.by:8843/" method="post">
<input type="hidden" name="*scart">
<input type="hidden" name="wsb_version" value="2">
<input type="hidden" name="wsb_language_id" value="russian">
<input type="hidden" name="wsb_storeid" value="11111111" >
<input type="hidden" name="wsb_store" value="Название Вашего магазина" >
<input type="hidden" name="wsb_order_num" value="ORDER-12345678" >
<input type="hidden" name="wsb_test" value="1" >
<input type="hidden" name="wsb_currency_id" value="BYR" >
<input type="hidden" name="wsb_seed" value="1242649174">
<input type="hidden" name="wsb_return_url" value=" http://your site url.com/success.php ">
<input type="hidden" name="wsb_cancel_return_url" value=" http://your site url.com/cancel.php "> <input type="hidden" name="wsb_notify_url" value=" http://your site url.com/notify.php ">
<input type="hidden" name="wsb_email" value="no@body.tld" >
<input type="hidden" name="wsb_phone" value="22-333-333" >
<input type="hidden" name="wsb_invoice_item_name[]" value="Товар 1">
<input type="hidden" name="wsb_invoice_item_quantity[]" value="2">
<input type="hidden" name="wsb_invoice_item_price[]" value="10000">
<input type="hidden" name="wsb_invoice_item_name[]" value="Товар 2">
<input type="hidden" name="wsb_invoice_item_quantity[]" value="1">
<input type="hidden" name="wsb_invoice_item_price[]" value="500">
<input type="hidden" name="wsb_total" value="21950" >
<input type="hidden" name="wsb_signature" value="40aa8af3ce7a1f7c3635ac2227475094a59d574c" >
<input type="hidden" name="wsb_tax" value="1050">
<input type="hidden" name="wsb_shipping_name" value="Стоимость доставки" >
<input type="hidden" name="wsb_shipping_price" value="980" >
<input type="hidden" name="wsb_discount_name" value="Скидка на товар" >
<input type="hidden" name="wsb_discount_price" value="580" >
<input type="submit" value="Купить">
</form>
4) Форма #2 должна наконец отсылать данные на сайт платежной системы
Помогите с чего начать )
Может есть возможность сразу 2 формы в одну объединить?
Заранее спасибо!
Дата: сегодня, +10 дней, + 20 дней?
Здравствуйте!
Мне требуется вывести такую комбинацию дат:
дата сегодня — 15 ноября 2015 г.
дата через десять дней — 25 ноября 2015 г.
дата через 20 дней — 05 декабря 2015 г.
Нашёл вот такой вариант
При таком варианте я создаю три сниппета и вывожу их на странице:
1. дата сегодня в формате 15 ноября 2015 г.
2. + 10 дней — time() + 864000
3. + 20 дней — time() + 1728000
Вариант работает, но приходится создавать три сниппета и я не совсем уверен, что сделал всё правильно.
Я мало грамотен в PHP, и толком не знаю правилен ли мой вариант, который нашёл на просторах интернета.
Подскажите, есть способ сделать это проще и правильнее стандартными средствами MODX или как будет правильно для моего случая?
Ну или как бы это сделали Вы?
Спасибо!
Мне требуется вывести такую комбинацию дат:
дата сегодня — 15 ноября 2015 г.
дата через десять дней — 25 ноября 2015 г.
дата через 20 дней — 05 декабря 2015 г.
Нашёл вот такой вариант
<?php
function rus_date() {
$translate = array(
"Monday" => "Понедельник",
"Tuesday" => "Вторник",
"Wednesday" => "Среда",
"Thursday" => "Четверг",
"Friday" => "Пятница",
"Saturday" => "Суббота",
"Sunday" => "Воскресенье",
"January" => "Января",
"February" => "Февраля",
"March" => "Марта",
"April" => "Апреля",
"May" => "Мая",
"June" => "Июня",
"July" => "Июля",
"August" => "Августа",
"September" => "Сентября",
"October" => "Октября",
"November" => "Ноября",
"December" => "Декабря"
);
if (func_num_args() > 1) {
$timestamp = func_get_arg(1);
return strtr(date(func_get_arg(0), $timestamp), $translate);
} else {
return strtr(date(func_get_arg(0)), $translate);
}
}
print rus_date("j F Y, l", time() + 864000);
где, time() + 864000
это + 10 дней к сегодняшней дате в секундахПри таком варианте я создаю три сниппета и вывожу их на странице:
1. дата сегодня в формате 15 ноября 2015 г.
2. + 10 дней — time() + 864000
3. + 20 дней — time() + 1728000
Вариант работает, но приходится создавать три сниппета и я не совсем уверен, что сделал всё правильно.
Я мало грамотен в PHP, и толком не знаю правилен ли мой вариант, который нашёл на просторах интернета.
Подскажите, есть способ сделать это проще и правильнее стандартными средствами MODX или как будет правильно для моего случая?
Ну или как бы это сделали Вы?
Спасибо!
Простое формирование квитанции в miniShop2
Некоторые покупатели интернет-магазинов предпочитают оплачивать банковским переводом по квитанции (Форма № ПД-4).
Для этого есть простое решение — формирование и отправка на эл. почту квитанции в один клик, посредством доп. статуса заказа. У этого решения есть два плюса: легко (не нужно создавать доп. компонент) и то, что квитанция формируется менеджером после предварительной проверки введенных данных покупателя.
Для этого есть простое решение — формирование и отправка на эл. почту квитанции в один клик, посредством доп. статуса заказа. У этого решения есть два плюса: легко (не нужно создавать доп. компонент) и то, что квитанция формируется менеджером после предварительной проверки введенных данных покупателя.
Бесплатная доставка курьером от определенной суммы
Здравствуйте. Пожалуйста, подскажите как реализовать данный функционал:
например, до 5000 тысяч доставка 300 рублей, от 5000 тысяч – бесплатно?
joxi.ru/zAN5Mxls156329
например, до 5000 тысяч доставка 300 рублей, от 5000 тысяч – бесплатно?
joxi.ru/zAN5Mxls156329
easyComm - дополнительное поле Изображение
UPD 22.04.2021. Эта публикация устарела!
С версии 1.11.0-pl компонент сразу поддерживает вложение файлов: modx.pro/components/21775
При использовании компонента easyComm встала задача прикрепления к сообщения файла, а точнее изображения. Да еще и так, что бы им удобно можно было управлять через админку.
По результатам работы — небольшая инструкция, как этого добиться:
С версии 1.11.0-pl компонент сразу поддерживает вложение файлов: modx.pro/components/21775
При использовании компонента easyComm встала задача прикрепления к сообщения файла, а точнее изображения. Да еще и так, что бы им удобно можно было управлять через админку.
По результатам работы — небольшая инструкция, как этого добиться:
Одна галерея (ms2gallery) для двух языков
Всех с праздником!!!
На блоге появилась задача сделать одну галерею для двух контекстов (языков) то есть что бы можно было добавлять фото только в одном месте а выводить на двух контекстах site.com/ru и site.com/en
На блоге появилась задача сделать одну галерею для двух контекстов (языков) то есть что бы можно было добавлять фото только в одном месте а выводить на двух контекстах site.com/ru и site.com/en
Super MODx SEO-strict +ускоряем фронтенд
Михаил задал вопрос про канонизацию урлов в MODx.
Писал ему ответ, но понял, что он слишком большой. Поэтому переписал в статью.
Поехали.
Писал ему ответ, но понял, что он слишком большой. Поэтому переписал в статью.
Поехали.
Динамическая кнопка Купить / В корзине
Появилась необходимость реализовать динамическую кнопку Купить / В корзине.
Может кому-то пригодится.
Спасибо Алексею Наумову, Василию Наумкину за помощь в реализации.
Чанк Купить tplOut:
Чанк В корзине tplIn:
Скрипт (требуется подключенный jQuery)
Сниппет myButton:
Кнопка вызывается таким образом:
Может кому-то пригодится.
Спасибо Алексею Наумову, Василию Наумкину за помощь в реализации.
Чанк Купить tplOut:
<button type="submit" class="btn btn-cart btn-primary" name="ms2_action" value="cart/add">
Купить
</button>
<button type="submit" class="btn btn-checkout btn-success hidden" name="ms2_action" value="cart/add">
В корзине
</button>
Чанк В корзине tplIn:
<button type="submit" class="btn btn-checkout btn-success" name="ms2_action" value="cart/add">
В корзине
</button>
Скрипт (требуется подключенный jQuery)
if (typeof(miniShop2) != 'undefined') {
// кнопки В корзину/Оформить
miniShop2.Callbacks.Cart.add.response.success = function(response) {
miniShop2.Order.getcost();
miniShop2.sendData.$form.find('.btn-cart').addClass('hidden');
miniShop2.sendData.$form.find('.btn-checkout').removeClass('hidden');
};
miniShop2.Callbacks.Cart.remove.response.success = function() {
miniShop2.sendData.$form.find('.btn-cart').removeClass('hidden');
miniShop2.sendData.$form.find('.btn-checkout').addClass('hidden');
};
}
Сниппет myButton:
<?php
// Параметры
$idd = $modx->getOption('idd', $scriptProperties, $modx->resource->id);
$tplIn = $modx->getOption('tplIn', $scriptProperties, 'tplIn'); //Можно писать так: ('tplIn', $scriptProperties, '@INLINE Товар в корзине, кол-во – [[+count]], цена = [[+price]].');
$tplOut = $modx->getOption('tplOut', $scriptProperties, 'tplOut'); // '@INLINE Товара нет в корзине.'
// Классы для работы
$pdo = $modx->getService('pdoTools');
$miniShop2 = $modx->getService('minishop2');
$miniShop2->initialize($modx->context->key, $scriptProperties);
$cart = $miniShop2->cart->get();
// Поехали
$found = false;
foreach($cart as $product) {
if ($product['id'] == $idd) {
$found = $product;
break;
}
}
return $found
? $pdo->getChunk($tplIn, $found)
: $pdo->getChunk($tplOut);
Кнопка вызывается таким образом:
[[!myButton? &idd=`[[+id]]`]]