InstantCMS 2.17.0

3.36K

Всем привет!

Как всегда, перед новым годом, мы выпускаем очередной релиз. В нём очень много «невидимых» обывателю правок, например рефакторинг кода, исправление небольших архитектурных изъянов (которые не ломают обратную совместимость), документирование кода. Но и нового функционала мы, конечно же, добавили.

Новый компонент Content Security Policy

Компонент реализует добавление HTTP заголовков CSP ко всем ответам InstantCMS. Content Security Policy — это механизм обеспечения безопасности, с помощью которого можно защищаться от атак с внедрением контента, например, межсайтового скриптинга (XSS, cross site scripting). CSP описывает безопасные источники загрузки ресурсов, устанавливает правила использования встроенных стилей, скриптов, а также динамической оценки JavaScript — например, с помощью eval. Загрузка с ресурсов, не входящих в «белый список», блокируется.

Помимо внедрения самого компонента, мы сделали очень много полезных правок: избавились везде от инлайн вызовов JavaScript, например от onclick. В админке все JavaScript вызываются согласно архитектуре. Иными словами, мы добились отсутствия нотисов CSP при максимально включенном режиме. Для script тегов добавлен везде атрибут nonce. По умолчанию CSP HTTP заголовки выключены, мы рекомендуем включать с осторожностью, тестируя в режиме «Только отчёты». Более подробнее описано в документации.

Кастомизация установочного архива InstantCMS

Я уже писал в посте тестирования RC версии, повторюсь кратко. 

Начиная с этого релиза вы можете делать свои сборки. В комплекте установщика теперь есть скрипт для кастомной сборки, InstantCMS можно установить без 16 компонентов, что бывает полезно для некоторых разработок. Но это ещё не всё. Вы можете добавлять любое бесплатное дополнение из нашего каталога в сборку, всё так же, используя скрипт.

Для тех кто не хочет использовать скрипт мы сделали отдельную страницу генерации сборок на этом сайте. Она всегда на основе последней версии InstantCMS. В выбор сторонних дополнений в форме мы добавляем сами, помечая проверенные. Сторонние дополнения для сборок будут пополняться. Некоторые дополнения мы добавим сами, на своё усмотрение. Механизм модерации для включения дополнений в этот список мы добавим чуть позже.

