Обновление InstantCMS 2.8.1

Зачастили мы что-то :)

Здравствуйте, друзья!

Новый релиз не столь глобальный, но мы спешили скорее им с вами поделиться. Причин несколько, во-первых, это, наконец-то, интегрированный в админку каталог дополнений, а во-вторых, накопилось не мало правок кода по улучшению и исправлению недочётов в вами всеми любимой CMS ;-)

Каталог дополнений в админке

Конечно же, главным новшеством и удобством в этом релизе стал интегрированный в админку каталог дополнений. Все бесплатные дополнения вы сможете устанавливать сразу же из админки в пару кликов. Каталог имеет список категорий, наборов как на официальном сайте, поиск по названию и фильтр по разделению на платные/бесплатные дополнения.

Каталог умеет отслеживать версии установленных дополнений, предлагать обновиться, если выпущена новая. Во вкладке "Установленные" вам будут показаны все установленные через каталог пакеты, однако стоит отметить, что на данный момент это только виджеты и компоненты.

Для каждого дополнения показано его краткое и полное описания, рейтинг, количество скачиваний или подписчиков, дата последней версии и совместимость с вашей версией InstantCMS.

Работа по улучшению как сайта дополнений, так и каталога в админке будет вестись и далее, вы можете смело предлагать здравые предложения по улучшению.

Рекомендации разработчикам дополнений

Уже многие заметили, что в нашем каталоге дополнений появилась ссылка "Актуальные", а при добавлении/редактировании дополнения появилась возможность указать поддерживающие версии InstantCMS. С выходами каждого обновления InstantCMS, в этой опции будет появляться новая версия InstantCMS. Мы рекомендуем разработчикам проверять совместимость и указывать её, поддерживая свои дополнения актуальными.

Мы крайне рекомендуем собирать пакеты согласно документации, указывать корректно тип дополнения и НЕ писать без явной на то необходимости в установочном install.sql запросы, касающиеся внесения виджетов и/или компонентов в соответствующие таблицы. При этом, CMS всё же постарается автоматически определить такие, не совсем корректные пакеты и скорректировать установку. В случае с типизацией пакетов, все эти действия будут выполнены автоматически. Однако, могут быть пакеты, которые включают в себя и компонент и виджеты. В таких случаях пакет должен типизироваться как компонент, а таблицы виджетов уже заполняться вручную написанием запросов в install.sql.

Важно! При добавлении версии дополнения указывайте номер версии точно также, как пишите в файле манифеста пакета.

Также, обратите внимание на блок info - там добавлена новая строка, где можно указывать id вашего дополнения в официальном каталоге. Крайне рекомендуем заполнять эту строку.

Улучшение установщика пакетов

В установщике теперь можно помимо загрузки файла пакета, указывать ссылку на его скачивание. Изменился и механизм удаления компонентов и виджетов, кстати, да, мы добавили непосредственно функционал удаления виджетов. Теперь при установке виджетов и компонентов в базе данных фиксируется весь набор файлов дополнения. Для компонентов вы в любой момент можете посмотреть его дерево файлов, кликнув на соответствующую иконку в списке компонентов в админке. Также, при удалении виджетов и компонентов, CMS вам любезно подскажет, какие файлы нужно удалить, т.к. у самого движка нет и не должно быть доступа для операций по изменению/удалению файлов вне директорий загрузки и кэша.

На странице ввода параметров FTP при установке дополнений мы добавили функционал проверки соединения, который всегда подскажет ошибки и дерево файлов и каталогов корня соединения, что убирает все трудности с указанием путей до директории с установленной InstantCMS.

Прочие изменения

  • традиционное, постепенное улучшение юзабилити админки;
  • форма опций настроек типов контента теперь более компактная и менее "пугающая";
  • виджет "Список пользователей" теперь может выводить заданные поля профилей;
  • исправлена ошибка с Chosen;
  • большая часть GIF спиннеров/лоадеров заменена на CSS3 аналоги;
  • метод ядра getWidgetOptionsForm перенесен во фронтэнд админки, для формы в целом добавлен хук "widget_options_full_form";
  • исправлена неверная ссылка на модерацию комментариев в письме;
  • при удалении пользователя (при удалении им самим), его активность скрывается из общего списка;
  • механизм управления группами при добавлении/редактировании записи типа контента вынесен в хуки компонента "Группы";
  • исправлена проблема с виджетом "Фильтр контента" в части определения категории. Теперь свойства будут показываться корректно;
  • исправлена ссылка на пагинацию в разделе модерации;
  • исправлено удаление просроченных записей из корзины;
  • по ссылке /photos теперь показываются все фото из всех альбомов;
  • каждый виджет теперь можно привязать к своему файлу лайоута;
  • улучшен механизм кэширования на файлах;
  • переписан и исправлен механизм работы кеширования Memcache: теперь сайты на одном сервере не будут пересекаться;
  • окончательно исправлена работа виджетов на страницах типа контента, указанного по умолчанию;
  • в права для компонента "Группы" добавлено правило "Управление правами добавления контента";
  • библиотека GeSHi обновлена до актуальной версии и корректно работает на PHP7;
  • библиотека PHPMailer обновлена до актуальной версии;
  • исправлены мелкие ошибки и неточности.

Изменения в шаблонах

В шаблонах в основном все изменения носят либо эстетический характер, либо дополняющий. Вам нужно сделать мерж (например так) css файлов, чтобы оценить изменения (например вот так).

