Для разработчиков

Делаем колбеки miniShop2 для всех

Всем привет! Так как в miniShop2 есть список колбеков для того, чтобы на определённые действия, совершаемые компонентом, можно было повесить свой код и, тем самым, дополнить работу магазина, то многие разработчики дополнений используют их в своём коде. Я уж не говорю о вебмастерах, которые используют этот инструмент для решения определённых нужд в своих сайтах.

В чём проблема?

В связи с этим получается проблема. Колбеков мало, а желающих воспользоваться ими — много. Я уже не раз сталкивался с тем, что некоторые компоненты из Modstore не могут работать вместе, т.к. используют одни и те же колбеки, на одних и тех же страницах.
Проблема в том, что код одного компонента, использующего, например miniShop2.Callbacks.Order.getcost, пересекается с другим кодом, другого компонента, использующего этот же колбек. Получается конфликт, который я для себя, в своих пакетах, решаю так:
Павел Гвоздь
22 мая 2016, 00:53
modx.pro
13
6 175
+3

Ошибка в работе сниппета MinifyX

Всем привет!
Установил пакет minifyX, все работало прекрасно пока не возникла ошибка:
Fatal error: Uncaught exception 'Sabberworm\CSS\Parsing\UnexpectedTokenException' with message 'Identifier expected. Got “: 768”' in D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php:174 Stack trace: #0 D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php(398): Sabberworm\CSS\Parser->parseIdentifier(true, false) #1 D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php(353): Sabberworm\CSS\Parser->parsePrimitiveValue() #2 D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php(185): Sabberworm\CSS\Parser->parseValue(Array) #3 D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php( in D:\OpenServer\domains\projects\site.ru\www\core\components\minifyx\munee\vendor\sabberworm\php-css-parser\lib\Sabberworm\CSS\Parser.php on line 174
Роман А.
12 мая 2016, 18:59
modx.pro
3 718
-2

Fenom. Загрузка чанков и сниппетов из файлов

Продолжаю эксперименты с загрузкой чанков и сниппетов из файлов. Мой первый эксперимент с парсером оказался не очень удачный. Хотя задачу он решал, но ожидания были немного другие. А поближе познакомившись с феномом, нашел, как мне кажется, хорошее решение — модификаторы. Дальше для тех, кому это интересно.
Сергей Шлоков
11 мая 2016, 15:16
modx.pro
12
5 289
+12

Сниппет с выводом инфо о странице по заданному tv

Здравствуйте. Не могу добиться вывода инфо о странице. При вызове функции в сниппете браузер выдает ошибку.(modx evo)
function show_members() {
    global $modx;
	$id = $modx->documentIdentifier;
	$tv_info = $modx->getTemplateVarOutput(array(61));
	$id = $tv_info[0];
	$id = (int) $id;
    $output = '';
    $table = $modx->getFullTableName('site_content');
     
	$result = $modx->db->select('id,pagetitle,published,createdon,CreatedBy', $table, "id = {$id}");
    $members = $modx->db->makeArray($result);
	foreach( $members as $p_val ) {     
	     foreach( $p_val as $m_key => $m_val ) {
			 $html .= $modx->parseChunk('tv-info', array(
		            'id' => $m_val['id'],
		            'pagetitle' => $m_val['pagetitle'],
					'published' => $m_val['published'],
					'createdon' => $m_val['createdon'],
					'createdby' => $m_val['CreatedBy']
		        ),
	        	'[+',
		        '+]'
	        	);
	echo ($html);
			}
		}
}

echo(show_members());
?>
Максим
09 марта 2016, 09:16
modx.pro
1 433
-2

transport.tv.php - или как транспортировать tv

Расковыривая github.com/bezumkin/modExtra до крови, да бы упаковать свой mSocial я столкнулся с грустной проблемой он не умеет создавать tv. Ну или может быть умеет, но я не нашел как, в связи с этим решил немного его расширить добавив новый транспортер. Итак, что же нужно делать?
Павел Карелин
29 января 2016, 10:48
modx.pro
3
2 175
+5

mSocial или как нужно делать компоненты.

Доброе время суток товарищи.
И я опять как с писаной торбой кручусь тут с mSocial я уже реализовал постинг из класса в 4 соцсети (vk, fb, tw, lj), все постится без особых танцев с бубном. Главный вопрос в том как лучше быть, стремиться быстрее дать Вам инструмент постинга в соцсети, все наращивая функционал. Или выдать уже готовый проект с как можно большим набором функций (но на это уйдет гораздо больше времени чем я думал). Варианта развития событий я вижу 2 и вот они.
Павел Карелин
17 января 2016, 19:42
modx.pro
2
4 380
+3

mSocial - или залихвацкий кросспостинг в соцсети.

В общем недавно загорелся желанием написать какое-нибудь полезное расширение. По своему опыту точно знаю, что нормальных расширений для постинга в соцсети нет. А увидев что появился VKShare за 800 рублей, да еще и с возможностью постинга только в ВК. Мое терпения лопнуло, а вернее закричало «Доколе?». Тем более что я давно собирался довести до ума свое владение ООП. В общем из всей этой вакханалии родился, а вернее рождается mSocial. На данный момент я только разобрался как легко и замечательно, помощью API постить сообщения во всевозможные группы, профили и страницы, этих распрекрасных социалок. За этим был написан класс для легкого и удобного постинга.
Павел Карелин
14 января 2016, 09:05
modx.pro
6
4 287
+12

UPD. Решение проблемы с AjaxManager

UPD: Пробуем по новому. Возвращаем всё на место и комментируем 49 строку плагина:
//'sections/resource/update.js',

Предлагаю совместными силами решить проблему с AjaxManager. Если кто не знает, это компонент для ускорения работы админки MODx за счёт подгрузки страниц посредством AJAX, а не перезагрузкой.

Всё утро сегодня возился с AjaxManager и кажется нашёл временное (из-за подобного решения возникают некоторые баги) решение проблемы с работой компонента. Опять же напомню, что компонент по неизвестным причинам перестал подгружать страницу редактирования страниц.
Сергей Фещуков
13 января 2016, 04:40
modx.pro
3 648
0

[Анонс] frontendManager

Последние дня 4 занимаюсь созданием фронтэнд менеджера, решил подсмотреть в сторону mobiledetect, а точнее в парсинг тегов.

Собственно вот, что получается:


Подробности под катом.
but1head
11 декабря 2015, 05:06
modx.pro
3 127
+8

pdoFetch поиск в TV-полях с разделителем ||

Наверняка много кто использовал в своей практике TV-поля типа «Список» (множественный, одиночный, не важно) или «Тег». Здесь важно именно то, в каком виде в базе данных хранятся данные таких полей, ведь они сохраняют множественные значения. А хранят они их одной общей строкой в той же самой таблице ТВшек (естественно, по одной записи на один документ). К примеру, если мы отметили три значения 100, 1005, 10, в БД это запишется 100||1005||10. И здесь возникает вопрос как потом выполнить поиск по таким полям? Простой LIKE здесь не поможет, так как LIKE %100%, к примеру, найдет и '100||1000' и '1001||1005'. Данного вопроса мы уже касались здесь и подобный вопрос опять возник здесь.
Fi1osof
06 декабря 2015, 10:14
modx.pro
37
6 096
+16