Zau4man

Zau4man

+1110
Репутация
19741
Рейтинг
#1 Значение из профиля пользователя 18 апреля 2023 в 18:54

 lakomet, к сожалению, я не нашел способа дополнить значения в этом поле.

#2 Значение из профиля пользователя 18 апреля 2023 в 16:06

 lakomet, могу. Но дело не только в доступности выбора сторонних полей. Поле, которое недоступно для выбора, может хранить данные в другом формате. Например :1:2:

А поле, у которого вы его хотите выбрать, ожидает, например, 11000

И будет конфликт. 

Именно из-за этого список полей и ограничен теми, что максимально универсальны.

Какое поле нужно? В каком поле нужно?

#3 Значение из профиля пользователя 18 апреля 2023 в 13:00

 lakomet, список типов полей, доступных в «Значение из профиля пользователя» строго задан в коде github.com/instantsoft/icms2/blob/aa7c54d360b86ae70f87172398fc63d530684425/system/controllers/admin/forms/form_ctypes_field.php#L302

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

#4 [ЕСТЬ РЕШЕНИЕ] Страница скачет при прокрутке 16 апреля 2023 в 22:41

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

По стилям задумка вроде такая, но по внешнему виду не реализована.

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

#5 [ЕСТЬ РЕШЕНИЕ] Виджет контента показывает приватные записи 16 апреля 2023 в 16:55

 Саня, вот готовое решение

Изображение

Когда я писал свое сообщение, надеялся, что вы код напишете сами :) Тут 8 строчек кода, брать за такое деньги грешно

Файл из приложения закиньте в system\controllers\widgets\hooks Обновите события в Компоненты — События

Укажите only_own_items в настройках виджета в Применить хук 

Изображение
Прикрепленный файл
only-own-items.zip 349 байт
#6 Форум Loadырь, отключение удаление поля подписи профиля 16 апреля 2023 в 16:37

 Loadырь, можно было. но в 12 ночи было принято решение открыть инсталлятор форума и взять код оттуда :)

#7 [ЕСТЬ РЕШЕНИЕ] Виджет контента показывает приватные записи 15 апреля 2023 в 23:04

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

пользователь будет видеть только свои записи

#8 [ЕСТЬ РЕШЕНИЕ] Криво работает лента активности 11 апреля 2023 в 21:04

В приложении хак-фикс, выводящий во вкладке «Моя лента» действия юзера и его друзей, а не только его друзей.

Файл из архива из приложения разместите в system/controllers/activity/hooks согласившись на замену

От оригинального он отличается так

Изображение

И будет так (слева вкладку смотрит юзер, справа — админ)

Изображение

Обратите внимание. Это хак. Т.е. при обновлении движка правки скорее всего потеряются (если в обновлении этот файл изменится). Но, по данным разведки, в 2.16.0 вкладка «Моя лента» претерпит улучшения. Глядишь, хак больше не понадобится.

Прикрепленный файл
user-tab-show.zip 1 Кб
#9 [ЕСТЬ РЕШЕНИЕ] Штрих код 10 апреля 2023 в 16:05

 Loadырь, это типа это

Изображение

но поля готового нет. Делал под заказ.

#10 Ztelegram - ручной и автоматический постинг в телеграм 9 апреля 2023 в 23:05

На основе пожеланий пользователей вышло обновление 1.0.5 компонента instantcms.ru/addons/ztelegram/view-addons-versions

В шаблоне репоста стало доступным название категории. Для вывода названия используйте тег {cat}

Изображение

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

Изображение

В языковой файл вынесены две переменные. Это название кнопки в меню действий и предупреждение об повторном репосте. Вы можете изменить их под свои нужды в файле system/languages/ru/controllers/ztelegram/ztelegram.php

#11 [ЕСТЬ РЕШЕНИЕ] Виджет контента показывает приватные записи 9 апреля 2023 в 22:52

 Саня, в версии 2.16.0 появится возможность указать хук в настройках виджета список контента github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/system/controllers/content/widgets/list/options.form.php#L176

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

С помощью этой возможности делал для интернет-магазина виджет «Вы смотрели»