Как установить обновление

Перед началом обновления обязательно сделайте резервную копию своего сайта и дамп базы данных. Обновляться лучше на копии сайта, поднятом локально на ПК или иным подобным способом. Мы не несем никакой ответственности за любые потери данных, произошедшие в результате неправильных действий при обновлении.

Отключите кеширование в настройках сайта.

Если вы используете свой шаблон и в нем есть файлы, присутствующие в пакете обновления, то обновите их.

При возникновении "белого экрана" категорически читать здесь.

Для тех, у кого свой шаблон мы подготовили статью как быть, если в обновлении CMS есть изменения в шаблоне, рекомендуем к прочтению.

Автоматическая установка

  1. Включите режим отладки в админке.
  2. Воспользуйтесь функцией "Проверить обновления" в панели управления InstantCMS 2.
  3. Система сама обнаружит обновление, предложит скачать его и установить.
  4. Для установки потребуется указать реквизиты для доступа по FTP.

Ручная установка

Убедитесь, что вы используете InstantCMS 2.8.0 (версию можно посмотреть внизу любой страницы в админке или на главной странице админки в соответствующем блоке).

  1. Включите режим отладки в админке;
  2. Загрузите архив с обновлением.
  3. Перейдите в панель управления сайтом;
  4. Перейдите в раздел компоненты;
  5. Нажмите установить пакет дополнения;
  6. Очистите кеш браузера;
  7. Сверните окно браузера;
  8. Все содержимое папки package из архива обновления, скаченного в п.1 загрузите в корень вашего сайта;
  9. Вернитесь в свернутое в п. 5 окно браузера, нажмите F5 на клавиатуре и выберите архив, который вы скачали в п.1;
  10. На странице «Информация о пакете» нажмите установить;
  11. На странице ввода реквизитов ftp поставьте чекбокс "Пропустить этот шаг" и нажмите "Установить";
  12. Выключить режим отладки в админке;
  13. Обновление завершено.

Заключение

Спасибо всем, кто указывал на ошибки, писал пожелания на GitHub и предлагал решения.

Если кто-то не нашел в этом релизе то, что давно ждёт - не отчаиваетесь, наверняка в новых релизах и ваши пожелания будут реализованы, всего лишь вопрос времени. Ну а кому совсем не терпится с внедрением нужного, на ваш взгляд, функционала - мы открыты к мотивированным доработкам.

Спасибо, что выбираете InstantCMS!

 

Поддержать проект | Стать спонсором | Скачать InstantCMS

Комментарии (125)
lesterkey 7 сентября 2017 в 16:17 0
small user social cms
dance Вот это новость!!!
lakomet 7 сентября 2017 в 16:30 0
small user social cms
Спасибо. По каталогу дополнений в админке, есть много предложений, может создадите отдельную тему на форуме? Чтоб здесь потом не выискивать эти предложения.
Fuze 7 сентября 2017 в 17:57 +2
small user social cms
Вы можете сами создать такую тему, почему нет.
letsgo 7 сентября 2017 в 16:31 0
small user social cms
Спасибо Fuze и всем кто помогали. Заметил, что и мои пожелания учтены. В целом большой набор улучшений.
Денис Васильевич 7 сентября 2017 в 16:32 0
small user social cms
Спасибо! )
Zau4man 7 сентября 2017 в 16:38 +2
small user social cms
Поздравляю всех новым релизом! Ура-ура-ура!!!
Денис Васильевич 7 сентября 2017 в 16:55 0
small user social cms
Ура! ))
letsgo 7 сентября 2017 в 16:41 +2
small user social cms
Думаю, было бы неплохо обдумать добавление Instantcms в репозитарий ISP 5 в быструю установку скриптов.
Fuze 7 сентября 2017 в 17:07 0
small user social cms
Боюсь это не от нас зависит, они же решают что туда добавить.
letsgo 7 сентября 2017 в 17:58 +3
small user social cms
Там список уже большой, могу списаться с ними и спросить, так и сделаю. Когда напишут что надо - отправлю в личку, там уже сделаете.
Fuze 7 сентября 2017 в 18:32 +1
small user social cms
Окей, жду. Если это не великая бюрократия, с удовольствием интегрируемся.
Dorimen 18 сентября 2017 в 12:04 0
no avatar
letsgo, получилось сделать что-то в этом направлении? тоже заинтересован в таком решении. если Вы не занимались, то я смогу попробовать с ними переговорить
letsgo 18 сентября 2017 в 13:35 0
small user social cms
Я им отправил письмо, жду ответ. Вероятно отправлю еще одно, неплохо если и вы напишете им. Но писать надо именно в кабинете ISPSystem а не хостера своего.
Dorimen 18 сентября 2017 в 13:36 0
no avatar
Понял. Тоже напишу. Спасибо.
Александр Сергеевич 18 сентября 2017 в 12:02 0
small user social cms
Я об этом с ними ещё два года назад разговаривал. Им нужно какой-то установочный файл сделать, в их спец формате, и делать это должен разработчик, а не они.
F_a_R_i_D 7 сентября 2017 в 17:01 0
small user social cms
При обновлении
F_a_R_i_D 7 сентября 2017 в 17:01 0
small user social cms
Fuze 7 сентября 2017 в 17:06 0
small user social cms
Такое поле не создаётся при обновлении. Очистите папку /upload/install и повторите попытку.
Evanescence 7 сентября 2017 в 17:07 0
small user social cms
Спасибо, много чего полезного добавили.
@SmartControl 7 сентября 2017 в 17:10 0
small user social cms
Спасибо, шикарное обновление.

