Станислав
С нами с 11 января 2013; Место в рейтинге пользователей: #1221Curl клиент modx
            Встроенный curl клиент для отправки запросов на сторонние сервисы (RESTful и другие). 
Так как все чаще используются сторонние сервисы в повседневной разработке сайтов, для этих целей в modx есть встроенный клиент, с помощью которого можно отправлять запросы:
        
        
        
        
    Так как все чаще используются сторонние сервисы в повседневной разработке сайтов, для этих целей в modx есть встроенный клиент, с помощью которого можно отправлять запросы:
/* @var modRest $client */
$client = $modx->getService('rest', 'rest.modRest');
$response = $client->get('GET запрос');
или
$response = $client->post('POST запрос');
// Обработка полученных данных в json или xml формате и преобразование их в массив
$array = $response->process();В заметке перечислены способы работы с клиентомЭкскурс как можно использовать vuejs в место extjs и не запариться.
            Это не статься в стиле «я написал торт/тудушку/ещечтото на rea extjs и vue и вот что у меня получилось». Это просто инструкция как можно без особых усилий писать на чем-то стороннем (в моем случае vue).
(внимание) Так как на этом ресурсе сидят довольно опытные ребята, я не буду рассказывать все в подробностях, как поставить ноду + сопутствующее окружение, что такое modExtra, почему vue а не react/angular/свойвариант и т.д…
В общем погнали.
        
        
        
        
    (внимание) Так как на этом ресурсе сидят довольно опытные ребята, я не буду рассказывать все в подробностях, как поставить ноду + сопутствующее окружение, что такое modExtra, почему vue а не react/angular/свойвариант и т.д…
В общем погнали.
[MIGX] - Большой и страшный. Multiple Formtabs. Как сделать слайдер с разными типами слайдов.
            Привет сообществу!
В данной заметке вы узнаете, что такое Multiple Formtabs и как создать конфигурацию с разным набором данных. Ну и конечно же создадим с вами слайдер у которого будут разные типы слайдов, а в конце вас ждёт очень интересная история которую я долго не решался кому либо рассказать (если конечно вам интересно, но история интересная — поверьте). И так, примеры слайдов:
        
        
        
        
    В данной заметке вы узнаете, что такое Multiple Formtabs и как создать конфигурацию с разным набором данных. Ну и конечно же создадим с вами слайдер у которого будут разные типы слайдов, а в конце вас ждёт очень интересная история которую я долго не решался кому либо рассказать (если конечно вам интересно, но история интересная — поверьте). И так, примеры слайдов:
- Изображение на фоне
 - Видео на фоне
 - Сплошной цвет на фоне
 
Лечение зараженных сайтов на modhost.pro
            Привет, друзья! 
Как многие уже заметили, в MODX недавно обнаружили критическую уязвимость. Заключается она в том, что одним простым запросом можно залить произвольный файл на сайт, и выполнить его. Это может быть шел, вредоносный скрипт, что угодно.
Простота атаки и беспечность владельцев сайтов привели к тому, что я уже неделю разгребаю последствия этой атаки на modhost.pro. Итак, что нужно делать, чтобы вылечить свои сайты?
        
        
        
    Как многие уже заметили, в MODX недавно обнаружили критическую уязвимость. Заключается она в том, что одним простым запросом можно залить произвольный файл на сайт, и выполнить его. Это может быть шел, вредоносный скрипт, что угодно.
Простота атаки и беспечность владельцев сайтов привели к тому, что я уже неделю разгребаю последствия этой атаки на modhost.pro. Итак, что нужно делать, чтобы вылечить свои сайты?
Изменяем форму заказа minishop2
[SwiftMediaSource] Could not authenticate
            Есть сайт, который хранит фотки на селектел. Сейчас сайт внезапно не работает и в логах: 
        
        
        
    /core/components/swift/model/swift/swiftmediasource.class.php : 115) [SwiftMediaSource] Could not authenticate: This service [swift] does not have access to the [common] endpoint.То есть сайт не открывается вообще: 500 ошибка. Не работает, похоже, весь день. До этого всё было ок, ничего не трогали. SwiftMediaSource обновлён до последней версии. Есть идеи куда копать?        Что за ошибка в BannerY?
            Приветствую!