Остальные изменения

  • Исправлен баг с набором «Участие в группах» компонента «Группы»;
  • Исправлен баг с опцией сортировки полей-списков;
  • Управление MIME-типами в админке. Все проблемы с ними решены;
  • Исправлен баг со сменой языка при ремапе;
  • В компонент подписок добавлены опции «Показывать кнопку подписки в списке», «Показывать кнопку подписки в фильтре» и управление позицией показа кнопки;
  • Убрана опция «Добавлять номера страниц в тег title при пагинации», вместо неё можно использовать выражение {page} в паттернах;
  • Mobile Detect 3.74.3;
  • ScssPhp 1.13.0;
  • TinyMCE 7.6.0 + исправлены баги;
  • Редактор Ace обновлён до версии 1.36.5;
  • jQuery UI, CroppeJS, jquery.inputmask, VueJS актуальных версий;
  • Минимальная версия для InstantCMS теперь PHP: 7.2.0;
  • Вместо cmsUser::goLogin() используйте теперь $this->redirectToLogin() в контроллерах;
  • Исправлена XSS в exif параметрах;
  • Для механизма кэширования добавлены методы pause() и resume(), таким образом в своих дополнениях вы можете это использовать, если будет необходимо;
  • Для ячеек гридов добавлено свойство class_handler, где вы можете назначить функцию обработчик значения для CSS класса;
  • Переработан класс cmsUploader;
  • В обёртки виджетов теперь передаются полные данные виджета, в своих виджетах вы можете переопределять метод createPositionData();
  • Исправлена проблема, когда в админке невозможно было удалить категории;
  • Вкладки профилей с опцией «показывать только владельцу профиля», показываются суперадминам тоже;
  • Добавлена возможность динамически менять атрибуты тега <html> лайоута шаблона;
  • Автоматический механизм Last-Modified — IF_MODIFIED_SINCE, достаточно установить заголовок Last-Modified;
  • Исправлена работа поля «Категории контента»;
  • Автоспойлер для больших описаний фотографий в фотоальбомах;
  • Добавлен опциональный показ кол-ва записей в категориях ТК;
  • В опцию «Тип вывода» в связях добавлен пункт «Список в поле»;
  • Добавлена поддержка отрицательных масок для конкретного виджета;
  • Новый класс cmsResponse для работы с HTTP ответом, функция header теперь не вызывается нигде в коде напрямую, для установки хедеров используйте в контроллерах $this->cms_core->response->setHeader('name', 'value');
  • Класс cmsRequest дополнен для работы с HTTP заголовками запроса, с массивом $_SERVER и методом HTTP запроса;
  • Опции полей свойств, опции валидации для свойств, фильтры для свойств в админке, поддержка разных файлов email писем об успешной модерации для типов контента;
  • События от пользователей, помеченных как удалённые, теперь не выводятся в ленте активности;
  • Исправлена ошибка в быстром подборе масок;
  • Добавлены хуки: content_category_before_delete, users_profile_before_update_notices;
  • Добавлен трейт fieldsParseable для единой обработки полей в ТК, профилях и группах;
  • Исправлена фильтрация по скрытым родителям записей ТК;
  • Добавлена мультиязычность для кнопки виджета «All news by the author»;
  • Исправлено отсутствие языковой константы в уведомлении об оценке материала;
  • Тег video теперь может быть пустым в типографе;
  • Исправлены некоторые проблемы при работе на Windows-системах;
  • Добавлено отображение имени файла в email-письме при отправке формы конструктора форм;
  • В трейте formItem теперь можно использовать свойства submit_title, use_default_tool_buttons, json_callback. Трейт имеет режим копирования записи;
  • Исправлена работа некоторых WYSIWYG-редакторов в комментариях и на стенах в Firefox;
  • В поле «список изображений» добавлен CSS для блока загрузки DnD;
  • Опция placeholder для редактора Tiny;
  • Для забытых разделов админки добавлен csrf_token;
  • Почти вся админка приведена к единому набору иконок;
  • Экспериментальная поддержка прав доступа для разделов админки (управление не реализовано, только через БД);
  • Единый CSS класс icms-click-select для инпутов, которые должны по клику выделять свой текст;
  • Токены через random_bytes;
  • Метод $request->getContent() для получения php://input;
  • Вкладка формы с полем ошибки HTML валидации теперь становится автоматически активной;
  • В манифестах установочных пакетов добавлена возможность указывать минимальную версию PHP и зависимость от модулей PHP, включая номера версий;
  • Добавлен метод getMetaHandled в cmsTemplate. Он отдаёт текущие мета параметры;
  • Добавлены опции CSS классов для полей в записи и в списке;
  • Поддержка виртуальных полей в группах, профилях и виджетах;
  • Исправлено отсутствие расширения файла во вложениях из конструктора форм;
  • Исправлена работа уведомления в модальном окне конструктора форм;
  • Магия с cms_users/model_content и т.п. вынесена в трейт и доступна теперь в том числе и в виджетах;
  • Полное наследование в SCSS для дочерних шаблонов, включая внутренний импорт. Zau4man упомянул об этом в своём блоге;
  • CSS класс для ссылок icms-action-confirm, наличие которого вместе с атрибутом data-confirm делает переход по ссылке с автоматическим подтверждением;
  • Добавлены описания для тегов;
  • Аватарка в админке в меню ограничена в размерах;
  • Для поля связей «Родитель» добавлена опция вывода только в глубиномере;
  • В разделе виджеты и страницы админки добавлен показ подсказки на фантомном виджете с названием страницы, к которой он привязан;
  • Добавлен механизм смены автора записи ТК;
  • Увеличено кол-во символов для полей SEO;
  • Добавлен hookAfterUpdate для полей свойств;
  • Исправлена ошибка с валидацией параметров подписок для гостей;
  • Добавлен шаблон вывода виджета списка записей для ТК фотоальбомы;
  • В админке в списке комментариев добавлена фильтрация по ТК и вывод имени комментируемой записи;
  • Исправлено формирования SEO паттернов компонентов при включенной мультиязычности;
  • Для TinyMCE добавлены опции «Блочный элемент» (вместо Перевод каретки) и «Поведение новой строки»;
  • Для комментариев добавлена опция «Скрывать комментарии удалённых пользователей»;
  • Добавлена поддержка мультиязычности для связки Запись ТК -> Группа;
  • Убран вызов mysqli->ping() как устаревший и неработающий с php8.2;
  • PHPMailer 6.9.3;
  • Корректная версия SQL сервера в разделе «Информация о системе»;
  • Поддержка переменной окружения ICMS_CONFIG_DIR для пути к директории конфигураций;
  • Всё, что лежит в system/config/ теперь можно выносить за корневую директорию;
  • Поддержка массового удаления пользователей в админке;
  • При удалении виджетов теперь вызывается методы полей $field>delete();
  • Классы google_authenticator и idna_convert теперь совместимы с php8.3+;
  • Новый класс cmsAutoloader и механизмы автозагрузки;
  • Поддержка английского языка для каталога дополнений в админке;
  • В компоненте «Авторизация и Регистрация» а также в поле «Защита от спама» добавлена опция выбора конкретной капчи;
  • Опция «Показывать капчу после неудачной авторизации» переименована в «Показывать капчу при авторизации», т.е. при включении её, капча будет всегда;
  • Переписан механизм установки пакетов дополнений, добавлен класс cmsInstaller для работы с ними;
  • Исправлен баг с utf8_general_ci;
  • Добавлены фильтры по пользователям для массовой рассылки сообщений;
  • Очень много задокументированного кода;
  • Много рефакторинга и исправление мелких ошибок.

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

Дальнейшие планы

Помимо всего прочего, в ближайшее время в комплекте InstantCMS появится Биллинг. Бесплатно. Открыто. r2 передал биллинг мне и было решено интегрировать его в комплект InstantCMS. От этого выиграют все, даже те, кто его покупал, поскольку будет поддержка уже в контексте полной сборки InstantCMS. И да, кому он не нужен, всегда смогут собрать дистрибутив без него, см. выше про сборки. r2 передавал всем поздравления с новым годом вот таким подарком. Надеюсь этот жест будет понят правильно.