Как-будто при обновлении компонента addon_id не записывается в базу данных (и компонент не помечается установленным)
Fuze 7 сентября 2017 в 17:24 0
small user social cms
Прочитайте пожалуйста раздел "Рекомендации разработчикам дополнений", укажите в своем манифесте addon_id согласно документации.
@SmartControl 7 сентября 2017 в 17:34 0
small user social cms
addon_id не обновляется
Fuze 7 сентября 2017 в 17:49 0
small user social cms
При обновлении - да, не обновляется. Невнимательно прочитал вас.
@SmartControl 7 сентября 2017 в 17:25 0
small user social cms
Да, проверил еще раз все. Обновляю компонент руками. закидываю файл с пакетом. В пакете указан addon_id, но он не записывается в БД.

Кину по пунктам:

1. Время последнего обновления некорретное " Последнее обновление: 17 часов назад " - на самом деле обновил только что. Понял почему.. Видимо в каталоге не пишутся часы-минуты-секунды. И 17 часов это от полуночи.

2. Я не могу обновить компонент, который у меня уже установлен. При "установке" через сервис запускаются запросы из install.sql из пакета и выскакивает ошибка (логично). А при установке руками не записывается addon_id. Пока решение вижу только если руками записать addon_id в БД. Может есть вариант сделать так, что если компонт уже установлен, то загружать обновление, а не установку с нуля?

3. При установке из каталога появляется форма для выбора файла либо указания URL - на самом деле ничего указывать не нужно, потому что установка с каталога.
skewes 7 сентября 2017 в 18:28 0
small user social cms
Fuze:
Зачастили мы что-то :)
Это не то слово! shock
Вы просто "издеваетесь" (в хорошем смысле этого слова) zst
Я в шоке!!! Опять обновление! crazy
Красавчики ребята! Респект! v v v
DeeMon 7 сентября 2017 в 18:33 0
small user social cms
Обновил два сайта без проблем. Теперь шаблоны надо править...
SE7EN 7 сентября 2017 в 18:34 0
small user social cms
просветите пожалуйста неуча: после обновления с включённым режимом отладки получид вот это
Notice: Undefined index: template_layouts in C:\OpenServer\domains\aksucity.info\system\controllers\widgets\model.php on line 351
Fuze 7 сентября 2017 в 18:38 +1
small user social cms
Судя по всему, вы просто заменили файлы, без установки пакета в админке.
@SmartControl 7 сентября 2017 в 18:40 0
small user social cms
кэш обновить не помогает?
SE7EN 7 сентября 2017 в 18:52 0
small user social cms
нет
SE7EN 7 сентября 2017 в 19:38 0
small user social cms
просветите пожалуйста неуча: после обновления с включённым режимом отладки получил вот это Notice: Undefined index: template_layouts in C:\OpenServer\domains\aksucity.info\system\controllers\widgets\model.php on line 351