Переехал на ihor vps.
Все работает отлично. За исключением одного — BannerY.
Баннеры не выводятся и возникает такая ошибка:
До этого сидел на шаред хостинге timeweb — там таких ошибок не было.
MySQL — 5.7.21
PHP — 7.0.25
MODX — 2.6.1
Подскажите, как решить проблему с BannerY?
        
        
        
    Переехал на ihor vps.
Все работает отлично. За исключением одного — BannerY.
Баннеры не выводятся и возникает такая ошибка:
[2018-03-08 09:51:47] (ERROR @ /home/bbuser/web/site.ru/public_html/core/components/pdotools/model/pdotools/pdofetch.class.php : 172) [pdoTools] Error 42000: Expression #10 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'bbuser_ds3.byAdPosition.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_byТак же была такая ошибка — github.com/modxcms/revolution/issues/13730. Просто удалил виджет.До этого сидел на шаред хостинге timeweb — там таких ошибок не было.
MySQL — 5.7.21
PHP — 7.0.25
MODX — 2.6.1
Подскажите, как решить проблему с BannerY?
Вывод кастомных полей ресурса в админке
            Всем привет!
Хочу добавить пару полей в modResource, скажем, еще один заголовок и еще одно поле с контентом. Ну вот хочется мне :) Допустим, расширение стандартной модели я сделаю по заметке Василия. Но как быть с админкой? Я где-то видел хитрый плагин тут на сайте, который добавляет кастомный js к ресурсу, но уже два часа копаюсь и не могу найти. Может напомнит кто?
        
        
        
    Хочу добавить пару полей в modResource, скажем, еще один заголовок и еще одно поле с контентом. Ну вот хочется мне :) Допустим, расширение стандартной модели я сделаю по заметке Василия. Но как быть с админкой? Я где-то видел хитрый плагин тут на сайте, который добавляет кастомный js к ресурсу, но уже два часа копаюсь и не могу найти. Может напомнит кто?
[MinifyX] Новые возможности старичка
            Всем привет! Сегодня поговорим про дополнение MinifyX. Все знают, что это, но не все, что оно больше не поддерживается автором. Основная причина — ядро минифая (библиотека Munee) уже давно не обновляется. Вроде есть проблемы с Bootstrap 4.
Но мне он нравится. А главное, он выполняет всё, что требуется — собирает и минифицирует мои скрипты и стили без ошибок. Я не компилирую сасы, лесы, кофе. Единственное, не хватало разных мелочей для удобства. Вот захотелось мне собирать всё в один файл — и обычные скрипты и скрипты дополнений. Сниппетом это сделать не очень просто, но можно — для каждого шаблона делать отдельный вызов с перечнем необходимых файлов. Но этот вариант не вызвал у меня энтузиазма. И я решил реализовать другой подход. У меня сниппет MinifyX вызывается в чанке head, в котором я определяю секцию HEAD страницы. Поэтому я подумал, а почему бы не использовать подход загрузки файлов по требованию.
        
        
        
    Но мне он нравится. А главное, он выполняет всё, что требуется — собирает и минифицирует мои скрипты и стили без ошибок. Я не компилирую сасы, лесы, кофе. Единственное, не хватало разных мелочей для удобства. Вот захотелось мне собирать всё в один файл — и обычные скрипты и скрипты дополнений. Сниппетом это сделать не очень просто, но можно — для каждого шаблона делать отдельный вызов с перечнем необходимых файлов. Но этот вариант не вызвал у меня энтузиазма. И я решил реализовать другой подход. У меня сниппет MinifyX вызывается в чанке head, в котором я определяю секцию HEAD страницы. Поэтому я подумал, а почему бы не использовать подход загрузки файлов по требованию.
ExtJs и зависимые SuperBoxSelect
            Добрый день.
Возник вопрос реализации зависимых мультиселектов.
Подскажите как можно передавать необходимый параметр в `baseParams` при клике на данный элемент.
Имеем некий мультиселект:
        
        
        
    Возник вопрос реализации зависимых мультиселектов.
Подскажите как можно передавать необходимый параметр в `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 );        
            
                    
                    
                