+ {{ form_label(form.children.min) }}
+ {{ form_widget(form.children.min, {
+ attr: {
+ 'data-seconds': 0,
+ }
+ }) }}
+
+
+
+ {{ form_label(form.children.max) }}
+ {{ form_widget(form.children.max, {
+ attr: {
+ 'data-seconds': 0,
+ }
+ }) }}
+
+ {% endblock %}
+ {% endembed %}
+{% endblock _search_createdRange_row %}
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/list.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/list.html.twig
index 54b684a274..6d248f01c9 100644
--- a/src/bundle/Resources/views/themes/admin/account/notifications/list.html.twig
+++ b/src/bundle/Resources/views/themes/admin/account/notifications/list.html.twig
@@ -1,12 +1,8 @@
{% trans_default_domain 'ibexa_notifications' %}
{% embed '@ibexadesign/ui/component/table/table.html.twig' with {
- head_cols: [
- { content: 'notification.type'|trans|desc('Type') },
- { content: 'notification.description'|trans|desc('Description') },
- { content: 'notification.date'|trans|desc('Date') },
- ],
- class: 'ibexa-table--notifications',
+ head_cols: [],
+ class: 'ibexa-table--not-striped ibexa-list--notifications',
attr: {
'data-notifications': path('ibexa.notifications.render.page'),
'data-notifications-count': path('ibexa.notifications.count'),
@@ -16,27 +12,11 @@
} %}
{% block tbody %}
{% if pager.count is same as(0) %}
- {% include '@ibexadesign/ui/component/table/empty_table_body_row.html.twig' with {
- colspan: 3,
- empty_table_info_text: 'bookmark.list.empty'|trans|desc('You have no notifications.'),
- } %}
+ {{ 'bookmark.list.empty'|trans|desc('You have no notifications.') }}
{% else %}
- {% block tbody_not_empty %}
- {{ notifications|raw }}
- {% endblock %}
+ {% for notification in notifications %}
+ {{ notification|raw }}
+ {% endfor %}
{% endif %}
{% endblock %}
{% endembed %}
-
-{% if pager.haveToPaginate %}
-
-{% endif %}
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/list_all.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/list_all.html.twig
new file mode 100644
index 0000000000..ef5044294a
--- /dev/null
+++ b/src/bundle/Resources/views/themes/admin/account/notifications/list_all.html.twig
@@ -0,0 +1,146 @@
+{% extends '@ibexadesign/ui/layout.html.twig' %}
+
+{% import '@ibexadesign/ui/component/macros.html.twig' as html %}
+{% import _self as macros %}
+{% from '@ibexadesign/ui/component/macros.html.twig' import results_headline %}
+
+{% trans_default_domain 'ibexa_notifications' %}
+{% form_theme form_remove '@ibexadesign/ui/form_fields.html.twig' %}
+
+{% block main_container_class %}{{ parent() }} ibexa-notification-list__container {% endblock %}
+
+{% block title %}{{ 'ibexa_notifications'|trans|desc('Notifications') }}{% endblock %}
+
+{% block header %}
+
+ {{ notification.created|ibexa_short_datetime }}
+
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' %}
{% block content %}
-
- {{ icon }}
- {{ notification_type }}
+
+
+ {{ include('@ibexadesign/ui/component/multilevel_popup_menu/multilevel_popup_menu.html.twig', {
+ groups: [
+ {
+ id: "notification-popup-menu-" ~ notification.id,
+ items: popup_items,
+ },
+ ],
+ attr: {
+ 'data-trigger-element-selector': '#ibexa-notifications-modal-popup-trigger-' ~ notification.id,
+ 'data-initial-branch-placement': 'bottom-end',
+ },
+ branch_attr: {
+ 'class': 'ibexa-notification-actions-popup-menu',
+ }
+ }) }}
{% endblock %}
{% endembed %}
- {{ message }}
- {{ date }}
{% endblock %}
{% endembed %}
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/list_item_all.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/list_item_all.html.twig
new file mode 100644
index 0000000000..1c4d260563
--- /dev/null
+++ b/src/bundle/Resources/views/themes/admin/account/notifications/list_item_all.html.twig
@@ -0,0 +1,142 @@
+{% import "@ibexadesign/ui/component/macros.html.twig" as html %}
+
+{% trans_default_domain 'ibexa_notifications' %}
+
+{% set is_read = notification.isPending == 0 %}
+
+{% if wrapper_class_list is not defined %}
+ {% set wrapper_class_list = 'ibexa-notifications-modal__item' ~ (is_read ? ' ibexa-notifications-modal__item--read') %}
+{% endif %}
+
+{% set icon %}
+ {% block icon %}
+
+
+
+ {% endblock %}
+{% endset %}
+
+{% set date %}
+ {% block date %}
+
{{ notification.created|ibexa_short_datetime }}
+ {% endblock %}
+{% endset %}
+
+{% set notification_type %}
+ {% block notification_type %}
+
+ {% endblock %}
+{% endset %}
+
+{% set message %}
+ {% block message %}
+
{{ message }}
+ {% endblock %}
+{% endset %}
+
+{% set status %}
+
+
+
+ {{is_read ? 'notification.read'|trans|desc('Read') : 'notification.unread'|trans|desc('Unread')}}
+
+
+{% endset %}
+
+{% set icon_show %}
+
+{% endset %}
+
+{% set icon_mail_open %}
+
+{% endset %}
+
+{% set icon_mail %}
+
+{% endset %}
+
+{% embed '@ibexadesign/ui/component/table/table_body_row.html.twig' with {
+ class: wrapper_class_list ~ (wrapper_additional_classes is defined ? ' ' ~ wrapper_additional_classes),
+ attr: {
+ 'data-notification-id': notification.id,
+ 'data-notification-read': path('ibexa.notifications.mark_as_read', { 'notificationId': notification.id }),
+ 'data-notification-unread': path('ibexa.notifications.mark_as_unread', { 'notificationId': notification.id }),
+}
+} %}
+ {% block body_row_cells %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' with { class: 'ibexa-table__cell--has-checkbox' } %}
+ {% block content %}
+
+
+
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' with { class: 'ibexa-notification-view-all__cell-wrapper' } %}
+ {% block content %}
+
+
+
+ {{ notification_type }}
+ {{ message }}
+
+
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' %}
+ {% block content %}
+ {{ status }}
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' %}
+ {% block content %}
+ {{ date }}
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' %}
+ {% block content %}
+
+ {% endblock %}
+ {% endembed %}
+ {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' %}
+ {% block content %}
+
+
+ {% endblock %}
+ {% endembed %}
+ {% endblock %}
+{% endembed %}
+
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/list_item_deleted.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/list_item_deleted.html.twig
index 97a9a41d33..64930fc793 100644
--- a/src/bundle/Resources/views/themes/admin/account/notifications/list_item_deleted.html.twig
+++ b/src/bundle/Resources/views/themes/admin/account/notifications/list_item_deleted.html.twig
@@ -1,20 +1,29 @@
-{% extends '@ibexadesign/account/notifications/list_item.html.twig' %}
+{% extends template_to_extend %}
{% trans_default_domain 'ibexa_notifications' %}
-{% set wrapper_additional_classes = 'ibexa-notifications-modal__item--permanently-deleted' %}
+{% set wrapper_additional_classes = 'ibexa-notifications-modal__item' %}
+
+{% block icon %}
+
+
+
+{% endblock %}
{% block notification_type %}
-
+
{{ 'notification.permanently_deleted'|trans|desc('Deleted')}}
{% endblock %}
{% block message %}
- {% embed '@ibexadesign/ui/component/table/table_body_cell.html.twig' with { class: 'ibexa-notifications-modal__description' } %}
{% block content %}
- {{ 'notification.title'|trans|desc('Title:') }} {{ title }}
- {{ 'notification.no_longer_available'|trans|desc('The Content item is no longer available')}}
+
+ {{ 'notification.title'|trans|desc('Title:') }}
+ {{ title }}
+
+ {{ 'notification.no_longer_available'|trans({}, 'ibexa_notifications')|desc('The Content item is no longer available')}}
{% endblock %}
- {% endembed %}
{% endblock %}
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/modal.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/modal.html.twig
deleted file mode 100644
index cf339a35d4..0000000000
--- a/src/bundle/Resources/views/themes/admin/account/notifications/modal.html.twig
+++ /dev/null
@@ -1,24 +0,0 @@
-{% trans_default_domain 'ibexa_notifications' %}
-
-{% embed '@ibexadesign/ui/component/modal/modal.html.twig' with {
- title: 'ibexa_notifications'|trans|desc('Notifications'),
- class: 'ibexa-notifications-modal',
- no_header_border: true,
- id: 'view-notifications',
- attr_close_btn: {
- 'data-notifications-total': '',
- },
-} %}
- {% block body_content %}
-
-
-
-
- {{ render(controller('Ibexa\\Bundle\\AdminUi\\Controller\\NotificationController::renderNotificationsPageAction', {
- 'page': 1,
- })) }}
-
- {% endblock %}
-{% endembed %}
diff --git a/src/bundle/Resources/views/themes/admin/account/notifications/side_panel.html.twig b/src/bundle/Resources/views/themes/admin/account/notifications/side_panel.html.twig
new file mode 100644
index 0000000000..6abd1ae9cb
--- /dev/null
+++ b/src/bundle/Resources/views/themes/admin/account/notifications/side_panel.html.twig
@@ -0,0 +1,45 @@
+{% set max_visible_notifications_count = 10 %}
+
+{% embed '@ibexadesign/ui/component/side_panel/side_panel.html.twig' with {
+ title: 'ibexa_notifications'|trans|desc('Notifications'),
+ attr: {
+ 'data-actions': "create",
+ class: 'ibexa-notifications-modal ibexa-scroll-disabled',
+ id: 'view-notifications',
+ },
+}%}
+ {% block header %}
+
+ {% endblock %}
+
+ {% block content %}
+
+
+
+
+
+ {{ render(controller('Ibexa\\Bundle\\AdminUi\\Controller\\NotificationController::renderNotificationsPageAction', {
+ 'page': 1,
+ })) }}
+
+
+ {% endblock %}
+
+ {% block footer %}
+
+ {% endblock %}
+{% endembed %}
diff --git a/src/bundle/Resources/views/themes/admin/ui/component/modal/modal.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/modal/modal.html.twig
index 5b669cb280..2a81adcf57 100644
--- a/src/bundle/Resources/views/themes/admin/ui/component/modal/modal.html.twig
+++ b/src/bundle/Resources/views/themes/admin/ui/component/modal/modal.html.twig
@@ -23,9 +23,7 @@
}) %}
{% if id is defined %}
- {% set attr = attr|default({})|merge({
- id,
- }) %}
+ {% set attr = attr|default({})|merge({ id }) %}
{% endif %}
{% if has_static_backdrop|default(false) %}
diff --git a/src/bundle/Resources/views/themes/admin/ui/component/side_panel/side_panel.html.twig b/src/bundle/Resources/views/themes/admin/ui/component/side_panel/side_panel.html.twig
new file mode 100644
index 0000000000..495bc7ab56
--- /dev/null
+++ b/src/bundle/Resources/views/themes/admin/ui/component/side_panel/side_panel.html.twig
@@ -0,0 +1,49 @@
+{% import '@ibexadesign/ui/component/macros.html.twig' as html %}
+
+{% trans_default_domain 'ibexa_admin_ui' %}
+
+{% set config_panel_main_class = 'ibexa-side-panel ibexa-side-panel--hidden' %}
+{% set attr_footer = attr_footer|default({})|merge({
+ class: ('ibexa-side-panel__footer'
+ ~ (footer_class is defined ? footer_class ~ ''))|trim,
+}) %}
+
+
+{% set attr = attr|default({})|merge({
+ class: attr.class|default('')|trim ~ ' ' ~ config_panel_main_class,
+}) %}
+
+{% if id is defined %}
+ {% set attr = attr|merge({ id }) %}
+{% endif %}
+
+
+ {% block panel %}
+
+ {% block header %}
+
+
{{ title }}
+ {% endblock %}
+ {% block content %}{% endblock %}
+
+
+ {% block footer %}
+
+ {% endblock %}
+
+
+ {% endblock %}
+
+
diff --git a/src/bundle/Resources/views/themes/admin/ui/menu/user.html.twig b/src/bundle/Resources/views/themes/admin/ui/menu/user.html.twig
index a57a98f057..99681e75c4 100644
--- a/src/bundle/Resources/views/themes/admin/ui/menu/user.html.twig
+++ b/src/bundle/Resources/views/themes/admin/ui/menu/user.html.twig
@@ -6,9 +6,8 @@