несколько раз пробовал обновляться все-равно песня таже (((
islyaeFF 7 сентября 2017 в 19:39 0
small user social cms
Обновился без проблем. Спасибо!
Timmy 7 сентября 2017 в 20:39 0
small user social cms
Спасибо! Особенно за каталог дополнений!
fincheck 7 сентября 2017 в 22:20 0
no avatar
Извиняюсь, а за проезд куда платить?
vikont 7 сентября 2017 в 22:51 0
small user social cms
Сайт обновился без проблем!
А вот дизайн Каталога дополнений явно хромает... или так и должно пока быть?
https://yadi.sk/i/6_degGT23MhKRP
@SmartControl 7 сентября 2017 в 23:11 +1
small user social cms
Кэш, ctrl + f5
vikont 7 сентября 2017 в 23:15 0
small user social cms
Не помогает. Даже с другого браузера зашел... та же картина..
Fuze 7 сентября 2017 в 23:22 +2
small user social cms
Переключите шаблон админки на дефолтный. Или в своем шаблоне удалите папку template/шаблон/controllers/admin/
vikont 8 сентября 2017 в 00:19 0
small user social cms
СПАСИБО!!!!! Заработало! Что еще надо удалить со своего шаблона???
Похоже за 2 года наросло всякого добра мешающего нормальной работе....
@SmartControl 8 сентября 2017 в 07:46 0
small user social cms
за два года вышли версии 2,3.........2,81 - тут только мержить файлы) В первом посте есть про это информация в блоке " Изменения в шаблонах"
islyaeFF 8 сентября 2017 в 00:32 0
small user social cms

не кликабельны кружочки. Кликабельны только лейблы
По привычке тыкал, думая, что это радиобаттон smile
vikont 8 сентября 2017 в 01:29 0
small user social cms
Прикольно! Пока я не удалял папку admin из своего шаблона template/шаблон/controllers/admin/ радиокнопки были кликабельные!
Значит что то надо вернуть из дефолтного шаблона в свой. Хотя админка и так на дефолтном.
Cтудия Sitestroi 8 сентября 2017 в 00:48 0
small user social cms
Кто ставил с ноля?
При установке пишет

Хотя на папку стоят права 777 sad
Cтудия Sitestroi 8 сентября 2017 в 00:53 0
small user social cms
Проблема в кеше браузера.
Спасибо за очередную версию smile
ermakover 8 сентября 2017 в 07:12 0
small user social cms
Спасибо авторам движка за быстрое исправление недочётов и ошибок.

Это как урок некоторым разработчикам дополнений, которые деньги берут, а потом либо месяц прячутся и ещё угрожают недовольным обновления не посылать, либо прячутся насовсем хотя их "поделки" после обновления перестали работать.
Dorimen 8 сентября 2017 в 09:43 0
no avatar
Подскажите, пожалуйста, а раньше была такая замечательная опция в Инстант2 - выводить в случае пустой аватарки цветную подложку и букву? Почему-то она в последних версиях по-умолчанию выключена и не ясно как ее включить ) Спасибо.
ermakover 8 сентября 2017 в 09:57 +2
small user social cms
..\system\libs\template.helper.php

Строка 254
function html_avatar_image($avatars, $size_preset='small', $alt='', $is_html_empty_avatar=true){
@Однако@ 8 сентября 2017 в 12:06 0
no avatar
Спасибо за обновление. Мне бы такую работоспособность.
Кто ставил эту версию ответьте пожалуйста
1. не появился ли вывод в фильтре поля цвет?
2. есть ли ограничение на создание групп (которые сообщества). Например позволить пользователям создавать только по одной группе? Не могу найти такую настройку.
Пожалуйста если не трудно ответьте кто может, сейчас нет возможности поставить движок и проверить. Спасибо.
Олег Васильевич я 8 сентября 2017 в 13:24 0
small user social cms
Подскажите, пожалуйста, для шаблона (только шаблон, без компонента) в манифесте пакета дополнения блок [install] или [update], не нужно указывать?
Я правильно понимаю?
yury 8 сентября 2017 в 16:16 0
no avatar
Странно, обновился. В настройки, компоненты, установку компонентов, настройку компонентов, типы контента - дает входить и редактировать.

А вот в виджеты, пользователи, контент - выдает 500 ошибка. Включал отладку, но она не показывает все равно. Выдает также 500 ошибку.
yury 8 сентября 2017 в 20:57 0
no avatar
разобрался. был удаленный компонент сеопейдж, но файлы остались на сервере. все ок теперь!
@mrdan 8 сентября 2017 в 21:28 0
small user social cms
Дорогие друзья. Вы просто крассавчики! Продолжайте в том же духе!
ermakover 8 сентября 2017 в 22:30 0
small user social cms
Кнопка "Показать больше" появилась в фотографиях, в дополнениях в админке, эх такую бы к любому типу контента в списки вместо пагинации cry
@SmartControl 8 сентября 2017 в 22:38 +2
small user social cms
Вместо нельзя иначе страницы выпадут из индекса. Нужно совместить - чтобы для поисковых ботов обязательно осталась обычная пагинация.
ermakover 8 сентября 2017 в 23:06 0
small user social cms
Я заметил, что страницы списков такого типа: https://site.ru/board?page=* в вебмастере Яндекс не считает значимыми и даже удаляет из индексации.
Яндекс интересуют именно страницы единиц контента или категория контента. Так как у меня объявлений очень много, я даже закрыл в робот.тхт ссылки https://site.ru/board?page=* для каждой категории.
Может я и не прав, но вроде как пока всё ОК с индексацией.
Fuze 9 сентября 2017 в 00:06 +1
small user social cms
Этак кнопка для фото появилась не в этом релизе, а существенно раньше.
@SmartControl:
Вместо нельзя иначе страницы выпадут из индекса. Нужно совместить - чтобы для поисковых ботов обязательно осталась обычная пагинация.
Дело всё в том, что указанная кнопка для пагинации фото формируется при помощи js, заменяя обычный пагинатор, более того, если вы перейдете по ссылке ?page=2, ту увидите несколько иное в пагинаторе. Иными словами всё сделано продумано.
ermakove:
Так как у меня объявлений очень много, я даже закрыл в робот.тхт ссылки
Всё таки читать много SEO форумов это зло, мера и понимание того, что, зачем и для чего делается должно же присутствовать) Если Яндекс и так определяет, что ему значимо, а что нет (что кстати вызывает много вопросов и не отменяет другие ПС), зачем его еще и на мысль наталкивать?)
Закройте весь сайт в роботс, кроме главной страницы, что уж там smile
vikont 9 сентября 2017 в 02:09 +1
small user social cms
Виджет Список пользователей строит простой Список со смещением. Причем при любом расположении, вертикальном или горизонтальном
https://yadi.sk/i/YSWheQ0A3MjQmL
А при стиле Плитка отображаются только аватары.
В закладке Дизайн - Шаблон виджета только один щаблон list
Как все это подправить?
Aquarius 9 сентября 2017 в 05:42 0
small user social cms
Vikont, вот здесь http://www.instantcms.ru/freelancers/free вас и других нуждающихся в "подправить" ждут десятки программистов, у которых главная специализация — InstantCMS (на момент копирования ссылки, свободных было 74). Не все вам подойдут по своему узкому профилю, но выбрать и договориться, полагаю, есть с кем.
Другой путь — самому вникнуть в эту тему. Но это, как минимум, намного дольше. И с меньшими гарантиями...
vikont 9 сентября 2017 в 10:57 0
small user social cms
Надо не переделывать виджет, а подсказать, почему он из коробки неправильно отображает информацию!
То ли это досадный глючек, то ли возможно какой то конфликт, хотя с таким у Инстанта сталкиваюсь впервые...
А где искать исполнителей хотелок я знаю, спасибо.
Fuze 9 сентября 2017 в 11:09 0
small user social cms
Обновите свой шаблон очевидно. Проблем с виджетом нет.
yury 9 сентября 2017 в 09:51 0
no avatar
подскажите пожалуйста, с чем может быть связана ошибка

