Вопросы

Ошибка 500 вместо 404

Добрый день.

В интернете по этой проблеме информации не нашел. Заранее спасибо всем за помощь.

При переходе по несуществующему url на сайте вместо 404 — Ошибка 500.

Для 404 страница создана, опубликована, в настройках modx установлен id этой страницы.

В логах
PHP Fatal error:  Call to a member function route() on null in /home/u172172/aprioris.ru/www/core/cache/includes/elements/modplugin/18.include.cache.php on line 31

Файл 18.include.cache.php в котором ошибка
<?php
/**
 * @package visioncart
 */

if ($modx->context->get('key') == 'mgr') {
	switch((string) $modx->event->name) {
		case 'OnBeforeCacheUpdate':
			$modx->cacheManager->refresh(array(
				'visioncart' => array(
					'.php'
				)
			));
			break;
	}
	return false;
}

switch((string) $modx->event->name) {
	case 'OnWebPageInit':
		$corePath = $modx->getOption('visioncart.core_path', null, $modx->getOption('core_path', null, MODX_CORE_PATH));
		$modx->addPackage('visioncart', $corePath.'components/visioncart/model/');
		$modx->visioncart = $modx->getService('visioncart', 'VisionCart', $corePath.'components/visioncart/model/visioncart/', array(
			'method' => (string) (isset($_REQUEST['method']) && $_REQUEST['method'] != '') ? strtolower($_REQUEST['method']) : 'resource',
			'initialize' => 'plugin',
			'context' => (string) $modx->context->get('key'),
			'event' => (string) $modx->event->name
		));
		break;
	case 'OnPageNotFound':
		$modx->visioncart->route(array(
			'method' => (string) (isset($_REQUEST['method']) && $_REQUEST['method'] != '') ? strtolower($_REQUEST['method']) : 'resource',
			'initialize' => 'plugin',
			'context' => (string) $modx->context->get('key'),
			'event' => (string) $modx->event->name
		));
		break;
	case 'OnLoadWebDocument':
		$modx->visioncart->assign(array(
			'method' => (string) (isset($_REQUEST['method']) && $_REQUEST['method'] != '') ? strtolower($_REQUEST['method']) : 'resource',
			'initialize' => 'plugin',
			'context' => (string) $modx->context->get('key'),
			'event' => (string) $modx->event->name
		));
		break;
	default:
		//exit($modx->event->name);
		break;
}
return;
Игорь
15 мая 2019, 14:17
modx.pro
849
0

pdoResources и join по значению TV

Всем привет, нужно загрузить ресурсы, и подтянуть к ним кастомные данные из другого класса. Вроде все просто, но как указать название TV в «join on»?

"on": "modResource.TVarticleСat = Category.id"
dopeless
15 мая 2019, 13:19
modx.pro
2 052
0

Внешняя ссылка на вкладку "Дополнительные поля"

Приветствую.

Ссылка на ресурс в админке выглядит так
domen.ru/manager/?a=resource/update&id=10

Можно ли как-то сделать, чтобы при переходе по ней, мы попадали на вкладку «Дополнительные поля», а не на вкладку «Документ».

Возможно плагин какой-то? Кто-то реализовывал подобное?
Благодарен за любую помощь. Спасибо.
Глеб
15 мая 2019, 12:37
modx.pro
1 065
0

EasyPoll - многовариантный опрос

Добрый день! Подскажите как реализовать опрос, как на картинке с помощью модуля EasyPoll
Александр
15 мая 2019, 09:49
modx.pro
1 007
0

Ошибка в логах

Добрый день! Подскажите пожалуйста в чем может быть причина этих ошибок?
Дмитрий
14 мая 2019, 19:59
modx.pro
1 399
-1

phpStorm. Пути на локальном и удаленном сервере, возможно ли менять при синхронизации?

Всем доброго времени суток! Прошу помощи у знатоков phpStorm.

Есть развернутый проект на локальном сервере. Необходимо его синхронизировать или просто выгрузить на удаленный сервер. Deployment настроил — все коннектится и работает. Вопрос вот в чем: возможно ли при синхронизации заставить phpStorm менять пути в файлах и как это сделать?

Т.е. к примеру в ModX есть файлы-конфиги с путями:
define('MODX_CORE_PATH', '/Volumes/Server/htdocs/site/public_html/core/');
нужно, чтобы при выгрузке на сервер путь менялся на:
define('MODX_CORE_PATH', '/home/site/public_html/core/');
И в обратном направлении тоже.

Кто как синхронизирует локальный и удаленный сервер при условии, что базовые пути у них разные?

Спасибо.
Евгений
14 мая 2019, 16:41
modx.pro
2 118
0

Проверка на заполненность одного из двух полей formit ajaxform

Приветствую!

Используется formit с обёрткой ajaxform. Появилась задача проверять на заполненность не каждое поле отдельно, а допустим два поля, и какое-то из них обязательно должно быть заполнено, в противном случае выводить ошибку.

В документации formit почитал про кастомные валидатлры. Они они ведь работают с каждым полем отдельно. Как можно решить данную задачу? Насколько я понимаю, надо ловить весь массив $_POST, но как и в какой момент?
Скаут
14 мая 2019, 16:14
modx.pro
1
1 326
0

Jevix преобразует в ссылки не то, что надо

Добрый день.
Суть. Пытаюсь реализовать замену ссылок в тексте тиккета (статьи) на видео с ютуб вида (https://youtu.be/xxxxxxxx) на iframe открывающийся по клику на картинку подкачанную с ютуба. Нужно это для увеличения скорости загрузки страницы, т.к. открытие (загрузка) видео происходит только после клика на картинку.
Борис И
14 мая 2019, 15:58
modx.pro
1 123
0

Размер папки кеша pdotools

Папка «core/cache/default/pdotools» сколько должна весить?
На одном сайте она занимает больше гигабайта. Это нормально вообще?
На других сайта с точно такими же настройками кеш 2-4 Мб занимает.

Куда смотреть чтобы определить в чем дело?
Николай
14 мая 2019, 14:33
modx.pro
1 124
0

Как подружить PageBreaker и makeContents для автоматической генерации оглавлений?

Всем привет.
Есть такой плагин для разбивки длинных текстов на виртуальные страницы — PageBreaker.
А еще есть сниппет для автоматической генерации оглавлений — makeContents.
Dmytro Bochkov
14 мая 2019, 13:33
modx.pro
849
0