Skip to content

Commit

Permalink
Fixed store management menu on stores index not showing all items
Browse files Browse the repository at this point in the history
  • Loading branch information
nfourtythree committed May 16, 2024
1 parent cabc764 commit 33b8cf3
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 25 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Release Notes for Craft Commerce

## Unreleased

- Fixed a bug where the store management menu was not listing all items on the Stores index page.

## 5.0.6 - 2024-05-15

- Fixed an error that occurred when deleting or duplicating a shipping rule on the Edit Shipping Rule screen. ([#3490](https://github.com/craftcms/commerce/issues/3490))
Expand Down
60 changes: 60 additions & 0 deletions src/controllers/StoresController.php
Original file line number Diff line number Diff line change
Expand Up @@ -217,11 +217,71 @@ public function actionStoresIndex(): Response
],
];

$menuItems = [];
$stores->each(function(Store $s) use (&$menuItems) {
$m = [];
$m[] = [
'label' => Craft::t('commerce', 'Payment Currencies'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/payment-currencies'),
];

$m[] = [
'label' => Craft::t('commerce', 'Discounts'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/discounts'),
];

if (Plugin::getInstance()->getCatalogPricingRules()->canUseCatalogPricingRules()) {
$m[] = [
'label' => Craft::t('commerce', 'Pricing Rules'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/pricing-rules'),
];
} else {
$m[] = [
'label' => Craft::t('commerce', 'Sales'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/sales'),
];
}

$m[] = [
'label' => Craft::t('commerce', 'Shipping Methods'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/shippingmethods'),
];

$m[] = [
'label' => Craft::t('commerce', 'Shipping Zones'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/shippingzones'),
];

$m[] = [
'label' => Craft::t('commerce', 'Shipping Categories'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/shippingcategories'),
];

$m[] = [
'label' => Craft::t('commerce', 'Tax Rates'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/taxrates'),
];

$m[] = [
'label' => Craft::t('commerce', 'Tax Zones'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/taxzones'),
];

$m[] = [
'label' => Craft::t('commerce', 'Tax Categories'),
'url' => UrlHelper::cpUrl('commerce/store-management/' . $s->handle . '/taxcategories'),
];

$menuItems[$s->handle] = $m;
});


return $this->renderTemplate('commerce/settings/stores/index', [
'stores' => $stores,
'crumbs' => $crumbs,
'sitesStores' => Plugin::getInstance()->getStores()->getAllSiteStores(),
'primaryStoreId' => Plugin::getInstance()->getStores()->getPrimaryStore()->id,
'menuItems' => $menuItems,
]);
}

Expand Down
26 changes: 1 addition & 25 deletions src/templates/settings/stores/index.twig
Original file line number Diff line number Diff line change
Expand Up @@ -34,30 +34,6 @@

{% set tableData = [] %}
{% for store in stores %}

{% set menuItems = [
{
label: 'Payment Currencies'|t('commerce'),
url: url('commerce/store-management/' ~ store.handle ~ '/payment-currencies'),
},
{
label: 'Discounts'|t('commerce'),
url: url('commerce/store-management/' ~ store.handle ~ '/discounts'),
},
{
label: 'Pricing Rules'|t('commerce'),
url: url('commerce/store-management/' ~ store.handle ~ '/pricing-rules'),
},
{
label: 'Shipping Methods'|t('commerce'),
url: url('commerce/store-management/' ~ store.handle ~ '/shippingmethods'),
},
{
label: 'Tax Rates'|t('commerce'),
url: url('commerce/store-management/' ~ store.handle ~ '/taxrates'),
}
] %}

{% set tableData = tableData|merge([{
id: store.id,
name: store.name|t('site'),
Expand All @@ -73,7 +49,7 @@
menuBtnTitle: ''|t('app'),
label: 'Store Management '|t('commerce'),
url: url('commerce/store-management/' ~ store.handle),
items: menuItems,
items: menuItems[store.handle],
},
_showDelete : store.primary ? false : true
}]) %}
Expand Down

0 comments on commit 33b8cf3

Please sign in to comment.