Сроки внедрения Биллинга пока не ясны, этот релиз забрал слишком много сил. Однако, хочется сделать побыстрее. Поэтому в ближайшем обновлении (если критических багов в 2.17.0 не будет), полагаю, Биллинг будет в комплекте.

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

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

Важно! Убедитесь, что сейчас вы используете версию 2.16.3, иначе, обновитесь сначала до неё.

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

  • Отключите кеширование в настройках сайта;
  • Отключите объединение js и css в настройках сайта;
  • Если вы используете свой шаблон и в нем есть файлы, присутствующие в пакете обновления, то обновите их;
  • При возникновении «белого экрана» категорически читать здесь;
  • Для тех, у кого свой шаблон у нас есть статья как быть, если в обновлении CMS есть изменения в шаблоне, рекомендуем к прочтению.

Если в вашем шаблоне присутствуют JavaScript файлы со своими правками (взяты из /templates/default/js/ или /templates/modern/js/), замените/смержите их из пакета обновления. Не забывайте о сбросе кэша браузера абстрактным счетчиком для посетителей ваших сайтов.

Механизм установки обновлений подробно описан по этой ссылке в документации.

Отключите сторонние компоненты капчи и показ капчи при авторизации, так как для работы в 2.17.0 нужны незначительно доработки со стороны их авторов. Например для smCaptcha требуется сделать примерно так.

system/controllers/groups/actions/group_closed.php
system/libs/phpmailer/language/phpmailer.lang-am.php
system/libs/phpmailer/language/phpmailer.lang-ch.php
system/libs/phpmailer/language/phpmailer.lang-rs.php
system/libs/phpmailer/class.phpmailer.php
system/libs/phpmailer/class.pop3.php
system/libs/phpmailer/class.smtp.php
system/libs/scssphp/scss.inc.php
templates/default/controllers/groups/group_closed.tpl.php
templates/modern/controllers/groups/group_closed.tpl.php

Пакет обновления для ручной установки можно скачать по этой ссылке. Демо сайт обновлён.

С наступающим новым годом! Спасибо за сообщения об ошибках. Спасибо, что выбираете InstantCMS.

Поддержите проект

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

+3
dChirkis dChirkis 2 месяца назад #

Ура товарищи.
Спасибо разработчиику

+2
DeeMon DeeMon 2 месяца назад #

Планы интересные. Биллингом от r2 пользуюсь.

+2
Бичукин Андрей Бичукин Андрей 2 месяца назад #

Просто замечательно!
Спасибо огромное за ваш труд.
Владимиру за Биллинг большая благодарность. Было бы неплохо ещё и с конструктором сайтов вопрос как-то решить. До сих пор купил и пользуюсь, а сайты эти уже обновить не могу, т.к. выше 2.16 конструктор уже не работает.
С Новым Годом всех!)

0
fincheck fincheck 2 месяца назад #

По этому моменту наверно складчиной мотивировать нужно. Так как на одном энтузиазме да ещё и в одно лицо будет это не скоро. А вот то, что будет уверен. Возможно не в данном исполнении, но всё же.

Не сочтите за наглость и ни в коем случае за понты, но моё сугубо пользовательское мнение и я где-то на форуме уже озвучивал данное, что Биллинг(коммерция — для бесплатной cms ой как важно) и Конструктор сайтов, а за одно и Инстайлер) раз такая масть пошла)) должны быть в «коробке». А теперь уж с кастомизацией тем более, нужно кому пожалуйста ставьте. Это же привлечёт больше новых пользователей, которые в коде не в зуб ногой. Тем более сейчас с относительно стандартизированным шаблонам благодаря bootstrap, вроде как это должно облегчить дальнейшее обновление данных компонентов

+2
DeeMon DeeMon 2 месяца назад #

Инстайлер вроде работает на последних версиях, я пока проблем не замечал.

+1
Abobo Abobo 2 месяца назад #

Спасибо большое, отличная новость! Поддержка биллинга тоже порадовала.

+2
Zau4man Zau4man 2 месяца назад #

Отличная новость, долгожданный релиз.

Проделан огромный объем работы. Система стала ещё лучше.

Спасибо Fuze и всем, кто тестировал релиз-кандидат.

+2
Artem Artem 2 месяца назад #

Спасибо Вам и удачи в развитии сайтов на InstantCMS всем нам! С Наступающими!

+1
Happy Happy 2 месяца назад #

Вау, спасибо парни!!! С биллингом это вы круто решили.

0
Голдман Сакс Голдман Сакс 2 месяца назад #

Спасибо! Шикарное обновление.

Надо бы проверить на совместимость с InstantMaps. Или тоже в коробку? :)

+1
Fuze Fuze 2 месяца назад #

Или тоже в коробку? :)

Я так и подумал, что сказку про золотую рыбку не все читали ;-) Ограничимся Биллингом.

0
pupsik pupsik 2 месяца назад #

А что это за биллинг? Магазин какой то?

+3
Fuze Fuze 2 месяца назад #

Синенькое в тексте — это ссылки :)

instantcms.ru/addons/billing2.html

0
pupsik pupsik 2 месяца назад #

Нет, это добро не надо(мне лично). Поддержки Американских сервисов не видно. Ну и ладно с ним.

