Alexey

Alexey

С нами с 02 августа 2015; Место в рейтинге пользователей: #109

ExtJs и зависимые SuperBoxSelect

Добрый день.
Возник вопрос реализации зависимых мультиселектов.
Подскажите как можно передавать необходимый параметр в `baseParams` при клике на данный элемент.
Имеем некий мультиселект:
Component.combo.MultiSelect = function (config) {
	config = config || {};
	Ext.applyIf(config, {
		xtype: 'superboxselect',
		allowBlank: true,
		...
		store: new Ext.data.JsonStore({
			fields: ['id', 'name'],
			url: Component.config.connector_url,
			baseParams: {
				action: 'mgr/component/processor',
				ids: config.ids // сюда должен подтягиваться список id`шек
					// из предыдущего мультиселекта, но только по клику на данный елемент
			}
		}),
		...
		displayField: 'name',
		valueField: 'id',
	});
	Component.combo.MultiSelect .superclass.constructor.call(this, config);
};
Ext.extend(Component.combo.MultiSelect , Ext.ux.form.SuperBoxSelect);
Ext.reg('component-combo-superselect', Component.combo.MultiSelect );
man
man
14 декабря 2017, 12:55
modx.pro
9
2 882
0

Устраняем последствия автоматических регистраций

Столкнулся с проблемой автоматической регистрации на сайте. На данный момент порядка 15000 левых аккаунтов которые висят мертвым грузом. Василий вскоре обещал обновление с защитой от автоматических регистраций, а мы пока разберемся как удалить неактивных пользователей без заказа магазина. Под катом код для этого.
Володя
17 ноября 2017, 15:18
modx.pro
20
2 205
+8

Генерация PDF из формы FormIt + Генерация PDF из любых данных по кнопке (без FormIt) в MODX Revo

На modx.pro уже есть статья от Володи по генерации PDF.
Ниже хочу предложить альтернативный вариант формирования PDF файла из данных форм FormIt с использованием шаблонизатора Fenom и бесплатного компонента PDFresource
Klike
06 ноября 2017, 10:49
modx.pro
26
6 717
+12

[mSync+MsOptionprice] Импорт торговых предложений

Размещаю здесь, так как рейтинга не хватает)
Добрый день! Была довольно интересная задача по интеграции каталога 1-с с каталогом интернет магазина. В 1-с есть такая замечательная вещь как торговые предложения, которые по сути являются одним и тем же товаром только имеют различные параметры(размер/цвет/запах/количество и пр.) и так же могут обладать своими уникальными артикулами с ценами, для решения подобного функционала был использован отличный компонент msOptionsPrice2, который реализует модификации товара, куда и будем в последствии помещать наши торговые предложения. Но прежде чем создавать модификации требуется этот каталог еще получить из 1-с, в этом нам поможет компонент mSync, в его использовании нет никаких секретов, главное понимать что и откуда берется, а так же заранее изучить структуру файлов импорта.
web3
22 сентября 2017, 08:39
modx.pro
7
2 663
+2

mFilter2 и оптимизация скорости на 7k товарах


Всем, кто хоть раз пытался завести mFilter2 на большом кол-ве товаров и хотя-бы 10 опциях в фильтре, известно, что тормозов не избежать. Вот и мне попался на днях сайт, в котором, казалось бы, всего-то 7000 товаров и 10 опций на странице каталога. Однако сниппет фильтра отрабатывал за 3-4 секунды. Переписал на Fenom — стал отрабатывать за 2-3 секунды.
Не годится! Тем более, что у заказчика было требование: «Чтобы сайтом было комфортно пользоваться». Что-ж, взял задачу — надо решать!

Дебаг показал, что проблема в методе mse2FiltersHandler::getMsOptionValues, а именно в запросе (7k товаров!), который выглядит как-то так:
SELECT `product_id`, `key`, `value` FROM `modx_ms2_product_options` AS `msProductOption` 
WHERE (`msProductOption`.`product_id` IN (3394,3408,еще 7 тысяч ID)
AND `msProductOption`.`key` IN ('atr_n1','atr_n6','atr_n5','atr_n12','atr_n43','atr_n46','atr_n29','atr_n11','atr_n44','atr_n2'))
Павел Гвоздь
14 августа 2017, 14:14
modx.pro
41
5 227
+21

