[Admin][ProductOption] Added product option grid configuration

This commit is contained in:
Grzegorz Sadowski 2016-04-20 09:16:19 +02:00
parent d821071f9b
commit 8f93a11e11
10 changed files with 91 additions and 3 deletions

View file

@ -40,10 +40,10 @@ final class MainMenuBuilder extends AbstractAdminMenuBuilder
*/ */
private function addConfigurationMenu(ItemInterface $menu) private function addConfigurationMenu(ItemInterface $menu)
{ {
$this->configureConfigurationSubMenu($menu);
$this->configureMarketingSubMenu($menu); $this->configureMarketingSubMenu($menu);
$this->configureCustomersSubMenu($menu); $this->configureCustomersSubMenu($menu);
$this->configureCatalogSubMenu($menu); $this->configureCatalogSubMenu($menu);
$this->configureConfigurationSubMenu($menu);
} }
/** /**
@ -150,15 +150,21 @@ final class MainMenuBuilder extends AbstractAdminMenuBuilder
*/ */
private function configureCatalogSubMenu(ItemInterface $menu) private function configureCatalogSubMenu(ItemInterface $menu)
{ {
$assortmentSubMenu = $menu $catalogSubMenu = $menu
->addChild('catalog') ->addChild('catalog')
->setLabel('sylius.menu.admin.main.catalog.header') ->setLabel('sylius.menu.admin.main.catalog.header')
; ;
$assortmentSubMenu $catalogSubMenu
->addChild('attributes', ['route' => 'sylius_admin_product_attribute_index']) ->addChild('attributes', ['route' => 'sylius_admin_product_attribute_index'])
->setLabel('sylius.menu.admin.main.catalog.attributes') ->setLabel('sylius.menu.admin.main.catalog.attributes')
->setLabelAttribute('icon', 'cubes') ->setLabelAttribute('icon', 'cubes')
; ;
$catalogSubMenu
->addChild('product_options', ['route' => 'sylius_admin_product_option_index'])
->setLabel('sylius.menu.admin.main.catalog.manage_product_options')
->setLabelAttribute('icon', 'options')
;
} }
} }

View file

@ -6,6 +6,7 @@ imports:
- { resource: "@SyliusAdminBundle/Resources/config/grids/locale.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/locale.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/payment_method.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/payment_method.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/product_attribute.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/product_attribute.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/product_option.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/promotion.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/promotion.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/shipping_method.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/shipping_method.yml" }
- { resource: "@SyliusAdminBundle/Resources/config/grids/tax_category.yml" } - { resource: "@SyliusAdminBundle/Resources/config/grids/tax_category.yml" }

View file

@ -0,0 +1,28 @@
sylius_grid:
grids:
sylius_admin_product_option:
driver:
name: doctrine/orm
options:
class: %sylius.model.product_option.class%
fields:
code:
type: string
label: sylius.ui.code
name:
type: string
label: sylius.ui.name
values:
type: twig
label: sylius.ui.values
options:
template: SyliusAdminBundle:ProductOption/Field:values.html.twig
actions:
main:
create:
type: create
item:
update:
type: update
delete:
type: delete

View file

@ -31,6 +31,9 @@ sylius_admin_payment_method:
sylius_admin_attribute: sylius_admin_attribute:
resource: "@SyliusAdminBundle/Resources/config/routing/product_attribute.yml" resource: "@SyliusAdminBundle/Resources/config/routing/product_attribute.yml"
sylius_admin_product_option:
resource: "@SyliusAdminBundle/Resources/config/routing/product_option.yml"
sylius_admin_promotion: sylius_admin_promotion:
resource: "@SyliusAdminBundle/Resources/config/routing/promotion.yml" resource: "@SyliusAdminBundle/Resources/config/routing/promotion.yml"

View file

@ -0,0 +1,16 @@
sylius_admin_product_option:
resource: |
alias: sylius.product_option
section: admin
templates: SyliusAdminBundle:Crud
except: ['show']
redirect: update
grid: sylius_admin_product_option
vars:
all:
subheader: sylius.ui.manage_product_option
templates:
form: SyliusAdminBundle:ProductOption:_form.html.twig
index:
icon: options
type: sylius.resource

View file

@ -2,6 +2,9 @@ sylius:
menu: menu:
admin: admin:
main: main:
catalog:
header: Catalog
manage_product_options: Manage options
configuration: configuration:
channels: Channels channels: Channels
countries: Countries countries: Countries

View file

@ -0,0 +1,2 @@
{% import '@SyliusUi/Macro/values.html.twig' as option %}
{{ option.values(data) }}

View file

@ -0,0 +1,18 @@
<div class="ui two column stackable grid">
<div class="column">
<div class="ui segment">
{{ form_errors(form) }}
{{ form_row(form.code) }}
<div class="ui segment">
{% for locale, translationForm in form.translations %}
<h4 class="ui dividing header"><i class="{{ locale|slice(3, 2)|lower }} flag"></i> {{ locale|sylius_locale_name }}</h4>
{{ form_row(translationForm.name) }}
{% endfor %}
</div>
</div>
</div>
<div class="column">
{{ form_row(form.values) }}
</div>
{{ form_rest(form) }}
</div>

View file

@ -4,6 +4,8 @@ sylius:
username: Username username: Username
password: Password password: Password
remember_me: Remember me remember_me: Remember me
option:
presentation: Presentation
ui: ui:
actions: Actions actions: Actions
administration_panel_login: Administration panel login administration_panel_login: Administration panel login
@ -53,6 +55,7 @@ sylius:
manage_customer: Manage customers manage_customer: Manage customers
manage_languages_available_in_the_store: Manage languages available in the store manage_languages_available_in_the_store: Manage languages available in the store
manage_payment_method: Manage payment methods manage_payment_method: Manage payment methods
manage_product_option: Manage product option
manage_shipping_destinations: Manage shipping destinations manage_shipping_destinations: Manage shipping destinations
manage_shipping_methods_for_your_store: Manage shipping methods for your store manage_shipping_methods_for_your_store: Manage shipping methods for your store
manage_taxation_of_your_products: Manage taxation of your products manage_taxation_of_your_products: Manage taxation of your products
@ -81,4 +84,5 @@ sylius:
status: Status status: Status
success: Success success: Success
tax_categories: Tax categories tax_categories: Tax categories
values: Values
yes: Yes yes: Yes

View file

@ -0,0 +1,7 @@
{% macro values(options) %}
{% for option in options %}
<span class="ui blue label">
{{ option.value }}
</span>
{% endfor %}
{% endmacro %}