/system/controllers/content/model.php on line 1484 Notice: Undefined index: cats_hide in /system/controllers/content/model.php on line 1485

Notice: Undefined index: create in /templates/default/controllers/content/category_view.tpl.php on line 52

Undefined index: create in /templates/default/controllers/content/item_view.tpl.php on line 82
Notice: Undefined index: create in /templates/default/controllers/content/item_view.tpl.php on line 92
Notice: Undefined index: create in /templates/default/controllers/content/item_view.tpl.php on line 94
Notice: Undefined index: create in /templates/default/controllers/content/item_view.tpl.php on line 107

Undefined index: cats_view in /system/controllers/content/model.php on line 1451
Notice: Undefined index: cats_hide in /system/controllers/content/model.php on line 1452
yury 9 сентября 2017 в 09:56 0
no avatar
Недочет еще в фотогалерее по загрузке фоток на аяксе

http://prntscr.com/giyk05

показывается кнопка даже когда нет больше фотографий для подгрузки. Лучше ее убирать совсем.
Fuze 9 сентября 2017 в 11:10 0
small user social cms
Кнопка и так убирается. Почему она видна у вас, я не знаю.
@Однако@ 9 сентября 2017 в 11:17 0
no avatar
Люди так что есть ли возможность в этой версии ограничить количество создаваемых групп ( сообществ) на человека? Не могу найти такую настройку. Люди спрашивают не знаю что ответить.
Неужели никто этим не озадачивался?

С полем цвет все ясно, похоже в фильтре так и не выводится.
@SmartControl 9 сентября 2017 в 11:40 +2
small user social cms
Люди так что есть ли возможность в этой версии ограничить количество создаваемых групп ( сообществ) на человека? Не могу найти такую настройку. Люди спрашивают не знаю что ответить.

Не вижу подобных проверок при создании группы. И нет хуков при создании, чтобы этим как-то управлять. То есть только влезая в код этого можно достичь.

Fuze, просьба без конкретики - добавляйте, пожалуйста, максимально хуки на все операции. Не знаю как об этом лучше писать - могу на github подниматься вопрос, явно указывая место и хук, который хотелось бы там видеть. Тогда даже если в движке чего-то нет, можно будет допиливать сторонними компонентами, перехватывая события. Хуков не хватает..
Fuze 9 сентября 2017 в 12:01 0
small user social cms
Хуки на правила доступа есть.
Каких хуков не хватает, пишите на гите.
есть ли возможность в этой версии ограничить количество создаваемых групп
Нет такого правила.
dwd 10 сентября 2017 в 23:06 0
small user social cms
Поддерживаю @SmartControl и мне кажется вариант "Пишите на гите" не совсем правильный. Вы, как разработчики системы при написании кода должны думать о том, как те, кто пишет дополнения смогут им управлять впоследствии. И не оставлять в коде "неуправляемых" участков. И еще огромная просьба - перестаньте экономить на параметрах хуков, а то в системе полно "недохуков", от которых толку ноль. Вот пример такого "недохука":

Код PHP:
  1. list($ctype, $this->model) = cmsEventsManager::hook('content_list_filter', array($ctype, $this->model));
  2. list($ctype, $this->model) = cmsEventsManager::hook("content_{$ctype['name']}_list_filter", array($ctype, $this->model));
долго и упорно пытался понять почему в этом хуке отсутствует массив $fields, ведь собственно поля и их значения должны быть основным содержимым этого хука(помимо модели). Следом за этим хуком идет обработка полей

Код PHP:
  1. if ($field['is_system'] || !$field['is_in_list'] || !isset($item[$field['name']])) { continue; }
  2. if ($field['groups_read'] && !$user->isInGroups($field['groups_read'])) { continue; }
  3. if (!$item[$field['name']] && $item[$field['name']] !== '0') { continue; }
но мы не имеем возможности изменить данные массива $fields чтобы нужное нам поле попало под этот набор правил или вышло из под него. Лично мое мнение - каждый хук должен содержать глобальный массив всех параметров системы в текущей точке останова. Это позволило бы значительно сократить количество хуков, повысив их функциональность.
@SmartControl 11 сентября 2017 в 00:44 0
small user social cms
Много букв, спрячу под спойлер
dwd 11 сентября 2017 в 01:21 +1
small user social cms
Посмотрел этот метод, там же эти хуки для фильтрации только - они для того, чтобы компоненты могли добавить условия по выборке. А $fields это массив всех полей - если нужно что-то с ним делать, нужен отдельный хук (одно действие = один хук). А вот на сами поля можно действовать и из тех хуков - подкорректировать запрос к БД на получение записей.

