You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Enhanced descriptions for various templates and actions in the favorites list.
- Clarified the notification system, detailing the chain of notification methods and customization options.
- Updated integration instructions to reflect changes in pagination and merging lists.
- Removed deprecated parameters and improved overall clarity in the documentation.
|`tplFavoritesPageDemo`|Тот же файл, что и `tplFavoritesPage`: при `&tpl=tplFavoritesPageDemo` или `&extendedToolbar=1` включается панель «Каталог / Очистить / Поделиться»|
|`tplMs3fBtn`| Кнопка добавления/удаления в избранное (сниппет `ms3FavoritesBtn`) |
@@ -86,9 +86,6 @@ title: Подключение на сайте
86
86
|`--ms3f-color`| Цвет текста |
87
87
|`--ms3f-price-color`| Цвет цены |
88
88
|`--ms3f-button-active`| Цвет активной кнопки (товар в списке) |
89
-
|`--toast-bg`| Фон toast-уведомления |
90
-
|`--toast-color`| Текст toast |
91
-
|`--toast-radius`| Скругление toast |
92
89
93
90
Пример:
94
91
@@ -103,6 +100,18 @@ title: Подключение на сайте
103
100
}
104
101
```
105
102
103
+
## Уведомления (toast)
104
+
105
+
Вместо встроенного DOM-toast используется цепочка:
106
+
107
+
1.**`ms3fConfig.notify(variant, text)`** — если функция задана и возвращает `true`, стандартный вывод не выполняется (полностью своё UI).
108
+
2.**`window.ms3Message.show`** (MiniShop3) — если доступен.
109
+
3.**iziToast** — если на странице уже есть глобальный `iziToast`; иначе скрипт и стили один раз подгружаются из `ms3fConfig.iziToastBaseUrl` (по умолчанию задаётся в `ms3fLexiconScript`).
110
+
111
+
Отключить стандартные уведомления: `window.ms3fConfig.showToast = false` (до загрузки `favorites.js`).
112
+
113
+
Кастомизация внешнего вида iziToast — через API библиотеки после загрузки или через свой `notify`.
-**Страница /wishlist/** — серверный вывод с pdoPage или JS-режим
41
+
-**Страница /wishlist/** — табы и контейнер от `ms3FavoritesPage`, карточки дорисовывает JS; счётчики табов и `ms3f.total` на сервере; пагинация отдельно (ms3FavoritesIds + pdoPage)
42
42
-**Интеграция с корзиной** — «Добавить все в корзину», «Добавить выбранные»
43
43
-**Популярность** — «У N пользователей в избранном»
Цепочка уведомлений по умолчанию: `notify` → `window.ms3Message.show` (MiniShop3) → iziToast (подгрузка из `ms3fConfig.iziToastBaseUrl`, задаётся в `ms3fLexiconScript`). Системная настройка `use_minishop3_toast` в пакете не используется.
304
+
298
305
## Плейсхолдер ms3f.total
299
306
300
307
Серверный счётчик количества элементов в избранном. Устанавливается сниппетами [ms3FavoritesPage](snippets/ms3FavoritesPage) и [ms3Favorites](snippets/ms3Favorites).
Copy file name to clipboardExpand all lines: docs/components/ms3favorites/quick-start.md
+2-23Lines changed: 2 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -82,7 +82,7 @@ title: Быстрый старт
82
82
83
83
:::
84
84
85
-
При клике товар добавляется или удаляется из списка. Toast-уведомление показывается автоматически.
85
+
При клике товар добавляется или удаляется из списка. Уведомление показывается автоматически (iziToast / MiniShop3 `ms3Message` / свой `ms3fConfig.notify` — см. [Интеграция](integration)).
Для авторизованных пользователей — серверный вывод с разбивкой по страницам:
182
-
183
-
::: code-group
184
-
185
-
```modx
186
-
[[!ms3FavoritesPage?
187
-
&usePdoPage=`1`
188
-
&limit=`12`
189
-
]]
190
-
```
191
-
192
-
```fenom
193
-
{'!ms3FavoritesPage' | snippet : [
194
-
'usePdoPage' => 1,
195
-
'limit' => 12
196
-
]}
197
-
```
198
-
:::
199
-
200
-
Гости при пустой БД по-прежнему видят JS-режим (данные из localStorage).
179
+
**Пагинация:** у сниппета `ms3FavoritesPage`**нет** встроенного pdoPage — карточки на `/wishlist/` всегда подгружает `favorites.js`. Чтобы вывести избранное постранично на **отдельной** странице, используйте цепочку **ms3FavoritesIds → pdoPage → ms3Favorites** (или `msProducts`) — примеры в [Интеграции и кастомизации](integration).
|`ms3favorites.max_items`| Максимум товаров в блоке «Избранное» (localStorage/cookie и вывод) |`20`| 20–50 для большинства сайтов; макс. 100. Учитывается в JS при наличии ms3fLexiconScript. |
15
15
|`ms3favorites.storage_type`| Тип хранилища списка избранного |`localStorage`|`localStorage` — данные в браузере до очистки; `cookie` — общий домен для поддоменов, срок 30 дней. |
16
-
|`ms3favorites.guest_db_enabled`| Сохранять список гостя в БД |`true`| Включить для серверного счётчика и страницы /wishlist/ (usePdoPage) для гостей. Идентификация по session_id. |
16
+
|`ms3favorites.guest_db_enabled`| Сохранять список гостя в БД |`true`| Включить для серверного счётчика, корректных **счётчиков табов** на `/wishlist/` и синхронизации гостя. Идентификация по session_id. |
17
17
|`ms3favorites.guest_ttl_days`| Срок хранения записей гостей (дней) |`30`| 0 — не удалять. Учитывается при автоочистке (cron). |
18
18
|`ms3favorites.share_ttl_days`| Срок действия ссылки шаринга (дней) |`90`| 0 — без срока. |
19
19
|`ms3favorites.max_lists`| Максимум списков на пользователя |`10`| Лимит именованных списков (default, gifts, plans и др.). Максимум — 20. |
20
20
|`ms3favorites.comments_enabled`| Включить заметки к элементам |`true`| Показывать textarea для заметок в карточках. При отключении update_comment отклоняется. |
21
21
|`ms3favorites.check_resource_availability`| Проверять доступность ресурса перед добавлением |`false`| При включении добавляются только опубликованные и неудалённые ресурсы (sync, copy_share). |
22
22
|`ms3favorites.list_page`| URL страницы списка (для ms3FavoritesLists) |`wishlist/`| Относительный путь для формирования ссылок в списках. |
23
23
24
-
## Области настроек
24
+
## Область в менеджере MODX
25
25
26
-
-**default** — `max_items`, `storage_type` (фронт, блок вывода).
27
-
-**sync** — `guest_db_enabled`, `guest_ttl_days` (хранение в БД, плагины).
0 commit comments