0
pupsik pupsik 2 месяца назад #

Дак я еще не читал текс полностью. Бакапы делаю еще :) Не спеша… Извините за тупой вопрос.

+1
Голдман Сакс Голдман Сакс 2 месяца назад #

Да при чем тут рыбка? InstantMaps давно куплен. И не один. Поэтому о подарках речи нет.

Речь о выживаемости сайта, на котором установлен InstantMaps.

То же касается и InstantVideo. 😉

0
Fuze Fuze 2 месяца назад #

Поэтому о подарках речи нет.

Есть. Контекст совершенно другой. Мне чужие компоненты на баланс поддержки — сомнительное удовольствие. Ни и каком InstantMaps, конструкторах тем речи быть не может. Во всяком случае я их поддерживать не планирую.

0
Голдман Сакс Голдман Сакс 2 месяца назад #

Почему чужие? Это официальные компоненты.

Тем не менее, спасибо за труд! С Наступающим!

0
fincheck fincheck 2 месяца назад #

Спасибо, отличные новости. 

0
Happy Happy 2 месяца назад #

В одной из тем на форуме мне ответили что бы в профиле выводились поля через виджет вывода полей, нужны виртуальные поля которые будут в релизе. То есть этот виджет теперь работает в профилях? 

0
Fuze Fuze 2 месяца назад #

Не очень понял про какой вы виджет, но полагаю, что да. Поддержка виртуальных полей в профиле теперь полноценная.

0
fincheck fincheck 2 месяца назад #

А что за виртуальные поля, в документации есть про это или где почитать?

+1
Fuze Fuze 2 месяца назад #

Это поля, которые не создают ячеек в базе данных. Например поле навигации. В классе поля для таких полей есть свойство:

  1. public $is_virtual = true;

docs.instantcms.ru/dev/forms/field-file

+4
Ruden Ruden 2 месяца назад #

Спасибо большое Fuze, я считаю что Вы один из самых крутых разработчиков, кого я вообще встречал! Хотелось бы что бы R2 когда нибудь вернулся к Вам в команду! С наступающим Новым Годом Вас и R2 и всю Вашу команду ! 

+2
Pro AV Pro AV 2 месяца назад #

Отлично, биллинг в коробке это Маст-хэв.

0
pupsik pupsik 2 месяца назад #

Хорошая новость, Спасибо. Надо морально подготовится, бакапы сделать и в путь к обновлению.

Я смотрю в этом обновлении никаких файлов удалять не надо?

0
Fuze Fuze 2 месяца назад #

Я смотрю в этом обновлении никаких файлов удалять не надо?

Надо, забыл написать, спасибо. Обновил новость. От того, что не удалите, ничего не сломается.

0
pupsik pupsik 2 месяца назад #

Да, но и лишнего нам не надо :). Спасибо.

+2
kalikimaka kalikimaka 2 месяца назад #

Спасибо

пожертвование отправил

0
Fuze Fuze 2 месяца назад #

Спасибо!

+1
Endroid Endroid 2 месяца назад #

Спасибо за ваш труд и всего сообщества! Много интересного и важного!

Билинг и Складчины — это очень прям СУПЕР! и уверен придаст развитие движку

+1
Нил™ Нил™ 2 месяца назад #

Круто! Я устал читать список изменений. Не представляю, сколько времени и сил требуется, чтобы во всем этом наборе функционала разобраться и тем более, чтобы всё это сделать. r2 тоже привет, тксзть.

0
pupsik pupsik 2 месяца назад #

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

Вот это, очень дельная весч. Очень.

0
pupsik pupsik 2 месяца назад #

Количество тем в категории не выводит. Шаблон скопировал с модерн для проверки, опцию в категориях включил.

0
pupsik pupsik 2 месяца назад #

Работает. Пардон 

Очень много файлов изменено в Модерн. Сложно найти что изменено, если свой шаблон. Ладно там 5-10 файлов а тут, почти весь шаблон надо смотреть.

+3
Zau4man Zau4man 2 месяца назад #

WinMerge в помощь

Изображение
0
pupsik pupsik 2 месяца назад #

А как пересчитать счетчик количества тем в категории. Показывает сколько, но не правильно. Наверно читает удаленные темы.

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Благодарю за обновление! Очень много работы проделано.

У кого шаблон Blogger, как прошло обновление? У меня пока нету возможности обновиться)

С наступающим заранее поздравляю всех!

+1
rshabalin rshabalin 2 месяца назад #

Постараюсь вечерком обновить !

+1
rshabalin rshabalin 2 месяца назад #

Два сайта на blogger обновил ( Не упали ) визуализация вроде в норме 

+1
RSN RSN 2 месяца назад #

Спасибо за развитие системы. Донат отправил. Обновление очень крутое). Отдельное спасибо за решение по Биллингу. 

0
Fuze Fuze 2 месяца назад #

Спасибо!

0
Anonimus45 Anonimus45 2 месяца назад #

А биллинг уже есть в этой версий? или только ждать

+1
Fuze Fuze 2 месяца назад #

Перечитайте текст новости. Там всё написано однозначно.

+1
iton iton 2 месяца назад #

Спасибо за обновление! 👍

+1
Александр Александр 2 месяца назад #