Ну вот вам простейший примерчик - допустим мне нужно в зависимости от значения определенного поля убрать с фильтра или добавить в фильтр определенное поле. Будем для этого случая и еще миллиона подобных случаев пилить миллион специальных хуков? Или все-таки сделаем один, но нормальный?
@Однако@ 11 сентября 2017 в 12:19 0
no avatar
Спасибо понятно.
vikont 9 сентября 2017 в 17:01 0
small user social cms
Столкнулся с тем что не полностью инсталлируются дополнения в которых нет файла install.sql
В частности в таблицу cms_controllers не вносятся необходимые данные.
Как исправить?
@SmartControl 9 сентября 2017 в 17:05 0
small user social cms
какие именно данные?
файл install.sql нужен для дополнительных операций с БД, строка компонента вносится в cms_controllers движком, для виджета то же самое.
vikont 9 сентября 2017 в 17:07 0
small user social cms
В Компонентах не появляется запись о дополнении. Например о вашем Smart Slider. Естественно я не могу им пользоваться.
vikont 9 сентября 2017 в 17:11 0
small user social cms
Это на всех моих сайтах. Сайты на одном хостинге. Заметил в четверг, а сегодня повторилось.
@SmartControl 9 сентября 2017 в 17:13 0
small user social cms
Я проверю. Может быть конкретно для моего дополнения не отрабатывает.
vikont 9 сентября 2017 в 17:29 0
small user social cms
Скорее всего проблема у меня, так как в четверг ставил другое дополнение и впервые прозрел... не без помощи Zau4man
Видимо, что то произошло после установки движка 2.8.0.
turza 9 сентября 2017 в 17:21 +1
small user social cms
Добрый день друзья, может кто подскажет домен у сайта кириллический, подключена Яндекс почта для домена, в настройках самого сайта прописано ещё с версии 2.5 – support@ далее punycode, всё работает исправно.
Но захотели пользователи поменять в аккаунтах, свои E-mail адреса на кириллицу, именно сейчас и в 2.8 .1 и всё тупик – движок прописывает что неверный формат почты. Есть какие мысли?
@SmartControl 9 сентября 2017 в 17:31 +1
small user social cms
Да мысли простые, электронки с кириллицей не проходят валидацию. Решение - изменить функцию, которая проверяет почту на корректность.
vikont 10 сентября 2017 в 00:00 0
small user social cms
Уважаемые знатоки и конечно отцы создатели Инстанта!
Кто знает почему при инсталляции дополнений не создается запрос на внесение данных о дополнении в таблицу cms_controllers?
vikont 10 сентября 2017 в 22:28 +3
small user social cms
Отчитываюсь перед сообществом во возникшей проблеме, дабы все знали!
И так проблема решена с помощью включения функции PHP parse_ini_file, которая как оказалось по умолчанию отключена!
Теперь в условия работы движка надо включить этот пункт включения функции PHP parse_ini_file.

Всем комфортной работы!
Dorimen 10 сентября 2017 в 20:28 +1
no avatar
Почему-то нет опции "Добавить в ленту активности новый комментарий", но есть "Добавить в ленту активности оценку комментария" :)
yury 11 сентября 2017 в 08:27 0
no avatar
с чем могут быть связаны эти нотисы?

Notice: Constant LANG_WD_CONTENT_LIST_IMAGE already defined in /system/languages/ru/controllers/content/widgets/list.php on line 5

Notice: Constant LANG_WD_CONTENT_LIST_TEASER already defined in /system/languages/ru/controllers/content/widgets/list.php on line 6

Notice: Constant LANG_WD_CONTENT_LIST_DETAILS already defined in /system/languages/ru/controllers/content/widgets/list.php on line 7
Zau4man 11 сентября 2017 в 09:49 0
small user social cms
Есть мысль, что у вас стоит виджет вывода контента, который сделан на основе стандартного. Разработчик поленился переименовать константы.
yury 11 сентября 2017 в 13:22 0
no avatar
А где можно покопать их, чтобы найти? получается надо смотреть языковые файлы виджетов?
@SmartControl 12 сентября 2017 в 18:02 0
small user social cms
При установке компонента с большим деревом папок выскакивает ошибка
Data too long for column 'files' at row 1

Запрос очень длинный.
Dorimen 13 сентября 2017 в 20:53 +1
no avatar
ИМХО, не совсем корректно работает система обновления установленных компонентов:



но

@SmartControl 13 сентября 2017 в 21:05 +2
small user social cms
Она пока работает корректно только при установке новых компонентов и при их последующем обновлении.
@Vladorld 14 сентября 2017 в 23:59 0
no avatar
Перед публикацией записи возможно сделать предосмотр?
Dorimen 15 сентября 2017 в 00:10 0
no avatar
у вас нормально отправляется письмо в восстановлением паролей? у меня что-то перестало...
Андрей 15 сентября 2017 в 14:12 0
small user social cms
Не знаю - ошибка или нет в файле templates\default\controllers\content\item_bind_form.tpl.php пропущена буква l в слове result-pane или так и должно быть?

Код PHP:
  1. <div class="result-pane">
  2. <div class="loading"></div>
  3. </div>
Ris 15 сентября 2017 в 14:33 +1
small user social cms
В стилях, в файле \templates\default\css\theme-content.css тоже написано:
Спойлер
Причем много раз. Значит все правильно.
Dorimen 15 сентября 2017 в 20:22 0
no avatar
Есть ли разница, на какой позиции находится событие по сравнению с другими событиями:

например, тут события компонента "НеоМессенджер" и "Черный список" находятся аж на хрен знает каком месте... Можно предположить, что если событие, которое по идее должен заброкировать "Черный список", находится перед ним выше, то оно не будет заблокировано?



