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

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

Был в сети 06 ноября 2025, 19:54
Заказы не принимаю
Проверяю в тикетах. Если отметить «Отключить Jevix», то rel появляется. Но не хочется отключать. Все кэши чистил и сайта и браузера. Странно как-то.

П.С. В предыдущем комментарии хотел обратить внимание на отсутствие лексикона для двух параметров.
Потому что в резолвере за установку и обновление отвечают разные блоки.
Я бы посоветовал автору обновить
резолвер. Он проверяет текущую модель и автоматически обновляет модель при обновлении компонента (добавляет или удаляет поля таблицы и индексы).
Заметил что просмотры гостями вообще не срабатывают — видно отсюда и ошибки сыпались.
Конечно. Поэтому я и посоветовал начать с отключения гостей. Ошибка при инсёрте просмотров пользователей с id=0, а это гости.
Странно, что инсёртятся 3 поля, а не 4. Нет поля guest_key. Поэтому в таблицу пишется пустое значение в это поле. А так как оно является частью первичного ключа, то при добавлении второй записи с пустым значением происходит ошибка, так как такой ключ уже есть.
Тут дебажить надо.
Больной, вам нужна операция. Лучше конечно, чтобы главврач глянул :). Но пока давай займемся самолечением. :)
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`);
Это для начала.
После долгих размышлений решил вернуться к первоначальному замыслу — оставить oneBooking для простого посуточного бронирования. Больше модулей я писать для него не буду. А используя накопленный опыт и отзывы пользователей сделать другое дополнение, которое будет уметь всё сразу (никаких модулей).
Если я правильно понял, объекты для бронирования находятся в отдельной таблицы.А чтобы добавить описание(отдельную страницу для объекта) его надо связать с ресурсом, это как делается?
В диалоге создания объекта есть поле для связи с ресурсом-продуктом miniShop2. Если его не указывать, то продукт создается автоматически и связывается с объектом. Поэтому не нужно самому создавать ресурсы для каждого объекта. В этом ресурсе можно вызывать сниппеты без указания объекта — он сам подхватится из связи продукт-объект.
Отдельный ресурс, что подразумевается под этим?
Отдельная страница для каждой квартиры или дома. Если делать всё на одной странице, то придется дописывать логику самому, чтобы при выборе квартиры показывались только соответствующие комнаты.
Если админку видят только админы и модераторы, то это нормально
Это как завести объекты. Если будет 5 записей «Комната 1», то даже админам будет сложно понять для какой квартиры каждая комната.
На данный момент разделения по гостиницам нет. Список номеров общий — или в описании указывать где находится или в названии объекта. Пока только так. На сайте разделить их не проблема — отдельных ресурс для каждого дома/квартиры. А вот в админке все номера в общем списке.
В твоем случае вообще нет смысла включать уведомление хоть на почту, хоть в скайп, хоть куда. Зачем тебе в скайте эти мегабайты?
Надо сначала решить проблему. Для начала обновить тикетс.