msOptionsPrice2 и составной товар


Возникла необходимость при помощи msOptionsPrice2 реализовать составной товар. Оказалось, что компонент не умеет прибавлять к начальной цене товара несколько цен из модификаций одной опции.
Например, есть опция Наполнители, у нее около 20 значений. На фронте, при выборе каждого из значений, цена товара должна увеличиваться на N рублей. Проблема заключается в том, что имена тегам чекбоксов мы даем в виде массива:
<input type="checkbox" name="cb[]">
Компонент, в свою очередь, с таким работать не умеет. Предлагаю решение в четыре простых шага!
Павел Гвоздь
12 августа 2017, 06:56
modx.pro
34
8 030
+14

[msOptionsPrice2] работа с остатками

Опишу решение ряда проблем с которыми столкнулся сам. msOptionsPrice2 очень крутое решение для minishop2 но для нормальной работы с остатками там очень мало функционала.
Проблемы:
  1. На странице каталога и товара нет плейсхолдера, с помощью которого можно было бы скрыть кнопку добавления в корзину и вывести свою информацию
  2. На странице каталога при добавлении товара проверяется на наличии первая модификация, и, если она отсутствует, то выскакивает оповещение о недоступности товара
  3. На миникарточке указана неправильная цена, т.к. выводится цена продукта, а не цена модификации
Инструкция под катом
Pavel Zarubin
08 августа 2017, 13:15
modx.pro
14
5 166
+4

[ExtJS] Расширяем нативную гриду юзеров


После статьи о расширении профиля юзера правильными дополнительными полями мне посыпались вопросы о расширении нативной таблицы со списком юзеров. Мы знаем, что практически любой стандартный компонент системы, работающий на ExtJS, можно расширить не затрагивая исходника. Главное уметь пользоваться «методом тыка» понимать принцип того, что делаешь. Что-ж… давайте расширять нативную таблицу пользователей!
Сразу опишем задачу, которую реализуем в рамках статьи:

  1. Убрать слева каждой записи ненужный чекбокс,
  2. Добавить столбцы: Фото, Дата рождения, Страна, Город,
  3. Добавить возможность отфильтровать пользователей по стране,
  4. Заменить некрасивое поле поиска на симпатичное и компактное,
  5. Подсветить заблокированных красным цветом.
Павел Гвоздь
07 июля 2017, 19:14
modx.pro
43
5 579
+21

Вывод Меток на Яндекс Картах по адресу

Автоматическое добавление на карту любых точек по адресу (Филиалы, дилеры, офисы по стране).

Для одного из проектов понадобилось удобно разместить на Яндекс-карте офисы всех дилеров компании по стране. Желательно конечно автоматизировать процесс, чтобы все далее добавленные офисы автоматически добавлялись на карту, без копания в коде и прописывания координат каждой новой точки.

Удалось набросать отличное, полностью автоматизированное решение, которое добавляет офис на карту, оперируя лишь адресом офиса.

Ситуация довольно распространенная, потому думаю будет не лишним поделиться опытом.
Николай Савин
22 апреля 2017, 13:39
modx.pro
16
8 562
+7

Реализация раздела "Вопрос - ответ"

День добрый.
Необходимо на сайте реализовать функционал «Вопрос — ответ». Для этого выбрал компонент «Tickets».
что-то типа того — www.moihottur.ru/faq/

читал вот эту тему modx.pro/help/2793/ похожие проблемы.

Необходимо чтобы кнопка «ответить» была только у администратора сайта.

если вызвать так
[[!TicketComments? 
    &allowGuest=`1`
    &autoPublishGuest=`0`
    &autoPublish=`0`
]]
то чанк tpl.Tickets.comment.one.guest игнорируется

а если так:
[[!TicketComments? 
    &allowGuest=`0`
    &autoPublishGuest=`0`
    &autoPublish=`0`
]]
то отзывы не могут писать неавторизованные пользователи.

Как быть в этой ситуации?
Какая возможна реализация без костылей как предлагал автор в теме modx.pro/help/2793/

Глеб
19 апреля 2017, 11:38
modx.pro
4
4 681
+1