Константин Обухов

Константин Обухов

С нами с 03 марта 2016; Место в рейтинге пользователей: #333

Загружаем сниппеты и чанки с диска

Кроме нескольких осведомленных человек, есть люди, которые подозревают, что в MODX все элементы хранятся в БД. У сообщества есть твердое мнение, что в данном решении больше минусов, чем плюсов — и время затрачивается на запросы к базе, и разрабатывать не очень удобно (хоть и появились недавно статические элементы), но главное — это невозможность нормального деплоя и поддержки версионности. Мне эта мысль тоже не давала покоя. Поэтому я вчера вечерком решил поэкспериментировать с любимым pdoTools. Дописал в парсер несколько строчек и добавил в pdotools.class.php функцию runSnippet.
Сергей Шлоков
04 октября 2015, 05:58
modx.pro
2
4 986
+5

[Office] Версия 1.3.0-pl и расширение другими компонентами

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

В первую очередь, обновился внешний вид личного кабинета miniShop2 на версиях MODX 2.3+.
Если новый внешний вид вам не нравится, то отредактируйте системную настройку office_extjs_css и укажите там старый файл со стилями:
[[++assets_url]]components/office/css/main/lib/xtheme-modx.min.css
Василий Наумкин
01 октября 2015, 08:07
modx.pro
6
4 932
+18

Небольшой вопрос про AjaxForm и Login

Приветствую.
Вызываю Logn с помощтю AjaxForm (форма во всплывающем окне):

[[!AjaxForm?
    	&snippet=`Login`
    	&loginResourceId=`1`
    	&form=`tpl.login`
    	&logoutTpl=`tpl.logout`
  	&logoutResourceId=`1`
   	&validate=`username:required,password:required`
	&validationErrorMessage=`В форме содержатся ошибки!`
	&successMsg=`Всё хорошо!`
	&redirectToPrior=`1`
]]
на данный момент валидацию реализовал ужасно, скорей всего :) (непосредственно в Login записал нужные мне условия).

if (empty($_POST['username'])) {
	return $AjaxForm->error('Ошибки в форме', array('name' => 'Вы не заполнили имя'));
} else {
	.. сам Login ..
}
Но суть вопроса не в этом…

Вроде всё хорошо… работает — как надо, однако стандартные loginResourceId/logoutResourceId не отлавливаются. Форма после успешного входа становиться disabled, и на этом всё. Только после волшебной кнопки F5, можно понять, что авторизация прошла успешно.

Не подскажите как спасти ситуацию?
Благодарю.
Александр
23 сентября 2015, 13:41
modx.pro
2
1 029
0

MS2, mSearch2 и 25 000 товаров

Всем привет!

Есть задача разработать книжный каталог со стартовой численностью 25 000+ наименований. Вопрос: потянет ли MS2 такое количество товаров? Не будет ли тормозить? Сможет ли mSearch2 быстро фильтровать категории, в которых содержится по несколько тысяч наименований?

И второй вопрос. Есть ли где-то успешные реализации электронных товаров на ms2 (программы, документы и пр). И если есть — поделитесь, пожалуйста, ссылками.

Стоит выбор платформы для реализации, и появилась дилемма: сделать все на родном и любимом MODX, либо искать другую платформу.

Всем спасибо за ответы.
Павел Ширяев
08 сентября 2015, 13:11
modx.pro
3
3 173
0

изменить ID

Добрый вечер!

$modx->controller->setProperty('id', '$id'');
не проканывает

хотелось бы услышать Василия, потому что советы типа «это невозможно» я уже читал на других форумах

с нетерпением жду ответа!
спасибо

23:09 UTC+3
Владимир
05 сентября 2015, 20:10
modx.pro
1
3 687
-2

[xButtons] Сохраняем элементы в файл

Решение вытекло из моей доработки Console. В диалоге редактирования элементов появляется кнопка с пунктами меню «Сохранить в файл», «Загрузить из файла», «Сохранить на ПК» и «Загрузить с ПК». Разработчикам, возможно, пригодится.
Сергей Шлоков
04 сентября 2015, 05:47
modx.pro
3
2 371
+5

Доска объявлений, Tickets или MigxDb.. как быть

Добрый день. Захотелось сделать доску объявлений и сразу возник вопрос на перед:

1)стоит ли использовать тикеты если больше половины полей в объявлениях придется вносить дополнительными (разные для каждого раздела). Использовать TV поля.
2) как можно фильтровать по ним и как это скажется на производительности если использовать Тикеты.
3) стоит ли начать делать под свои нужды. смотрю в сторону migx_db и разрабатывать отдельные таблицы для разных разделов доски объявлений. Пока теряюсь в догадках вдруг получется на Тикетах. не силен в ExtJS. Да и контроллеры придется разрабатывать.
Дмитрий Крахмалев
03 сентября 2015, 14:22
modx.pro
2
2 077
0

Fenom + MobileDetect + NGINX + PHP5-FPM = 502 bad gateway

Здравствуйте.

Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:

2015/08/24 13:24:23 [error] 9787#0: *216565 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: *2.**.*20.*9, server: kfm.****.kz, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-kfm2.sock:", host: "kfm.****.kz", referrer: "http://kfm.****.kz/manager/?a=element/template/update&id=1"
Пояндексил — пишут, что это из-за ошибки в PHP. Nginx как бы сообщает, что PHP не отдал ему ответ.

Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.

Решение в комментариях.
Павел Гвоздь
24 августа 2015, 07:36
modx.pro
23
3 837
0

Как не надо расширять MODX-процессоры

В MODX-2.4.0 появился новый процессор updatefromelement.class.php by Argnist, пришедший на замену обычному процессору updatefromelement.php. Заменять non-classed процессоры конечно дело хорошее, но делать надо это крайне осторожно и обдуманно.

Сразу уточню, что этот процессор используется для обновления параметров элементов (типа шаблонов, сниппетов и т.п.)
Fi1osof
22 августа 2015, 14:18
modx.pro
8
4 964
+10

pdoPage, что должен возвращать сниппет в &element

Здравствуйте, подскажите пожалуйста, что должен возвращать мой сниппет для обертки pdoPage. Вот код Сниппета «GetIncomes»
/// куча кода 
$c = $modx->newQuery('Operation');
        $c->where(array(
            'userid' => $userid,
        ));
        $q = $modx->getCollection('Operation',$c); // получаем все денежные пополнения  конкретного юзера в шаблоне  incoming_tpl
        foreach($q as $row){
             $op_array[] = $row->toArray();
               $output .= $modx->getChunk('incoming_tpl', $op_array);
        }
return $output;
Собственно, что я должен вернуть в этом сниппете, чтобы смог воспользоваться pdoPage?
Код чанка вывода incoming_tpl должен быть:
<span class="boxing">
	<span class="l">[[+date_created:strtotime:date=`%d.%m.%Y`]]</span>
	<span class="r">[[+money]] $</span>
</span>
П.С. Это текущий вариант Сниппета «GetIncomes». Я понимаю, что там не должно быть GetChunkа
Если можно на пальцах объясните.
Захарий
20 августа 2015, 19:36
modx.pro
2
1 191
+1