или такие события:

Pocus 15 сентября 2017 в 20:35 +1
small user social cms
События, они на то и события, чтобы срабатывать при определённых условиях.
Позиция в списке не является условием.
@SmartControl 15 сентября 2017 в 20:48 +2
small user social cms
Есть ли разница, на какой позиции находится событие по сравнению с другими событиями:
По сравнению с другими событиями разницы нет. Есть разница в позиции относительно других компонентов по этому же событию.

Можно предположить, что если событие, которое по идее должен заброкировать "Черный список", находится перед ним выше, то оно не будет заблокировано?
События друг друга не блокируют.
Pocus 17 сентября 2017 в 19:36 0
small user social cms
Наконец-то и я обновился, но, кажется, не полностью.
Например, в админке, в списке компонентов нет иконки "глаз" чтобы посмотреть файлы. А при удалении компонента, он просто удаляется, не показывая список файлов. (Эти фишки я увидел только в видео от студии Sitestroi).
Обновлялся дважды, автоматом и вручную, результат тот же.
Админка дефолтная, в моем шаблоне папки controllers/admin/ нет.
Есть мысли, что не так?
@SmartControl 17 сентября 2017 в 19:40 0
small user social cms
он просто удаляется, не показывая список файлов
Потому что компоненты установлены ранее и файлы для них движок не знает. Файлы будут отображаться только для тех, которые вы поставите на 2.8.1 - и движок сам запомнит файлы. Пока это не совсем законченный механизм - при обновлениях файлы не дописываются в БД, только при первичной установке.
Pocus 17 сентября 2017 в 19:53 0
small user social cms
Да, чёт я затупил.
Попробовал установку и удаление компонента из каталога - всё работает.
SE7EN 19 сентября 2017 в 11:52 0
small user social cms
Очень бы хотелось увидеть в будущих выпусках Инстана функцию предпросмотра новости, статьи и т.д. перед публикацией.
vikont 19 сентября 2017 в 20:36 0
small user social cms
Вроде бы задавал вопрос, но не вижу его здесь..., повторюсь...
После обновления идут многочисленные ошибки вида

PHP Notice: Undefined offset: 1 in /home/ih332798/public_html/system/libs/spyc.class.php on line 409

Причем этих строк почти столько сколько виджетов на странице!
Пробовал отключать виджеты, часть строк уходит, но эта ошибка даже на стандартные виджеты.

Что и где надо подправить?
@SmartControl 20 сентября 2017 в 09:51 +1
small user social cms
Это не ошибки. Notice - это уведомление.
Возникает из-за запроса несуществующего элемента массива. Можно их отключить для вывода. Например, в htaccess добавить строку
Код PHP:
  1.  
  2. php_flag display_errors off
  3.  
Это не исправит причину, но уберет вывод уведомлений на экран.
vikont 20 сентября 2017 в 15:47 0
small user social cms
Спасибо! Проблема видимо все в том же что и перед этим, когда проходила не полная инсталляция пакетов.... возможно в базе
отсутствуют таблицы. Точно известно, что уведомления на сайте отсутствуют. Их нет даже среди виджетов меню.

Вопрос в следующем с версии 2.7.0 до версии 2.8.1 были какие либо изменения в базе данных и если были, где найти запросы, чтобы восстановить базу до нужного функционала?
vikont 21 сентября 2017 в 03:38 0
small user social cms
Начиная с версии 2.6.0 выполнил все SQL запросы, что были в пакетах обновления в файле install.sql
Количество ошибок резко уменьшилось!
Но в меню пункт Уведомления так и не появился. Принудительное создание ни к чему не привело!
Подскажите, как восстановит уведомления???
@SmartControl 21 сентября 2017 в 03:56 0
small user social cms
Принудительное создание ни к чему не привело!
создание такого пункта {messages:notices}?

пункт уведомления появляется только тогда, когда есть уведомления. Если их нет - он не отображается.
vikont 21 сентября 2017 в 15:26 0
small user social cms
1. Этот пункт по старинке находился в Персональном меню, а должен быть отдельным меню. Когда произошли эти изменения я не знаю, но они у меня не произошли из-за отключенной функции PHP parse_ini_file.
Поэтому ищу как исправить!
2. Как выяснилось, при апдейте движка даже из файла install.sql не брались обновления базы!
Pocus 21 сентября 2017 в 17:07 0
small user social cms
Это только вручную (см. 1 абзац 2.7.1), само не исправится, если это обновление а не новая установка.
Еще виджет "комментарии вконтакте" сам не удалится.
Loadырь 21 сентября 2017 в 07:31 +1
small user social cms
Я вас огорчу, но иногда sql запросы находятся и в файле install.php. Например тут, смотрите $core->db->query(...).
vikont 21 сентября 2017 в 15:34 0
small user social cms
Спасибо! Видимо это я и искал. Но меня терзают смутные сомнения что предстоит полная ревизия скрипта и базы!
То есть заново установить скрипт сайта с современной структурой базы. Затем проинсталлировать все используемые дополнения и потом из старой базы перебросить данные в новую...
Это радикальный способ и на его пути масса возможных проблем...
Другой способ есть все исправить?
@SmartControl 21 сентября 2017 в 16:45 0
small user social cms
Сделать бэкап текущей базы.
Скинуть в конфиге версию до последней корректной (до всех косяков), допустим это была 2,6,0.
Хакнуть файл database.php, чтобы после неудачного запроса установка не отваливалась.
Последовательно накатить все последующие обновления.

