Skip to content

Commit

Permalink
Add update page with headers (#41)
Browse files Browse the repository at this point in the history
  • Loading branch information
loic425 authored Sep 18, 2024
2 parents 468e484 + e2aada6 commit 9251c54
Show file tree
Hide file tree
Showing 5 changed files with 126 additions and 2 deletions.
60 changes: 60 additions & 0 deletions src/BootstrapAdminUi/config/app/twig_hooks/common/update.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
<?php

/*
* This file is part of the Sylius package.
*
* (c) Sylius Sp. z o.o.
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/

declare(strict_types=1);

namespace Symfony\Component\DependencyInjection\Loader\Configurator;

return static function (ContainerConfigurator $container): void {
$container->extension('twig_hooks', [
'hooks' => [
'sylius_admin.common.update' => [
'sidebar' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/sidebar.html.twig',
],
'content' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/content.html.twig',
],
],
'sylius_admin.common.update.content' => [
'header' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/content/header.html.twig',
],
],
'sylius_admin.common.update.content.header' => [
'breadcrumbs' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/update/content/header/breadcrumbs.html.twig',
],
'title_block' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/content/header/title_block.html.twig',
],
],
'sylius_admin.common.update.content.header.title_block' => [
'title' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/update/content/header/title_block/title.html.twig',
],
'actions' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/update/content/header/title_block/actions.html.twig',
],
],
'sylius_admin.common.update.content.header.title_block.actions' => [
'cancel' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/content/header/title_block/actions/cancel.html.twig',
'priority' => -200,
],
'update' => [
'template' => '@SyliusBootstrapAdminUi/shared/crud/common/content/header/title_block/actions/update.html.twig',
'priority' => -300,
],
],
],
]);
};
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,14 @@

{% set configuration = hookable_metadata.context.configuration %}

{% set index_url = sylius_generate_redirect_path(app.request.headers.get('referer')|default(path(
{#{% set index_url = sylius_generate_redirect_path(app.request.headers.get('referer')|default(path(#}
{# configuration.vars.index.route.name|default(configuration.getRouteName('index')),#}
{# configuration.vars.index.route.parameters|default(configuration.vars.route.parameters|default({}))#}
{#))) %}#}

{% set index_url = path(
configuration.vars.index.route.name|default(configuration.getRouteName('index')),
configuration.vars.index.route.parameters|default(configuration.vars.route.parameters|default({}))
))) %}
) %}

{{ button.cancel(sylius_test_form_attribute('cancel-changes-button')|merge({ text: 'sylius.ui.cancel'|trans, url: index_url, class: 'btn' })) }}
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{% from '@SyliusBootstrapAdminUi/shared/helper/breadcrumbs.html.twig' import breadcrumbs %}

{% set configuration = hookable_metadata.context.configuration %}
{% set resource = hookable_metadata.context.resource %}
{% set metadata = hookable_metadata.context.metadata %}

{% 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({}))
) %}

{% 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))) %}
{% set show_route_name = configuration.vars.index.route.name|default(configuration.getRouteName('show')) %}

{#{% if 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 %}#}

{% set dashboard_path = hookable_metadata.context.routing.dashboard_path|default('/admin') %}

{{ breadcrumbs([
{ name: 'sylius.ui.dashboard', url: dashboard_path, active: false },
{ name: resource_index, url: index_url, active: false },
resource_edit,
{ name: 'sylius.ui.edit'|trans, active: false }
]) }}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{% import '@SyliusBootstrapAdminUi/shared/helper/button.html.twig' as button %}

<div class="col-12 col-md-auto ms-auto d-print-none">
<div class="btn-list">
{% hook 'actions' %}
</div>
</div>
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{% import '@SyliusBootstrapAdminUi/shared/helper/header.html.twig' as header %}

{% if hookable_metadata.context.metadata is defined and hookable_metadata.context.configuration is defined %}
{% set configuration = hookable_metadata.context.configuration %}
{% set metadata = hookable_metadata.context.metadata %}

{% set singular_name = hookable_metadata.configuration.resource_name|default(metadata.applicationName ~ '.ui.' ~ _context.metadata.name) %}
{% set header = hookable_metadata.configuration.header|default(null) %}
{% else %}
{% set singular_name = hookable_metadata.configuration.resource_name %}
{% set header = hookable_metadata.configuration.header %}
{% endif %}

<div class="col-12 col-md-6">
<div class="d-md-flex gap-2 align-items-center">
{{ header.h1(header is not null ? header|trans : 'sylius.ui.edit'|trans ~ ' ' ~ singular_name|trans) }}
</div>
</div>

0 comments on commit 9251c54

Please sign in to comment.