С наступающим всех, по моему instantcms как хорошее вино с годами становиться только лучше благодаря Fuze и другим не равнодушным людям.

Биллинг изумителен в своей простоте и нужности, совсем чуть чуть добавить недостающих функций и будет чудо, надеюсь теперь с открытым исходным кодом?! он наконец получит второе дыхание!

+1
Антон Антон 2 месяца назад #

Супер! Вордпресс отдыхает! Всех с наступающими!

0
482 482 2 месяца назад #

Как-то странно получилось. В описании релиза написано, что Минимальная версия для InstantCMS теперь PHP: 7.2.0, а я обновил один сайт с уверенностью, что там тоже PHP: 7.2.0, но когда решил перепроверить, оказалось PHP: 7.0.33, litespeed
Сайт вроде работает без проблем, по крайней мере серьёзных проблем не обнаружил. Единственное что заметил, стили заданные через Инстайлер не исполняются, когда он не запущен. При запуске Инстайлера всё исполняется.

+2
Fuze Fuze 2 месяца назад #

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

+1
Happy Happy 2 месяца назад #

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

0
Fuze Fuze 2 месяца назад #

github.com/instantsoft/icms2/blob/master/templates/modern/scss/controllers/messages/_messages.scss

Исправил. Можете забрать и перекомпилировать.

0
RSN RSN 2 месяца назад #

Пробую обновится...

У одного старого виджета слайдера вот такой нотис:

Изображение

php 7.4

Не подскажете, как исправить?

0
RSN RSN 2 месяца назад #

ЗЫ: так понимаю, какая то кнопка на этом месте хочет появится, но не появляется, по инструменту разработчика видно ссылку на этом месте...

Изображение

В принципе, ничего страшного, но если кто подскажет, как исправить, буду признателен...

0
Fuze Fuze 2 месяца назад #

Что за виджет, что за настройки? Что в 10й строке указанного вами файла с нотисом? Архив обновления до 2.17.0 когда скачен был?

0
RSN RSN 2 месяца назад #

Что за виджет, что за настройки? 

Виджет не системный, слайдер контента, у которого есть кнопка «Обновить» в шапке виджета, а рядом после обновления, пытается появится ещё одна кнопка (см. фото выше).

В настройках выбрано так:

Изображение

Что в 10й строке указанного вами файла с нотисом?

Файл системный \templates\modern\widgets\wrapper.tpl.php, в указанной строке:

  1. <a class="btn btn-outline-info btn-sm" href="<?php html((strpos($link['value'], 'http') === 0) ? $link['value'] : href_to($link['value'])); ?>">
  2. <?php html($link['id']); ?>
  3. </a>

Архив обновления до 2.17.0 когда скачен был?

Сегодня скачал… в часов 10 мск....

ЗЫ: сравнил файлы  \templates\modern\widgets\wrapper.tpl.php от 2.16.3 и от 2.17 различий нет...

Однако на 2.16.3 этого нотиса не было, никакие настройки не менял… нотис появился после обновления...

0
Fuze Fuze 2 месяца назад #

Вкладку общие сделайте скрин пожалуйста

0
RSN RSN 2 месяца назад #
Изображение
0
Fuze Fuze 2 месяца назад #

Полагаю в самом коде виджета «Ссылки в заголовке виджета» заполняются. И вероятно они неверные. А нотиса не было, т.к. режим отладки был отключен. Но на всякий случай в файле /system/libs/strings.helper.php замените эти две функции:

  1. function string_parse_list($string_list) {
  2.  
  3. $list = [];
  4.  
  5. if (!$string_list) { return $list; }
  6.  
  7. $is_logged = cmsUser::isLogged();
  8.  
  9. $rows = explode("\n", $string_list);
  10.  
  11. foreach ($rows as $row) {
  12.  
  13. if (preg_match('/^{(.*)}/', $row, $matches)) {
  14. if (!$is_logged) { continue; }
  15. $row = $matches[1];
  16. }
  17.  
  18. $parts = array_map('trim', explode('|', $row, 2));
  19.  
  20. $list[] = isset($parts[1])
  21. ? ['id' => $parts[0], 'value' => $parts[1]]
  22. : ['value' => $parts[0]];
  23. }
  24.  
  25. return $list;
  26. }
  27.  
  28. function string_explode_list($string_list, $index_as_value = false) {
  29.  
  30. $items = [];
  31.  
  32. $rows = explode("\n", $string_list);
  33.  
  34. foreach ($rows as $count => $row) {
  35.  
  36. $parts = array_map('trim', explode('|', $row, 2));
  37.  
  38. if (isset($parts[1])) {
  39. $index = $parts[0];
  40. $value = $parts[1];
  41. } else {
  42. $index = $index_as_value ? $parts[0] : (string)($count + 1);
  43. $value = $parts[0];
  44. }
  45.  
  46. $items[$index] = $value;
  47. }
  48.  
  49. return $items;
  50. }
0
RSN RSN 2 месяца назад #

Но на всякий случай в файле /system/libs/strings.helper.php замените эти две функции

Заменил, но нотис не пропал...

Fuze, спасибо, думал получится, как то по быстрому решить вопрос… а тут...))

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

