Сергей Шлоков

Сергей Шлоков

С нами с 31 января 2013; Место в рейтинге пользователей: #3
Сергей Шлоков
31 марта 2016, 10:11
0
Тогда остается такой вариант
case xPDOTransport::ACTION_UNINSTALL:
      $c = $modx->prepare('DROP TABLE modx_****');
      $c->execute();
      break;
Сергей Шлоков
31 марта 2016, 09:25
0
Странно, у меня работало без ошибок. Проверим.
Можете сделать проще.
// Поменяйте modExtra на свой
$modelPath = $modx->getOption('modextra_core_path', null, $modx->getOption('core_path') . 'components/modextra/') . 'model/';
$modx->addPackage('modextra', $modelPath);
$manager->removeObjectContainer('Имя класса');
За удаление чанков отвечает настройка. Поставьте true. Видите, у сниппета ниже стоит true, поэтому они обновляются и удаляются. Если не хотите, чтобы чанки у пользователя обновлялись при обновлении компонента, то придется удалять их вручную
case xPDOTransport::ACTION_UNINSTALL:
    $chunk = $modx->getObject('modChunk', array('name'=>$chunkName));
    $chunk->remove();
    ...
Сергей Шлоков
31 марта 2016, 09:13
0
Ну тоже самое же написано, только запись сокращенная. Ровно ничего не изменится, кроме размера записи. Это как использовать тернарный оператор, вместо классического условия.
Ну да, ну да.
{private message}
Сергей Шлоков
30 марта 2016, 21:49
+1
Николай, боюсь, что вашего плюса (если он ваш) я не заслужил, так как положительно я говорил только про ту часть, которую придумал Василий. А ваша реализация вызывает смешанные чувства. Сниппет лучше заменить. Например, на такой
if ($modx->user->isAuthenticated()) {
	// Сохранить название компании
	$modx->user->Profile->set('company_name',$companyName);
	$modx->user->save();
	// Получить название компании
	return $modx->user->Profile->get('company_name');
}
Правка ExtJs исходников решает задачу до первого обновления. Лучше сделать свой скрипт и подключать его используя вариант Григория.
Тогда это будет готовое решение.
Сергей Шлоков
30 марта 2016, 20:39
0
я планирую использовать определенные поля для сортировки
Ну о данных планах в статье ничего не написано. Для хранения компании достаточно extended.
Конечно предложенный вариант расширения таблицы пользователей гораздо лучше, чем TV или extended.
Сергей Шлоков
30 марта 2016, 20:11
+1
Вообще-то DELETE FROM удаляет не таблицу, а записи из указанной таблицы. В modExtra есть код для удаления таблицы.
Сергей Шлоков
30 марта 2016, 20:02
0
Никак. Если только через него подключить свой javascript.
Сергей Шлоков
30 марта 2016, 19:59
0
Для описанной задачи вполне хватит поля extended из коробки.
Конкретно это решение недоработанное. Вы про проблемы с обновлением помните?
Сергей Шлоков
30 марта 2016, 08:45
+2
Никто же не заставляет покупать. Всегда есть альтернатива.
Сергей Шлоков
30 марта 2016, 08:37
0
Не доработано в плане безопасности. Я вот взял и отключил просмотр пользователей.
Сергей Шлоков
30 марта 2016, 08:36
0
Я тоже планировал, только для бэкенда.
Сергей Шлоков
29 марта 2016, 23:21
0
&where=`{"UNIX_TIMESTAMP(date):<=":"[[!filtr]]"}`
Сергей Шлоков
29 марта 2016, 20:26
0
Теоретически, я могу как пользователь ПО производного от MODx подать в суд магазин и отсудить энную сумму у магазина за нарушение магазином моих прав по лицензии GPL :-). К счастью, русская правовая система до таких извращений еще не дошла.
НУ можно попробовать разбогатеть на исках к extras.io и modmore.com.
Сергей Шлоков
29 марта 2016, 18:26
+1
Пожалуйста.
Думаю, было бы удобно, если бы это работало, так сказать, из коробки. Наверно, надо добавить это в modExtra.
Сергей Шлоков
29 марта 2016, 16:32
1
+1
Да, забыл, нужно еще в коннекторе заменить первую строчку на следующее условие
if (file_exists(dirname(dirname(dirname(dirname(__FILE__)))) . '/config.core.php')) {
    require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/config.core.php';
}
else {
    require_once dirname(dirname(dirname(dirname(dirname(__FILE__))))) . '/config.core.php';
}
Сергей Шлоков
29 марта 2016, 14:38
+2
Настройки namespace нужны для лексиконов. А для того, чтобы загружались файлы из нужной папки необходимо добавить 2 системные настройки
test_assets_url = /test/assets/components/test/
test_core_path = {base_path}test/core/components/test/
В вашем случае они будут грузиться из папки /test/assets/... и /test/core/...
Сергей Шлоков
26 марта 2016, 12:28
0
Супер.

Вот тут опечатка
json_encode (fromJSON), json_decode (fromJSON)
Сергей Шлоков
25 марта 2016, 14:37
0
Да, залез в код, вижу разницу
case '+':
     if (isset($this->modx->placeholders[$innerTag])) {
	$output = $this->modx->placeholders[$innerTag];
	$processed = true;
    }
    break;
Поэтому сам пользуюсь pdoTools и другим советую.

П.С. А почему письма приходят на английском?
Сергей Шлоков
25 марта 2016, 14:14
+1
Зато эффект от омолаживающих и водных процедур будет максимальным.
Вот компенсация. :)