Игорь Терентьев
С нами с 29 ноября 2013; Место в рейтинге пользователей: #83Как перезаписать или расширить конфиг грида ExtJS
Всем привет! Вопрос к знатокам ExtJS.
Как расширить или перезаписать конфиг, а в идеале только один параметр?
Нужно в гриде с заказами выделять строку цветом. Для этого нужно добавить условие в getRowClass:
github.com/bezumkin/miniShop2/blob/master/assets/components/minishop2/js/mgr/misc/default.grid.js#L25-L40
Который наследуется в miniShop2.grid.Orders:
github.com/bezumkin/miniShop2/blob/master/assets/components/minishop2/js/mgr/orders/orders.grid.js
Как расширить или перезаписать конфиг, а в идеале только один параметр?
Нужно в гриде с заказами выделять строку цветом. Для этого нужно добавить условие в getRowClass:
github.com/bezumkin/miniShop2/blob/master/assets/components/minishop2/js/mgr/misc/default.grid.js#L25-L40
Который наследуется в miniShop2.grid.Orders:
github.com/bezumkin/miniShop2/blob/master/assets/components/minishop2/js/mgr/orders/orders.grid.js
Как вы разрабатываете сайты на MODX в команде?
Всем привет!
Поделитесь своим опытом разработки сайтов в команде.
Сейчас мы разрабатываем сайты вдвоем. У каждого из нас есть по тестовому сайту. И еще есть один тестовый для клиента, где мы показываем новую версию перед продакшеном. Всего получается 3 сайта для разработки и 1 рабочий. Тестовые сайты расположены на нашем домене третьего уровня.
Поделитесь своим опытом разработки сайтов в команде.
Сейчас мы разрабатываем сайты вдвоем. У каждого из нас есть по тестовому сайту. И еще есть один тестовый для клиента, где мы показываем новую версию перед продакшеном. Всего получается 3 сайта для разработки и 1 рабочий. Тестовые сайты расположены на нашем домене третьего уровня.
Как сделать, чтобы getImageList понимал тэги Fenom?
Читал в этом вопросе, что можно просто заменить $modx->getChunk.
Я сделал копию getImageList и добавил в начало:
И заменил $modx->getChunk на $pdoFetch->getChunk здесь
Но все равно тэги Fenome не распознаются.
Нужно это мне для работы с пагинацией и сложных чанков с условиями:
Я сделал копию getImageList и добавил в начало:
$path = MODX_CORE_PATH . 'components/pdotools/model/pdotools/';
$pdoFetch = $modx->getService('pdofetch','pdoFetch', $path, $scriptProperties);
И заменил $modx->getChunk на $pdoFetch->getChunk здесь
Но все равно тэги Fenome не распознаются.
Нужно это мне для работы с пагинацией и сложных чанков с условиями:
{'!pdoPage' | snippet : [
'element' => 'getImageList',
'docid' => $_modx->resource.id,
'tvname' => 'resourcealbum',
'processTVs' => 0,
'where' => [
'active' => 1,
],
'ajaxMode' => 'button',
'tpl' => 'migx.gallery.item',
'limit' => 2,
]}
Порядок значений опций товара
MiniShop2 и греческий язык
Как через API добавить опцию товара miniShop2?
Размеры, цвета добавляются, а опцию «shank» не получается…
$ob = $modx->newObject('msProduct');
$tmp = [
'pagetitle' => $pagetitle
,'class_key' => 'msProduct'
,'uri' => $url
,'createdon' => time()
,'template' => 4
,'price' => $cur_price
,'tags' => $tags
,'color' => $color
,'options-shank' => $shank
,'option-shank' => $shank
,'shank' => $shank
];
$ob->fromArray($tmp);
$ob->save();
Меняется old_price при изменении price в плагине
При изменении цены через плагин (события: msOnGetProductPrice, msOnBeforeAddToCart, msOnAddToCart) перезаписывается значение поля old_price значением price (до изменения). Как сделать так, чтобы значение не изменялось или записать в него свое значение?
Плагин:
Плагин:
<?php
switch ($modx->event->name) {
case 'msOnGetProductPrice':
if ($modx->context->key == 'mgr') {
return '';
}
$currencyrate = $modx->getService('currencyrate', 'currencyrate',
$modx->getOption('currencyrate_core_path', null,
$modx->getOption('core_path') . 'components/currencyrate/') . 'model/currencyrate/', $scriptProperties);
if (!($currencyrate instanceof currencyrate)) {
return '';
}
$currency = $currencyrate->currency;
if ($currency == $modx->getOption('currencyrate_currency')) {
return '';
}
$list = $currencyrate->getList();
$values = & $modx->event->returnedValues;
if (!isset($modx->event->returnedValues['price'])) {
$modx->event->returnedValues['price'] = $price;
}
$price = &$modx->event->returnedValues['price'];
$new_price = ($price * $list[EUR]) / $list[$currency];
if ($new_price !== false) {
$price = $new_price;
}
break;
}
Кэширование pdoMenu
Как можно закэшировать уже обработанный результат работы сниппета, чтобы при открытии еще не закэшированной страницы данные не обрабатывались заново? Меню очень уж большое…
Сортировка в мультикатегориях MiniShop2
Можно ли как-то сортировать вручную товары (по типу menuindex) в мультикатегориях, чтобы в разных категориях был свой порядок и он никак не влиял на остальные категории?
Номер телефона miniShop2 в профиль пользователя
Добрый вечер!
Нужно при оформлении заказа брать номер телефона из msOrderAddress и записывать его в профиль пользователя.
Написал такой плагин, но номер телефона записывается совсем не тот…
На этом этапе в переменную попадает id заказа, а не пользователя:
Нужно при оформлении заказа брать номер телефона из msOrderAddress и записывать его в профиль пользователя.
Написал такой плагин, но номер телефона записывается совсем не тот…
<?php
switch ($modx->event->name) {
case "msOnCreateOrder":
$msUserId = $msOrder->get('user_id');
$msAddress = $modx->getObject('msOrderAddress',$msUserId);
$msPhone = $msAddress->get('phone');
$user = $modx->getObject('modUser',$msUserId);
$profile = $user->getOne('Profile');
$profile->set('phone', $msPhone);
$profile->save();
break;
}
На этом этапе в переменную попадает id заказа, а не пользователя:
$msUserId = $msOrder->get('user_id');