1. На текущем 2.15.2 обновил файлы виджета. 
2. Вывел виджет список контента, настроил. В опциях указал такой хук

Изображение

3. Хук закинул в компонент корзины. Можете разместить его в любом другом компоненте, изменив название класса в файле
В моем случае хук лежит в компоненте basket system/controllers/basket/hooks/shop_views_filter.php

  1. <?php
  2. class onBasketShopViewsFilter extends cmsAction {
  3. public function run($data){
  4. list($ctype,$model) = $data;
  5. //инфа о пользователе
  6. $session_id = $this->getSessionId();
  7. $user_id = cmsUser::get('id');
  8. if($user_id){//пользователь
  9. $model->joinRight('basket_views','bv', "bv.item_id = i.id AND (bv.user_id = $user_id OR bv.session_id = '$session_id')");
  10. }else{//гость
  11. $model->joinRight('basket_views','bv', "bv.item_id = i.id AND bv.user_id = 0 AND bv.session_id = '$session_id'");
  12. }
  13. return [$ctype,$model];
  14. }
  15. }

Получилось так

Изображение

#12 [ЕСТЬ РЕШЕНИЕ] Непонятное поведение метода parse() в поле 8 апреля 2023 в 22:11

 IamB, ответ тут github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/system/core/formfield.php#L544

Добавьте в свое поле метод getStringValue. Про то, что он делает, есть информация в документации docs.instantcms.ru/dev/forms/field-file

Добавлено спустя 8 минут

Добавлю, что в вашем случае будет достаточно добавить примерно так

  1. public function getStringValue($value) {
  2. return '';
  3. }
#13 [ЕСТЬ РЕШЕНИЕ] Виджет контента показывает приватные записи 7 апреля 2023 в 20:54

 Саня, судя по коду, такое поведение и задумано. Приватные записи помечаются флагом тут  github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/system/controllers/content/widgets/list/widget.php#L131

А потом на основе этих данных в виджете выводится только название записи и замочек тут github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/templates/modern/controllers/content/widgets/list/list.tpl.php#L30

Без ссылок. Если вы видите 404, то у вас, скорее всего, не обновлен шаблон виджета.

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

#14 Новый релиз 24.03.23 - НОЧНАЯ СБОРКА 7 апреля 2023 в 13:26

 talerbiz, что изменится от знания? Запускайте сайт на текущей версии, потом обновитесь.

#15 Поле Список: мультивыбор с или 6 апреля 2023 в 15:57

Итак. В приложении архив list_fix20230404_1.0.0.zip для фикса двух проблем.

1. При использовании «Мультивыбор» в свойствах категории есть проблема. Если добавить варианты в настройках «Элементы списка», то сломается фильтрация. Свойство в категории перестанет искать совпадения.
Для полей это уже поправлено таким образом github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/system/fields/listbitmask.php#L203
Но этот код срабатывает ТОЛЬКО при сохранении полей. При сохранении свойств «сломаная» битовая маска не «чинится»
Эту проблему исправляет файл system/controllers/zfixlistbitmaskprops/hooks/ctype_prop_before_update.php фикса

Но чтобы хук сработал в версии 2.15.2 и ниже, нужно внести правку в файл system/controllers/content/backend/model.php как тут
 github.com/instantsoft/icms2/pull/1440/commits/f67d8c02797b090d210dfdc07aad84e0f5f635c6
С версии 2.16.0 эта правка будет «в коробке»

2. В свойствах категорий можно использовать только определенный набор полей, которые перечислены тут github.com/instantsoft/icms2/blob/fbeebde236f2a5206fdac941a8a939e7b515b7e3/system/controllers/admin/forms/form_ctypes_prop.php#L63
Для добавления в этот список нового поля «Мультивыбор с или» и предназначен файл system/controllers/listindex/hooks/form_admin_ctypes_prop.php фикса
Правка будет работать в 2.15.2 и ниже, в 2.16.0 будут изменения в js файлах админки, и возможно понадобится немного изменить js код фикса.

Прикрепленный файл
list-fix20230404-1-0-0.zip 5 Кб
🍪Мы используем файлы cookie для работы сайта. Читать подробнее.