ЗЫ: эти функции, что вы указали, оставить? или вернуть, как раньше было?

0
Fuze Fuze 2 месяца назад #

эти функции, что вы указали, оставить?

Оставляйте.

Заменил, но нотис не пропал...

скорее всего он и был, просто отладка его показала.

php код виджета увидеть бы, станет яснее.

+1
RSN RSN 2 месяца назад #

php код виджета увидеть бы, станет яснее

Не буду злоупотреблять вашим временем, спасибо...

Слайдер работает, а по нотису, позже попробую с разработчиком решить или на форуме...

+1
RSN RSN 2 месяца назад #

Обновился. Может быть ещё, что вылезет, но в целом, обновление прошло без проблем, особенно учитывая размер обновления. Ещё раз спасибо.

+1
Region67 Region67 2 месяца назад #

В компоненте «лента активности» не сохраняются чек боксы регистрации событий в ленте. Лента не выводится(

+1
Fuze Fuze 2 месяца назад #

Откройте файл /system/fields/list.php и начиная с 260 строки замените аналогичный код на:

  1. if (is_array($value)) {
  2. foreach ($value as $k => $v) {
  3. if (!is_array($v) && preg_match('/^([0-9]+)$/i', strval($v))) {
  4. $value[$k] = (int) $v;
  5. }
  6. }
  7. }

Должно получиться как то так:

Изображение

0
pupsik pupsik 2 месяца назад #

Поставил изменение. Чецкбоксы сохраняются но, если отключить все, то в ленте все равно есть активность. Так и должно быть?

+1
Fuze Fuze 2 месяца назад #

если отключить все, то в ленте все равно есть активность. Так и должно быть?

Да, старая активность должна остаться. Включается регистрация в ленте.

0
pupsik pupsik 2 месяца назад #

Может баг. В альбоме, когда загрузил картинку и нажал кнопку удалить, ничего не происходит. До пупликации.

Изображение

0
Zau4man Zau4man 2 месяца назад #

Попробуйте повторить ошибку на официальном демо сайте demo.instantcms.ru

Возможно, проблема в мердже файлов

0
pupsik pupsik 2 месяца назад #

Пробовал проверить на демо. Там при нажатии «загрузить изображения» кидает в «Создать альбом».

0
Zau4man Zau4man 2 месяца назад #

Ну так создайте альбом. 

Я вот создал, загрузил фото, и без проблем его удалил.

Ошибку не подтверждаю.

А вот невозможность загрузить фото в общедоступный альбом надо проверить локально, возможно, так настроено демо...

0
pupsik pupsik 2 месяца назад #

Может я рано обновился и уже поправлено. Перезалью controllers photos. Может криво встало.

Не прокатило. js в модерне тоже опновил. Ну и ладно. Не велика потеря...

0
ALASTAR ALASTAR 2 месяца назад #

Я с нуля ставил через час после выхода релиза и таких проблем не заметил

0
pupsik pupsik 2 месяца назад #

Я же написал, что уже перезалил и не помогло. Значит проблема у меня. Найду, отпишусь.

Проблема решилась. В файле не хватало пару строк в МОЕМ шаблоне. Было ли так всегда, наверно. Я только вчера эту кнопку впервые нажал. 

templates/TEMPLATE/controllers/photos/widget.tpl.php

0
ALASTAR ALASTAR 2 месяца назад #

Подтверждаю с альбомами не каких ошибок нет, все нормально грузится и удаляется

Abobo Abobo 2 месяца назад #
Комментарий удален
0
bogosverch bogosverch 2 месяца назад #

Всех приветствую! Всегда радуюсь, когда вижу, что вышло обновление для инстанта) Супер!) Попробую оставить пару идей: можно сделать отдельную рубрику, где будут выкладываться сайты сделанные на инстанте. И да, раз теперь инстант поддерживает создание сборок, может будут официальные сборки под задачи? Н-р, сборка для софтового сайта, киносайта, комьюнити наподобие vc.ru, сайт с промокодами...?

0
UXSET UXSET 2 месяца назад #

После обновления в админке «Компоненты» «Управление событиями» не функционирует, включаю отключаю компоненты, там ничего не происходит

0
Zau4man Zau4man 2 месяца назад #

На чистой 2.17.0 проблемы не наблюдается. Обновлялись с 2.16.3? Или с более старой версии?

Попробуйте по ftp удалить папку templates/admincore и залить ее с чистого архива. 

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

Изображение
0
UXSET UXSET 2 месяца назад #

Все по инструкции сделал, удалил, капчу отключил. кэширование отключил. Все как написано.

0
Ranel Ranel 2 месяца назад #

Проверил после обновления, действительно есть описанный выше момент.

На чистой версии не пробовал, но на демо-сайте (demo.instantcms.ru) тоже самое (по крайней мере на момент написания этого комментария): при включении/выключении компонентов и последующем переходе в раздел управления событиями не предлагается автоматически перенастроить актуальные события. И их статус не меняется

Обновлялся с 2.16.3, всё как обычно, никаких проблем или ошибок
Файлы из списка удалял. Как и при каждом обновлении ранее

Перезалить templates/admincore (admincoreui?) тоже не помогло

+2
Zau4man Zau4man 2 месяца назад #

Теперь понятно, о чем вы.

