forked from Sylius/Stack
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbreadcrumbs.html.twig
More file actions
41 lines (35 loc) · 2.06 KB
/
breadcrumbs.html.twig
File metadata and controls
41 lines (35 loc) · 2.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{% from '@SyliusBootstrapAdminUi/shared/helper/breadcrumbs.html.twig' import breadcrumbs %}
{% set configuration = hookable_metadata.context.configuration|default(null) %}
{% set resource = hookable_metadata.context.resource|default(null) %}
{% set metadata = hookable_metadata.context.metadata|default(null) %}
{% if metadata is not null and configuration is not null %}
{% set resource_index = metadata.applicationName~'.ui.'~metadata.pluralName %}
{% set index_url = path(
configuration.vars.index.route.name|default(configuration.getRouteName('index')),
configuration.vars.index.route.parameters|default(configuration.vars.route.parameters|default({}))
) %}
{% endif %}
{% set rendered_field_prefix = hookable_metadata.configuration.rendered_field_prefix|default(null) %}
{% set field_name = hookable_metadata.configuration.rendered_field|default('') %}
{% set rendered_field = rendered_field_prefix ~ (attribute(resource, field_name) is defined ? attribute(resource, field_name) : null) %}
{% set resource_edit_name = rendered_field|default(resource.translations[app.locale].name|default(resource.code|default(resource.id|default(null)))) %}
{% set show_route_name = configuration.vars.index.route.name|default(configuration.getRouteName('show')|default(null)) %}
{% if show_route_name is not null and sylius_route_exists(show_route_name) %}
{% set show_url = path(show_route_name, { id: resource.id }) %}
{% set resource_edit = { name: resource_edit_name, url: show_url} %}
{% else %}
{% set resource_edit = { name: resource_edit_name, active: true} %}
{% endif %}
{% if resource_index is defined %}
{{ breadcrumbs([
{ name: 'sylius.ui.dashboard', url: path('sylius_admin_ui_dashboard'), active: false },
{ name: resource_index, url: index_url, active: false },
resource_edit,
{ name: 'sylius.ui.edit'|trans, active: false }
]) }}
{% else %}
{{ breadcrumbs([
{ name: 'sylius.ui.dashboard', url: path('sylius_admin_ui_dashboard'), active: false },
{ name: 'sylius.ui.edit'|trans, active: false }
]) }}
{% endif %}