
bestit
+12
Репутация
11
Рейтинг
Спасибо, помогло!
Спасибо за новую версию и оперативный фикс к ней! Обновился с 2.14.3 вначале на 2.15, затем на 2.15.1
Вроде бы все было нормально, но потом обнаружил предупреждение (при включенном режиме отладки).
Notice: Undefined index: category_id in C:\OSPanel\domains\blago\system\controllers\content\model.php on line 1741
Появляется оно только при отображении записи контента, у которого есть связь с записью другого контента. На родительской записи предупреждения нет. Если связь убрать, предупреждение пропадает. Посмотрел в код и сравнил с 2.14.3, где этого предупреждения на дочерних записях еще не было.
В версии 2.14.3 возвращаемое значение $item не содержало информации о категориях (если я правильно понял $item['category']).
В 2.15.0 появился код, добавляющий данные категории.
Файл: .......\system\controllers\content\model.php
Функция: public function getContentItems($ctype_name, $callback = null)
.....
@1721 $this->select('cat.title', 'cat_title');
@1722 $this->select('cat.slug', 'cat_slug');
@1723 $this->joinLeft($this->getContentCategoryTableName($ctype_name), 'cat', 'cat.id = i.category_id');
......
@1740 $item['category'] = [
@1741 'id' => $item['category_id'], // сюда указывает Notice
@1742 'slug' => $item['cat_slug'],
@1743 'title' => $item['cat_title']
@1744 ];
.....
Перепроверил эту ситуацию, поставив начисто пустую 2.15.1 Добавил по одной записи в два разных контента. Связал записи и получил предупреждение при просмотре дочерней записи. Проверьте пожалуйста.
Версия 2.14.3. Установлена обновлением. Проблемка такая. При использовании шаблона default не работает маска ввода для поля типа «Строковое поле». В документации написано, что используется библиотека Inputmask. Посмотрел в код Instant. В шаблоне modern использование библиотеки есть в коде и jquery.inputmask.min.js размещен в папке шаблона modern. А вот для шаблона default нет ни библиотеки, ни соответствующей части кода в \templates\modern\assets\fields\string.tpl.php
В качестве решения скопировал из modern-а jquery.inputmask.min.js в \templates\default\js\vendors\ и кусочек кода (скрин). Маска ввода в default заработала.