Изображение

Судя по коду, проверка на включенность/отключенность компонента убрана из проверки.

Изображение

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

0
Ranel Ranel 2 месяца назад #

Спасибо!

0
pupsik pupsik 2 месяца назад #

Может ли кто протестить приходят ли уведомления о коментарии на пост? В настройках профиля в ПМ включено.

Я проверял у себя, писал коментарий от «Гостя» не приходит… От юзера тоже не приходят. 

0
fincheck fincheck 2 месяца назад #

А модерация включена? И не совсем понятно коментарий то публикуется или нет?

0
pupsik pupsik 2 месяца назад #

Да, комментируется без проблем. Модерация отключена. Не в ПМ не на емаил, ничего не приходит. Лайки приходят. до обновления точно работало. Хотелось бы знать не баг ли это, перед тем как я все распотрошу :)

0
fincheck fincheck 2 месяца назад #

На демо инстанта проверяли? 

0
pupsik pupsik 2 месяца назад #

Нет не проверял, надо еще один аккаунт регистрировать. Думал люди кто обновился откликнутся. Зря думал.

Да и как там проверить, надо 2-а аккаунта, а регистрация отключина. Сам себе коментарий оставил, ничего не произошло.

+2
fincheck fincheck 2 месяца назад #

Изображение

0
Fuze Fuze 2 месяца назад #

Если вы об этом

Изображение

То такие уведомления отсылаются тем, кто подписался на новые комментарии

Изображение

0
pupsik pupsik 2 месяца назад #

Да, об этом. Но если топик мой, зачем мне подписыватса на него? Зачем тогда меню в профиле уведомлять? Немного не понятна логика. Если я не хочу видеть я в профиле их отключу, а если хочу то автоматом подписан на свой же топик.

Это при каждом созданным мной топиком надо кнопочку нажимать? Не логичней ли её тогда ОТключать?

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

Изображение

0
Fuze Fuze 2 месяца назад #

Так было всегда. Если вы хотите получать уведомления, нужно подписаться.

Зачем тогда меню в профиле уведомлять?

Вы можете быть подписаны не только на свои записи.

0
pupsik pupsik 2 месяца назад #

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

Вроде это:

instantcms.ru/forum/informirovat-avtora-o-novyh-kommentarijah-v-2-4-0.html
Надо в заметки записать. Раньше не делал, все автоматом клепал. А зря. Спасибо.

+1
pupsik pupsik 2 месяца назад #

У вас там в Английском языке не так сформулирован текст оповещения. Шиворот на вывотот. Я в гитхубе отпишусь. А там уж смотрите сами.

0
Fuze Fuze 2 месяца назад #

У вас там в Английском языке не так сформулирован текст оповещения. Шиворот на вывотот.

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

0
pupsik pupsik 2 месяца назад #

Просто  "%s", "%s" выводятса поочередно. Тоесть местами их не поменяешь а под них надо настраиватса самому. 

Даже a href="%s">%s</a> нельзя свой поставить. Потому что каждая лишняя %s будет включена как «использованная».

0
pupsik pupsik 2 месяца назад #

Еще момент, когда человек подписан на свой топик, то ему должно проходить два уведомления? Один: что у топика новый коментарий и второй: Кто оставил коментарий? Так и должно? Зачем два раза?

Изображение

+1
pupsik pupsik 2 месяца назад #

Тут все ясно. Появляетса второе если ты делал логауд и логин. Можно игнорировать. Но баг с Гостем так и есть.

0
pupsik pupsik 2 месяца назад #

Еще один момент. Если вы подписаны на топик и гостям разрешено писать коментарии, то в уведомлениях не пишет имя гостя(что в поле коментария) или «Гость», вообще имя не пишет. Юзера, пишет, а гостя, нет.

define('LANG_COMMENTS_NEW_NOTIFY', '<a href="%s">%s</a> adds a new comment on the "%s" page');

0
No Name No Name 2 месяца назад #

Привет, а где настраивается доступ или полностью отключается — Добавлен механизм смены автора записи ТК;  ?, как убрать кнопку — «Передать» в записи типа контента ?

0
pupsik pupsik 2 месяца назад #
  1. .change_owner {
  2. display:none;
  3. }

Как в админке не знаю, не смотрел.

0
482 482 2 месяца назад #

я в админке этого не нашел. 

0
Fuze Fuze 2 месяца назад #

Менять владельца могут те, кому разрешено редактирование.

0
No Name No Name 2 месяца назад #

Полностью отключить этот функционал как то можно? Хорошо бы в настройки доступа это внести, спасибо 

0
Zau4man Zau4man 2 месяца назад #

Надеюсь, что появится опция или настройки прав доступа

Если нет, это будет мой первый компонент после выхода 2.17.1

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

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

С мобильного, демо.

Изображение

0
pupsik pupsik 2 месяца назад #

Только что проверил с мобильного. Нормально

.Изображение

0
rshabalin rshabalin 2 месяца назад #

😁

0
Fuze Fuze 2 месяца назад #

У меня нормально показывается

Изображение

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Теперь проверил, всё ок.

0
rshabalin rshabalin 2 месяца назад #

В настройках ленты активности не отмечаются галочки при выборе. Хотя уведомление приходит что настройки сохранены. 

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Изображение