Это теория, но почему бы и не попробовать. Главное бэкап не теряйте.
Можете подготовить все и скинуть доступы мне в личку - минут 20 смогу выделить поиграться из спортивного интереса.
vikont 21 сентября 2017 в 21:01 0
small user social cms
Спасибо за предложение! Если сам не справлюсь постучусь за помощью... smile
Loadырь 21 сентября 2017 в 19:01 0
small user social cms
Можно "собрать" все запросы из всех файлов install.php всех промежуточных версий от 2.6.0 до 2.8.1 - в один файл install.php и запустить, как пакет обновления. При таком раскладе не исключены ошибки, поэтому отладку такого "пакета обновления" надо проводить на локалке.
vikont 21 сентября 2017 в 20:59 0
small user social cms
Знать бы когда начались проблемы... Я думал, что максимум с версии 2.7.0, а на самом деле инстальнулись запросы даже с версии 2.6.0!
Я уже пересобирал и раньше весь движек, но опять таки на хостинге с выключенной функцией PHP parse_ini_file
Странно, как сайт вообще до сих пор работал?!
Fuze уже пообещал, что в следующей версии будет проверка включения этой функции на сервере.
В мастер пакете она уже есть.
Скела 20 сентября 2017 в 02:55 0
small user social cms
В одном из сторонних компонентов использовалась строка
Код PHP:
  1. $form = cmsCore::getWidgetOptionsForm($widget['name'], $widget['controller'], $widget['options']);
После обновления с 2.8.0 на эту строку указывается ошибка. Кто подскажет как можно это исправить
Код ОШИБКА:
  1. Fatal error: Call to undefined method cmsCore::widget_options_full_form() in ....php on line 18
@SmartControl 20 сентября 2017 в 09:38 +2
small user social cms
Эта функция находится в компоненте admin (/system/controllers/admin/frontend.php). Если используется в админке, то попробуйте поменять
Код PHP:
  1. $form = cmsCore::getWidgetOptionsForm($widget['name'], $widget['controller'], $widget['options']);
на
Код PHP:
  1. $form = cmsCore::getController('admin')->getWidgetOptionsForm($widget['name'], $widget['controller'], $widget['options']);
Если не в админке, то работать не будет скорей всего(сработает проверка на админа).. Нужно ее продублировать в этом стороннем компоненте.
Скела 20 сентября 2017 в 09:44 0
small user social cms
Да - то, что нужно! Спасибо
Dorimen 21 сентября 2017 в 08:13 +1
no avatar
Pocus 21 сентября 2017 в 18:23 0
small user social cms
Админка / Каталог дополнений / Установленные - среди прочих присутствует "InstantMaps 2.x" (addon_id = 6).
Но, в отличии от других, у него вместо зелёной кнопки "Компонент установлен" выводится кнопка "Купить за 3500 &#8381;".
С чем может быть связана такая "исключительность" Мапса?
@SmartControl 21 сентября 2017 в 18:47 +1
small user social cms
два варианта
1. для Мапса не прописался addon_id - хотя должен
2. версия Мапса в каталоге НЕ выше и не равна той, что у вас на сайте. В каталоге 2.0.4, у вас какая в списке компонентов отображается?
Pocus 21 сентября 2017 в 18:56 0
small user social cms
Да, вы правы. У меня 2.0.6.
Однако, недочет системы? Надо на github написать.
@SmartControl 21 сентября 2017 в 19:11 +2
small user social cms
Так вас поздравить нужно, это не баг.
У всех 2.0.4 (как в каталоге), а у вас версия из будущего. Я так предполагаю, что R2 после закидывания в каталог еще исправлял какие-то мелкие ошибки (отсюда и версия чуть выше), а в каталоге потом не обновил информацию. Это не баг, это действия конкретного разработчика дополнения.
Pocus 21 сентября 2017 в 19:18 +1
small user social cms
Это не баг, но недочёт системы.
Да, вот так случилось, R2 разослал обновления по почте но каталог не обновил. Забыл.
В принципе, такая ситуация может повториться и с другими разработчиками.
Ничего страшного, конечно, но выглядит не красиво, когда установленный компонент предлагают установит вновь.
Эндрю Ua 22 сентября 2017 в 01:07 0
small user social cms
Вот создаю сайт на InstantCMS 2.8.1
И хотел бы кое что предложить не значительное для instantcms, но с другой стороны очень удобны
К примеру выбор ширины блока поля а вот высоту выставить в админке данного блока поля нельзя - это в Типы контента\Каталог\Поля\Обтекание
Так же если создать Поле в Категории : Типы контента\Каталог\Свойства\ Добавить поле и в нем выбрать Обязательно к заполнению, то рядом с полем красной звездочки не будет. Как это есть в основных полях.
Эндрю Ua 22 сентября 2017 в 01:18 +1
small user social cms
SE7EN 22 сентября 2017 в 14:49 +1
small user social cms
Есть предложение:
Сделать возможность создания своего персонального меню в админке (настраиваемого), чтоб было удобнее по компонентам и настройкам лазить, что-то типа как главное меню на сайте.
yury Вчера в 15:29 0
no avatar
да, тоже хотел предложить. напишите на гитхабе)