Вопросы

Не смог найти нигде документации по таблицам Tickets

Ребята, не смог найти нигде документации по таблицам Тickets. Если есть у кого что — делитесь. Показываю, что сам связал (поправьте). По сути тикеты — это ресурсы, которые создаются в секции тикетов, чтобы быть к ней привязанными. Ну, а к ним привязываются комменты и все остальное.
Табл. tickets_authors			
	id				id пользователя
	rating
	createdon
	visitedon
	tickets			кол-во созданных тикеров
	comments		
	views			кол-во просмотров указанных тикеров
	votes_tickets
	votes_comments
	stars_tickets
	stars_comments
	votes_tickets_up
	votes_tickets_down
	votes_comments_up
	votes_comments_down
	properties

Табл. tickets_author_actions	
	id			id тикета
	action		действие пользователя
	owner		id пользователя
	rating
	multiplier
	ticket		id тикета
	section		id секции
	createdby
	createdon
	year
	month
	day
 
Табл. tickets_comments		
	id			id комментария
	thread		уник. id в табл.tickets_threads
	parent		предыдущий коммент id
	text
	raw
	name
	email
	ip
Вадим
22 ноября 2019, 17:58
modx.pro
898
0

Смена шаблона через плагин

Добрый день, что-то не получается разобрать со сменой шаблона через плагин при загрузке страницы

case 'OnLoadWebDocument':
		$id = $modx->resource->get('id');
		$resource = $modx->getObject('modResource',$id);
		$resource->set('template', 4);
		$resource->save();
break;
Шаблон меняется в админке и все бы хорошо, на на странице сайта указанный шаблон применяется только после второго захода, т.е получается, что смена шаблона происходит после отображения страницы.

В чем проблема, надо вызывать плагин не для OnLoadWebDocument? или в чем-то другом проблема?
Ilya Ev
22 ноября 2019, 16:01
modx.pro
1
2 506
0

Способы командной работы с использованием Git. Поделитесь опытом.

Добрый день.
Всегда работал один и никогда не испытывал необходимости в инструменте контроля версий, особенно в контексте командной работы.
Для общего развития я конечно знакомился с git, консольными командами, ветками, решением конфликтов и прочим. (cкажем так, на крепкую троечку.)
Но попытки использовать это в работе, просто ради того лишь бы было, приводили скорее к усложнению процесса. (чего только стоит история, когда я с трудом наладил работу с кодом через github для одного сайта, а через пару месяцев все перестало работать и только через время заказчик признался, что мол ему захотелось что-то изменить, а у него же племянник учится на программиста, она дал доступы к фтп, тот что то делал, но ничего не вышло и решили никому и не говорить. Так что и так бывает.)
Ну и вот теперь наверное третий подход и попытка понять, как же этим люди пользуются и почему считают удобным.
Я опишу то, как я вижу процесс работы одновременно двоих разработчиков над одним проектом и почему мне это кажется «странным» и не жизнеспособным, а вы исправьте меня пожалуйста и поделитесь своим опытом.
Есть некий сайт, который уже работает и доступен пользователям (site.com)
Есть его копия, не доступная пользователям (dev.site.com)
Есть Programmer1 и Programmer2. В одно чудесное утро они получают задачу — на site.com нужен функционал Промокод для заказа и Гибкое управление скидками. Один берет одно, другой — другое.
Александр Мельник
22 ноября 2019, 11:00
modx.pro
1
1 199
0

Можно ли изменить стоимость заказа перед переходом к оплате?

Приветствую!
Подскажите, есть ли способ изменить стоимость заказа (а лучше доставки отдельно), перед переходом к оплате (после того, как пользователь нажал «Сделать заказ!»? Сколько искал, не нашёл в сети похожих примеров.
Овчинников Егор Эдуардович
modx.pro
2
1 136
0

Запрос c where в Fenom

Привет сообществу
Подскажите, есть ли способ прописать условие выборки на Fenom? В частности, как реализовать:
'where'=>'{
«NameTag.alias»: "{$.get.tag}"
}',
Fenom упорно не видит {$.get.tag}
Сергей
21 ноября 2019, 20:40
modx.pro
967
0

Определить мобильное устройство

Нужно изменять контент, если идет отображение на моб устройстве. Как это лучше делать в рамках данной CMS?

Спасибо!
Sergey
21 ноября 2019, 14:55
modx.pro
650
0

MODX пустая админка - is not defined [РЕШЕНО]

Роман
21 ноября 2019, 14:10
modx.pro
3 566
0

[Решено]: pdoResources &where сортировка по дате