Как реализовать такую кнопку? 

0
rshabalin rshabalin 2 месяца назад #

Создать в меню и вставить с помощью виджета. 

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Это я понимаю. Я про стили, какие классы добавлять?

+1
pupsik pupsik 2 месяца назад #

Ну чтож вы так. Обыкновенная bootstrap кнопка с иконкой plus-circle

  1. <?php html_svg_icon('solid', 'plus-circle', '14'); ?>

Изображение

+1
Fuze Fuze 2 месяца назад #

Это вопрос скорее форума, а не комментариев релиза.

  1. Создать меню в админке
  2. Разместить виджет меню на нужной позиции, выбрав созданное меню
  3. Либо вручную создать пункт, но тогда вам нужно заботиться о правах доступа, дублируя из из ТК
  4. Либо в шаблонах сделать как-то так:

Изображение

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Это я знаю. Какой класс добавить, чтобы выводилась как кнопка?)

0
Fuze Fuze 2 месяца назад #

Написать CSS стиль.

+1
pupsik pupsik 2 месяца назад #

btn btn-outline-primary

+1
Fuze Fuze 2 месяца назад #

Не годится для пункта меню, будет плохо. Посмотрите стили на этом сайте, и сделайте так же.

+1
pupsik pupsik 2 месяца назад #

Я думал в модерне bootstrap стоит. У меня вот так. А там уж на вкус и цвет. Может у него и не меню совсем :)

  1. <a class="btn btn-lg btn-primary-white" href="/posts/add"><i class="rotate fa-solid fa-pencil"></i> Create</a>

Лутше вот так наверно. С примерами и понятней.

getbootstrap.com/docs/4.0/components/buttons/

0
F_a_R_i_D F_a_R_i_D 2 месяца назад #

Благодарю)

+1
skewes skewes 2 месяца назад #

Спасибо большое за оновление и такие крутые штуки в ЦМС !!!

Обязательно поддержу проект, но немного позже)))

Fuze — благодарочка))) Спасибо, что делаете Инстант лучше и всем ребятам, кто принимает участие и неравнодушен, отдельное спасибо!!!

Kuper Kuper 2 месяца назад #
Комментарий удален
0
belov29 belov29 2 месяца назад #
Здравствуйте! У меня не работает номера страниц в тег title при пагинации.
0
Fuze Fuze 2 месяца назад #

Изображение

0
belov29 belov29 2 месяца назад #
А как в компонент уже работающий запихать?
0
Happy Happy 2 месяца назад #

фух, обновился без единой проблемы

0
pupsik pupsik 2 месяца назад #

Баг в админке с поиском. Такой не значительный баг, но все же. При поиске иконки поиск работает пока не дойдет до "-". После, ничего нет. Проверял на демо

Изображение

+1
Fuze Fuze 2 месяца назад #

Особенности работы сторонней библиотеки поиска. Замените в файле /templates/modern/controllers/admin/settings_theme_icon_list.tpl.php строку:

  1. <input type="search" class="form-control search" placeholder="<?php echo LANG_FIND; ?>">

На строку

  1. <input type="search" class="form-control fuzzy-search" placeholder="<?php echo LANG_FIND; ?>">
0
pupsik pupsik 2 месяца назад #

Вот, теперь все в порядке. Спасибо! 

0
Евгений Евгений 1 месяц назад #

Сделал сайт на Instant cms. Отличный движок, мне нравится. Очень рад, что движок обновляется, развивается.

0
Happy Happy 1 месяц назад #

В разделе виджеты и страницы админки добавлен показ подсказки на фантомном виджете с названием страницы, к которой он привязан;

Где это смотреть эти подсказки?

+2
pupsik pupsik 1 месяц назад #

Изображение

Я думаю это про это. При наведении мышкой, показывает где именно этот виджет расположен… Очень удобно кстати. Не надо бегать по всем вкладкам и искать его показ.

0
Happy Happy 1 месяц назад #

Понял, я искал типа глазика)

0
Happy Happy 1 месяц назад #

Кстати пишу с мобилы, при ответе или написании тут комента вылазит два редактора 

Изображение

0
Zau4man Zau4man 1 месяц назад #

В котором из них пишете, чтобы отправилось?))

0
Happy Happy 1 месяц назад #

в первом, во втором курсор не ставится )))

0
pupsik pupsik 1 месяц назад #

Глючит наверно. Первый вариант мобильной версии, во второй десктопный… Может Фузе обновляет чего-то там.

0
Денис Васильевич Денис Васильевич 1 месяц назад #

С нетерпением ждём релиза биллинга )

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

0
Голдман Сакс Голдман Сакс 25 дней назад #

После обновления исчез редактор Tinymce. Напрочь, вместе с формой добавления текста.

Лечится выбором другого редактора. Но тюня нравился.

0
F_a_R_i_D F_a_R_i_D 14 дней назад #

Вопрос такой:

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

+2
Zau4man Zau4man 14 дней назад #

Когда биллинг будет бесплатным в сборке

будет анонс и все инструкции

0
F_a_R_i_D F_a_R_i_D 13 дней назад #

Жаль, что пока нету информации. Запустил заново сайт, незнаю биллинг подключать или ждать релиза.

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.