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

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

С нами с 31 января 2013; Место в рейтинге пользователей: #3
Сергей Шлоков
24 апреля 2016, 09:20
0
Добавь в плагин перед addHtml()
$script .= "Ext.getCmp('modx-resource-introtext').setHeight(200);";
Сергей Шлоков
23 апреля 2016, 21:44
0
Комментарии стали добавляться практически мгновенно. Это пых 7 или оптимизация кода так влияет?
Сергей Шлоков
23 апреля 2016, 21:42
0
Нету. Так как решение может быть разное — кому-то нужно ссылку на файл выслать, кому-то просто код, кто-то в ТВ это хранит, кто-то в свойствах товара. Простое универсальное решения я придумать не смог. Да и желания особо не было. Плясать нужно от поставленной задачи. Любая из них решается достаточно просто.
Сергей Шлоков
23 апреля 2016, 20:17
0
Нет ничего проще. В чанке, который высылается пользователю после оплаты (по-умолчанию tpl.msEmail.paid.user), добавить сниппет (или феном), который будет выводить нужную ссылку.
Сергей Шлоков
23 апреля 2016, 11:10
5
+3
Я для себя сделал такой плагин. Сильно не заморачивался. Просто скопировал код из Ace.
<?php
switch ($modx->event->name) {
    case 'OnDocFormPrerender':
        if (!$modx->controller->resourceArray) {
            return;
        }
        $field = 'modx-resource-introtext';
        $mimeType = $modx->getObject('modContentType', $modx->controller->resourceArray['content_type'])->get('mime_type');
        if ($mimeType == 'text/html' && $modx->getOption('pdotools_fenom_parser')) {
            $mimeType = 'text/x-smarty';
        }
		$modxTags = 1;
		$script = "MODx.ux.Ace.replaceComponent('$field', '$mimeType', $modxTags);";
		$script .= "MODx.ux.Ace.replaceTextAreas(Ext.query('.modx-richtext'));";
		$modx->controller->addHtml('<script>Ext.onReady(function() {' . $script . '});</script>');
        break;
    default:
        return;
}
Сергей Шлоков
22 апреля 2016, 11:12
0
Проверяю в тикетах. Если отметить «Отключить Jevix», то rel появляется. Но не хочется отключать. Все кэши чистил и сайта и браузера. Странно как-то.

П.С. В предыдущем комментарии хотел обратить внимание на отсутствие лексикона для двух параметров.
Сергей Шлоков
22 апреля 2016, 08:04
0
Василий, Jevix почему-то вырезает параметр rel у тега a. Все остальные параметры остаются. Настройки такие. Подскажи, как тут настроен тег а.
Сергей Шлоков
22 апреля 2016, 07:55
+2
Потому что в резолвере за установку и обновление отвечают разные блоки.
Я бы посоветовал автору обновить резолвер. Он проверяет текущую модель и автоматически обновляет модель при обновлении компонента (добавляет или удаляет поля таблицы и индексы).
Сергей Шлоков
19 апреля 2016, 19:51
+2
Просто устали уже говорить на эту тему. Это ошибки фенома. Проверяйте фигурные скобки в скриптах. Если есть метрики Яндекса или Гугла, оборачивайте их в тег ignore.
Сергей Шлоков
17 апреля 2016, 08:16
0
Я почему для примера это привёл. Вариант с LIKE имеет свою специфику — он ищет подстроку! Т.е. если надо найти тэг auto, он найдет и super-auto и automoto и т.д.
Сергей Шлоков
13 апреля 2016, 08:29
+1
Заметил что просмотры гостями вообще не срабатывают — видно отсюда и ошибки сыпались.
Конечно. Поэтому я и посоветовал начать с отключения гостей. Ошибка при инсёрте просмотров пользователей с id=0, а это гости.
Странно, что инсёртятся 3 поля, а не 4. Нет поля guest_key. Поэтому в таблицу пишется пустое значение в это поле. А так как оно является частью первичного ключа, то при добавлении второй записи с пустым значением происходит ошибка, так как такой ключ уже есть.
Тут дебажить надо.
Сергей Шлоков
12 апреля 2016, 11:59
+1
Больной, вам нужна операция. Лучше конечно, чтобы главврач глянул :). Но пока давай займемся самолечением. :)
1. Можно попробовать отключить подсчет просмотров гостями. Если не помогло, идем дальше.

2. Можно в плагине Tickets попробовать закомментировать вызов функции $Tickets->logVew(). Очисти журнал ошибок и походи по сайту.

Посмотри структуру таблицы modx_tickets_views. Должно быть так
CREATE TABLE IF NOT EXISTS `modx_tickets_views` (
  `parent` int(10) unsigned NOT NULL DEFAULT '0',
  `uid` int(10) unsigned NOT NULL DEFAULT '0',
  `timestamp` datetime NOT NULL,
  `guest_key` char(32) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- Индексы таблицы `modx_tickets_views`
ALTER TABLE `modx_tickets_views`
 ADD PRIMARY KEY (`parent`,`uid`,`guest_key`);
Это для начала.
Сергей Шлоков
10 апреля 2016, 18:31
0
После долгих размышлений решил вернуться к первоначальному замыслу — оставить oneBooking для простого посуточного бронирования. Больше модулей я писать для него не буду. А используя накопленный опыт и отзывы пользователей сделать другое дополнение, которое будет уметь всё сразу (никаких модулей).
Если я правильно понял, объекты для бронирования находятся в отдельной таблицы.А чтобы добавить описание(отдельную страницу для объекта) его надо связать с ресурсом, это как делается?
В диалоге создания объекта есть поле для связи с ресурсом-продуктом miniShop2. Если его не указывать, то продукт создается автоматически и связывается с объектом. Поэтому не нужно самому создавать ресурсы для каждого объекта. В этом ресурсе можно вызывать сниппеты без указания объекта — он сам подхватится из связи продукт-объект.
Сергей Шлоков
06 апреля 2016, 15:38
0
Забыл еще про возможность добавлять свои поля. Можно создать свое поле «Квартира» или «Адрес».
Сергей Шлоков
06 апреля 2016, 15:37
0
Отдельный ресурс, что подразумевается под этим?
Отдельная страница для каждой квартиры или дома. Если делать всё на одной странице, то придется дописывать логику самому, чтобы при выборе квартиры показывались только соответствующие комнаты.
Если админку видят только админы и модераторы, то это нормально
Это как завести объекты. Если будет 5 записей «Комната 1», то даже админам будет сложно понять для какой квартиры каждая комната.