Здоров Александр

Здоров Александр

С нами с 31 октября 2015; Место в рейтинге пользователей: #76

Обязательное поле для заполнения в msOrder

Всем привет. Давненько не крутил miniShop2 и забыл как добавить обязательное поле при заказе товара. 2 поля стоят обязательные Имя и e-mail, нужно ещё добавить телефон. В браузере через консоль вижу добавляемый к этим слоям с формами класс required, но в чанке tpl.msOrder.outer я не вижу этих класов, значит они добавляются через яваскрипт. В том же FormIT и AjaxForm можно было id прописать и поле становилось обязательным. Подскажите как добавить обязательное поле?
Андрей Копп
28 января 2016, 11:56
modx.pro
2
5 434
0

Вотермарк на изображения в контентной области

Всем привет! Появилась потребность накладывать вотермарки на изображения вставляемые в контентной области. Может кто сталкивался с подобными задачами, посоветуйте как это можно реализовать. Пока нашел выход через MIGx. Но не удобно тем что нужно будет для вызова писать тего MODx — контенты с этим не справятся(((
Крайний случай — спец программами перед загрузкой изображений накладывать на них вотермарки, но хочется все автоматизировать!)))
Максим
28 декабря 2015, 10:15
modx.pro
1
1 051
0

Соединяем EasyComm и mFilter2

Всем привет, и сразу к делу (кстати пишу первый раз тут, если будут ошибки — исправим).

Довольно таки часто требуется в интернет магазинах или каталогах добавить возможность пользователям писать отзывы о товарах, с этим очень хорошо справляется компонент EasyComm. Но очень часто возникает и смежная задача, слепить EasyComm с mFilter2, а именно сделать сортировку по количеству отзывов или по рейтингу товара. Выкладываю готовое решение.

Добавляем в вызов mFilter2 следующий код:

&loadModels=`easycomm`
&where=`{"class_key":"msProduct"}`
&leftJoin=`{
	"ecThread": {
		"class": "ecThread",
		"on": "msProduct.id = ecThread.resource"
	}
}`

&select=`{
	"msProduct": "*",
	"ecThread": "ecThread.rating_simple AS rating, ecThread.count AS reviews"
}`
Павел
25 декабря 2015, 10:34
modx.pro
34
4 822
+14

Добавление тегов с фронта через форму Tickets

Здравствуйте. Не судите строго, пишу скорее как памятку для себя, но может быть кому пригодится.
Простое решение для добавления тегов с фронта в форму Tickets.
Борис И
28 ноября 2015, 06:06
modx.pro
21
3 185
+4

Бесплатная доставка курьером от определенной суммы

Здравствуйте. Пожалуйста, подскажите как реализовать данный функционал:
например, до 5000 тысяч доставка 300 рублей, от 5000 тысяч – бесплатно?

joxi.ru/zAN5Mxls156329
Александр Янк
02 августа 2015, 15:23
modx.pro
14
6 647
0

FormIT. Собираем заявки(лиды) в Битрикс 24


Alexander V
20 июня 2015, 19:42
modx.pro
17
14 856
+2

[pdoTools] 2.0.0-beta c шаблонизатором Fenom

Представляю вам новую версию pdoTools со встроенным шаблонизатором Fenom.

Это очередная попытка решить вопрос с очень бедным MODX шаблонизатором, который умеет очень мало. Первая «велосипедная» попытка была представлена здесь, а сейчас всё гораздо серьёзнее.

Если вы не знакомы с Fenom, то советую прочитать вот эту заметку на Хабре, а потом пробежаться по документации на GitHub.

Возможности

  • Включение поддержки Fenom раздельно для каждого сниппета pdoTools.
  • Можно использовать плейсхолдеры MODX и теги Fenom одновременно. Но быстрее будет использовать что-то одно.
  • Если в чанке нет плейсхолдеров MODX, то парсер MODX не запускается
  • Если в чанке нет тегов Fenom, то он тоже не запускается.
  • @INLINE чанки работают
В отличии от других решений, вам не нужно никаким образом менять или переписывать свои сниппеты — всё крутится через методы pdoTools::getChunk() и pdoTools::parseChunk() автоматически.
Василий Наумкин
18 мая 2015, 19:11
modx.pro
10
19 470
+17

Сохранение полей формы в новой версии FormIt 2.2.2

Привет!
Сегодня днем я тут спрашивал как настроить новую версию FormIt так, что бы он сохранял значения формы.
К сожалению, разработчики компонента не отредактировали документацию и было совершенно не понятно как это должно работать.
Андрей Сухомозгий
31 марта 2015, 16:51
modx.pro
21
10 840
+11

Динамическая кнопка Купить / В корзине

Появилась необходимость реализовать динамическую кнопку Купить / В корзине.

Может кому-то пригодится.

Спасибо Алексею Наумову, Василию Наумкину за помощь в реализации.

Чанк Купить 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]]`]]
Klike
17 февраля 2015, 13:36
modx.pro
40
5 582
+2

Добавление данных в письмо о заказе Minishop

Здравствуйте.
Подскажите пожалуйста, что нужно дописать в чанк tpl.msEmail.new.manager, чтобы в письме о заказе помимо информации о заказанных товарах приходили данные заказчика (телефон, адрес, email).
Это необходимо, чтобы оператор магазина мог обрабатывать заказы без компьютера.
Денис
08 февраля 2015, 16:13
modx.pro
3
1 113
+1