Уж сколько копий изломано по этому параметру(а прежде и по &tvFilters), вот очередная похожая проблема,
все что мог выискал, вычитал, в ядро дальше копать? Подскажите, чего я не вижу.

Есть события, у каждого в двух TV — время начала и окончания события. Как известно, они хранятся не в timestamp. Нужно выводить только те, у которых дата завершения еще не наступила.

В тестируемом контейнере событий всего 10, и только одно еще не завершилось.Сниппет currentDate возвращает просто метку времени через time().

Вызов сниппета:
{'!pdoResources' | snippet : [
	'select' => '{"modResource":"id,pagetitle"}',
	'tpl' => 'marketEventTpl',
	'level' => '1',
	'limit' => '100',
	'tvPrefix' => '',
	'includeTVs' => 'EventStart,EventEnd',
	'templates' => '17',
	'sortby' => '{"EventStart":"ASC"}'
	'where' => 'UNIX_TIMESTAMP(EventEnd) > "[[!currentDate]]"'
	'showLog' => '1'
]}
Лог результата:
0.0000610: pdoTools loaded
0.0000160: xPDO query object created
0.0004399: Included list of tvs: EventEnd, EventStart
0.0001340: leftJoined modTemplateVarResource as TVeventend
0.0001180: leftJoined modTemplateVarResource as TVeventstart
0.0000529: Added selection of modResource: `id`, `pagetitle`
0.0000050: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `EventEnd`
0.0000041: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `EventStart`
0.0000520: Replaced TV conditions
0.0003431: Processed additional conditions
0.0005569: Added where condition: 0=UNIX_TIMESTAMP(`TVeventend`.`value`) > "1574334058", modResource.parent:IN(8,29,286,310,311,312,292,313,314,315,293,308,309), modResource.template:IN(17), modResource.published=1, modResource.deleted=0
0.0000060: Replaced TV conditions
0.0001009: Sorted by CAST(`TVeventstart`.`value` AS DATETIME), ASC
0.0000021: Limited to 100, offset 0
0.0001509: SQL prepared "SELECT `modResource`.`id`, `modResource`.`pagetitle`, IFNULL(`TVeventend`.`value`, '') AS `EventEnd`, IFNULL(`TVeventstart`.`value`, '') AS `EventStart` FROM `modx_site_content` AS `modResource` LEFT JOIN `modx_site_tmplvar_contentvalues` `TVeventend` ON `TVeventend`.`contentid` = `modResource`.`id` AND `TVeventend`.`tmplvarid` = 149 LEFT JOIN `modx_site_tmplvar_contentvalues` `TVeventstart` ON `TVeventstart`.`contentid` = `modResource`.`id` AND `TVeventstart`.`tmplvarid` = 148 WHERE  ( UNIX_TIMESTAMP(`TVeventend`.`value`) > "1574334058" AND `modResource`.`parent` IN (8,29,286,310,311,312,292,313,314,315,293,308,309) AND `modResource`.`template` IN (17) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 )  ORDER BY CAST(`TVeventstart`.`value` AS DATETIME) ASC LIMIT 100 "
0.0012290: SQL executed
0.0000150: Rows fetched
0.0012670: Prepared and processed TVs
0.0005660: Loaded "modChunk" with name "marketEventTpl"
0.0079620: Compiled Fenom chunk with name "modchunk/8"
0.0120490: Returning processed chunks
0.0162890: Total time
8 388 608: Memory usage
Выводит все 10. Удивительно то, что если скормить формируемый SQL запрос напрямую в базу, получаем желаемый один результат!
Антон Тарасов
21 ноября 2019, 14:08
modx.pro
1
1 545
0

large01.jpg: Передан пустой файл в галерее

Добрый день.
Подскажите как исправить?
ms2: large01.jpg: Передан пустой файл в галерее
php 5.4.16 (native)
egor
21 ноября 2019, 13:15
modx.pro
960
0

msMCD - как вывести размер в миникорзине?

Приветствую!
Разработчик не отвечает в тех поддержке, решил спросить здесь.

Может кто сталкивался с проблемой вывода размера товара в миникорзине?
Сделал так
{$item.options}
, ничего не выводиться, хотя в документации указано что options по умолчанию можно использовать. В системных настройках я его добавил.

Вот снипет
{'!msMCDMiniCart' | snippet: [
                                            'img' => 'small',
                                            'tpl' => 'msMCDMiniCartRowTpl-2',
                                        ]}
Заранее спасибо!
antonlynin
21 ноября 2019, 12:38
modx.pro
1 253
0