Skip to content

Commit 0ed04dd

Browse files
authored
rector: ChangeSwitchToMatchRector (#4835)
* rector: `ChangeSwitchToMatchRector` * sonar * sonar * phpstan * simpler * fix
1 parent 76b7135 commit 0ed04dd

File tree

87 files changed

+929
-1912
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+929
-1912
lines changed

.phpstan.dist.baseline.neon

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2628,12 +2628,6 @@ parameters:
26282628
count: 2
26292629
path: app/code/core/Mage/Core/Model/Domainpolicy.php
26302630

2631-
-
2632-
message: '#^Method Zend_Mail\:\:addBcc\(\) invoked with 2 parameters, 1 required\.$#'
2633-
identifier: arguments.count
2634-
count: 1
2635-
path: app/code/core/Mage/Core/Model/Email/Queue.php
2636-
26372631
-
26382632
message: '#^Method Mage_Core_Model_Email_Template\:\:getProcessedTemplate\(\) invoked with 2 parameters, 0\-1 required\.$#'
26392633
identifier: arguments.count

.rector.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,6 @@
132132
Php80\ClassConstFetch\ClassOnThisVariableObjectRector::class, # todo: TMP
133133
Php80\ClassMethod\AddParamBasedOnParentClassMethodRector::class, # todo: TMP
134134
Php80\FuncCall\ClassOnObjectRector::class, # todo: TMP
135-
Php80\Switch_\ChangeSwitchToMatchRector::class, # todo: TMP
136135
Php81\Array_\FirstClassCallableRector::class, # todo: TMP
137136
Php81\FuncCall\NullToStrictStringFuncCallArgRector::class, # todo: check later
138137
Strict\Empty_\DisallowedEmptyRuleFixerRector::class, # todo: TMP

app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tab/Wishlist.php

Lines changed: 10 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -177,20 +177,12 @@ protected function _addColumnFilterToCollection($column)
177177
$collection = $this->getCollection();
178178
$value = $column->getFilter()->getValue();
179179
if ($collection && $value) {
180-
switch ($column->getId()) {
181-
case 'product_name':
182-
$collection->addProductNameFilter($value);
183-
break;
184-
case 'store':
185-
$collection->addStoreFilter($value);
186-
break;
187-
case 'days':
188-
$collection->addDaysFilter($value);
189-
break;
190-
default:
191-
$collection->addFieldToFilter($column->getIndex(), $column->getFilter()->getCondition());
192-
break;
193-
}
180+
match ($column->getId()) {
181+
'product_name' => $collection->addProductNameFilter($value),
182+
'store' => $collection->addStoreFilter($value),
183+
'days' => $collection->addDaysFilter($value),
184+
default => $collection->addFieldToFilter($column->getIndex(), $column->getFilter()->getCondition()),
185+
};
194186
}
195187
return $this;
196188
}
@@ -205,14 +197,10 @@ protected function _setCollectionOrder($column)
205197
{
206198
$collection = $this->getCollection();
207199
if ($collection) {
208-
switch ($column->getId()) {
209-
case 'product_name':
210-
$collection->setOrderByProductName($column->getDir());
211-
break;
212-
default:
213-
parent::_setCollectionOrder($column);
214-
break;
215-
}
200+
match ($column->getId()) {
201+
'product_name' => $collection->setOrderByProductName($column->getDir()),
202+
default => parent::_setCollectionOrder($column),
203+
};
216204
}
217205
return $this;
218206
}

app/code/core/Mage/Adminhtml/Block/Report/Sales/Grid/Column/Renderer/Date.php

Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -27,21 +27,13 @@ protected function _getFormat()
2727
try {
2828
$localeCode = Mage::app()->getLocale()->getLocaleCode();
2929
$localeData = new Zend_Locale_Data();
30-
switch ($this->getColumn()->getPeriodType()) {
31-
case 'month':
32-
self::$_format = $localeData::getContent($localeCode, 'dateitem', 'yM');
33-
break;
34-
35-
case 'year':
36-
self::$_format = $localeData::getContent($localeCode, 'dateitem', 'y');
37-
break;
38-
39-
default:
40-
self::$_format = Mage::app()->getLocale()->getDateFormat(
41-
Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM,
42-
);
43-
break;
44-
}
30+
self::$_format = match ($this->getColumn()->getPeriodType()) {
31+
'month' => $localeData::getContent($localeCode, 'dateitem', 'yM'),
32+
'year' => $localeData::getContent($localeCode, 'dateitem', 'y'),
33+
default => Mage::app()->getLocale()->getDateFormat(
34+
Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM,
35+
),
36+
};
4537
} catch (Exception $e) {
4638
}
4739
}
@@ -58,17 +50,11 @@ protected function _getFormat()
5850
public function render(Varien_Object $row)
5951
{
6052
if ($data = $row->getData($this->getColumn()->getIndex())) {
61-
switch ($this->getColumn()->getPeriodType()) {
62-
case 'month':
63-
$dateFormat = 'yyyy-MM';
64-
break;
65-
case 'year':
66-
$dateFormat = 'yyyy';
67-
break;
68-
default:
69-
$dateFormat = Varien_Date::DATE_INTERNAL_FORMAT;
70-
break;
71-
}
53+
$dateFormat = match ($this->getColumn()->getPeriodType()) {
54+
'month' => 'yyyy-MM',
55+
'year' => 'yyyy',
56+
default => Varien_Date::DATE_INTERNAL_FORMAT,
57+
};
7258

7359
$format = $this->_getFormat();
7460
try {

app/code/core/Mage/Adminhtml/Block/Sales/Order/Comments/View.php

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -49,22 +49,18 @@ public function getSubmitUrl()
4949

5050
public function canSendCommentEmail()
5151
{
52-
switch ($this->getParentType()) {
53-
case 'invoice':
54-
return Mage::helper('sales')->canSendInvoiceCommentEmail(
55-
$this->getEntity()->getOrder()->getStore()->getId(),
56-
);
57-
case 'shipment':
58-
return Mage::helper('sales')->canSendShipmentCommentEmail(
59-
$this->getEntity()->getOrder()->getStore()->getId(),
60-
);
61-
case 'creditmemo':
62-
return Mage::helper('sales')->canSendCreditmemoCommentEmail(
63-
$this->getEntity()->getOrder()->getStore()->getId(),
64-
);
65-
}
66-
67-
return true;
52+
return match ($this->getParentType()) {
53+
'invoice' => Mage::helper('sales')->canSendInvoiceCommentEmail(
54+
$this->getEntity()->getOrder()->getStore()->getId(),
55+
),
56+
'shipment' => Mage::helper('sales')->canSendShipmentCommentEmail(
57+
$this->getEntity()->getOrder()->getStore()->getId(),
58+
),
59+
'creditmemo' => Mage::helper('sales')->canSendCreditmemoCommentEmail(
60+
$this->getEntity()->getOrder()->getStore()->getId(),
61+
),
62+
default => true,
63+
};
6864
}
6965

7066
/**

app/code/core/Mage/Adminhtml/Block/System/Config/Form.php

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -588,16 +588,12 @@ protected function _canShowField($field)
588588
if ($ifModuleEnabled && !$this->isModuleEnabled($ifModuleEnabled)) {
589589
return false;
590590
}
591-
592-
switch ($this->getScope()) {
593-
case self::SCOPE_DEFAULT:
594-
return (bool) (int) $field->show_in_default;
595-
case self::SCOPE_WEBSITES:
596-
return (bool) (int) $field->show_in_website;
597-
case self::SCOPE_STORES:
598-
return (bool) (int) $field->show_in_store;
599-
}
600-
return true;
591+
return match ($this->getScope()) {
592+
self::SCOPE_DEFAULT => (bool) (int) $field->show_in_default,
593+
self::SCOPE_WEBSITES => (bool) (int) $field->show_in_website,
594+
self::SCOPE_STORES => (bool) (int) $field->show_in_store,
595+
default => true,
596+
};
601597
}
602598

603599
/**

app/code/core/Mage/Adminhtml/Block/Tag/Customer.php

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,15 @@ public function __construct()
2222
{
2323
parent::__construct();
2424

25-
switch ($this->getRequest()->getParam('ret')) {
26-
case 'all':
27-
$url = $this->getUrl('*/*/');
28-
break;
29-
30-
case 'pending':
31-
$url = $this->getUrl('*/*/pending');
32-
break;
33-
34-
default:
35-
$url = $this->getUrl('*/*/');
36-
}
25+
$route = match ($this->getRequest()->getParam('ret')) {
26+
'pending' => '*/*/pending',
27+
default => '*/*/',
28+
};
3729

3830
$this->_block = 'tag_customer';
3931
$this->_controller = 'tag_customer';
4032
$this->_removeButton('add');
41-
$this->setBackUrl($url);
33+
$this->setBackUrl($this->getUrl($route));
4234
$this->_addBackButton();
4335

4436
$tagInfo = Mage::getModel('tag/tag')

app/code/core/Mage/Adminhtml/Block/Tag/Product.php

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,15 @@ public function __construct()
1818
{
1919
parent::__construct();
2020

21-
switch ($this->getRequest()->getParam('ret')) {
22-
case 'all':
23-
$url = $this->getUrl('*/*/');
24-
break;
25-
26-
case 'pending':
27-
$url = $this->getUrl('*/*/pending');
28-
break;
29-
30-
default:
31-
$url = $this->getUrl('*/*/');
32-
}
21+
$route = match ($this->getRequest()->getParam('ret')) {
22+
'pending' => '*/*/pending',
23+
default => '*/*/',
24+
};
3325

3426
$this->_block = 'tag_product';
3527
$this->_controller = 'tag_product';
3628
$this->_removeButton('add');
37-
$this->setBackUrl($url);
29+
$this->setBackUrl($this->getUrl($route));
3830
$this->_addBackButton();
3931

4032
$tagInfo = Mage::getModel('tag/tag')

app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column.php

Lines changed: 35 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -245,67 +245,27 @@ protected function _getRendererByType()
245245
if (is_array($renderers) && isset($renderers[$type])) {
246246
return $renderers[$type];
247247
}
248-
249-
switch ($type) {
250-
case 'date':
251-
$rendererClass = 'adminhtml/widget_grid_column_renderer_date';
252-
break;
253-
case 'datetime':
254-
$rendererClass = 'adminhtml/widget_grid_column_renderer_datetime';
255-
break;
256-
case 'number':
257-
$rendererClass = 'adminhtml/widget_grid_column_renderer_number';
258-
break;
259-
case 'currency':
260-
$rendererClass = 'adminhtml/widget_grid_column_renderer_currency';
261-
break;
262-
case 'price':
263-
$rendererClass = 'adminhtml/widget_grid_column_renderer_price';
264-
break;
265-
case 'country':
266-
$rendererClass = 'adminhtml/widget_grid_column_renderer_country';
267-
break;
268-
case 'concat':
269-
$rendererClass = 'adminhtml/widget_grid_column_renderer_concat';
270-
break;
271-
case 'action':
272-
$rendererClass = 'adminhtml/widget_grid_column_renderer_action';
273-
break;
274-
case 'options':
275-
$rendererClass = 'adminhtml/widget_grid_column_renderer_options';
276-
break;
277-
case 'checkbox':
278-
$rendererClass = 'adminhtml/widget_grid_column_renderer_checkbox';
279-
break;
280-
case 'massaction':
281-
$rendererClass = 'adminhtml/widget_grid_column_renderer_massaction';
282-
break;
283-
case 'radio':
284-
$rendererClass = 'adminhtml/widget_grid_column_renderer_radio';
285-
break;
286-
case 'input':
287-
$rendererClass = 'adminhtml/widget_grid_column_renderer_input';
288-
break;
289-
case 'select':
290-
$rendererClass = 'adminhtml/widget_grid_column_renderer_select';
291-
break;
292-
case 'text':
293-
$rendererClass = 'adminhtml/widget_grid_column_renderer_longtext';
294-
break;
295-
case 'store':
296-
$rendererClass = 'adminhtml/widget_grid_column_renderer_store';
297-
break;
298-
case 'wrapline':
299-
$rendererClass = 'adminhtml/widget_grid_column_renderer_wrapline';
300-
break;
301-
case 'theme':
302-
$rendererClass = 'adminhtml/widget_grid_column_renderer_theme';
303-
break;
304-
default:
305-
$rendererClass = 'adminhtml/widget_grid_column_renderer_text';
306-
break;
307-
}
308-
return $rendererClass;
248+
return match ($type) {
249+
'date' => 'adminhtml/widget_grid_column_renderer_date',
250+
'datetime' => 'adminhtml/widget_grid_column_renderer_datetime',
251+
'number' => 'adminhtml/widget_grid_column_renderer_number',
252+
'currency' => 'adminhtml/widget_grid_column_renderer_currency',
253+
'price' => 'adminhtml/widget_grid_column_renderer_price',
254+
'country' => 'adminhtml/widget_grid_column_renderer_country',
255+
'concat' => 'adminhtml/widget_grid_column_renderer_concat',
256+
'action' => 'adminhtml/widget_grid_column_renderer_action',
257+
'options' => 'adminhtml/widget_grid_column_renderer_options',
258+
'checkbox' => 'adminhtml/widget_grid_column_renderer_checkbox',
259+
'massaction' => 'adminhtml/widget_grid_column_renderer_massaction',
260+
'radio' => 'adminhtml/widget_grid_column_renderer_radio',
261+
'input' => 'adminhtml/widget_grid_column_renderer_input',
262+
'select' => 'adminhtml/widget_grid_column_renderer_select',
263+
'text' => 'adminhtml/widget_grid_column_renderer_longtext',
264+
'store' => 'adminhtml/widget_grid_column_renderer_store',
265+
'wrapline' => 'adminhtml/widget_grid_column_renderer_wrapline',
266+
'theme' => 'adminhtml/widget_grid_column_renderer_theme',
267+
default => 'adminhtml/widget_grid_column_renderer_text',
268+
};
309269
}
310270

311271
/**
@@ -346,48 +306,20 @@ protected function _getFilterByType()
346306
if (is_array($filters) && isset($filters[$type])) {
347307
return $filters[$type];
348308
}
349-
350-
switch ($type) {
351-
case 'datetime':
352-
$filterClass = 'adminhtml/widget_grid_column_filter_datetime';
353-
break;
354-
case 'date':
355-
$filterClass = 'adminhtml/widget_grid_column_filter_date';
356-
break;
357-
case 'range':
358-
case 'number':
359-
case 'currency':
360-
$filterClass = 'adminhtml/widget_grid_column_filter_range';
361-
break;
362-
case 'price':
363-
$filterClass = 'adminhtml/widget_grid_column_filter_price';
364-
break;
365-
case 'country':
366-
$filterClass = 'adminhtml/widget_grid_column_filter_country';
367-
break;
368-
case 'options':
369-
$filterClass = 'adminhtml/widget_grid_column_filter_select';
370-
break;
371-
case 'massaction':
372-
$filterClass = 'adminhtml/widget_grid_column_filter_massaction';
373-
break;
374-
case 'checkbox':
375-
$filterClass = 'adminhtml/widget_grid_column_filter_checkbox';
376-
break;
377-
case 'radio':
378-
$filterClass = 'adminhtml/widget_grid_column_filter_radio';
379-
break;
380-
case 'store':
381-
$filterClass = 'adminhtml/widget_grid_column_filter_store';
382-
break;
383-
case 'theme':
384-
$filterClass = 'adminhtml/widget_grid_column_filter_theme';
385-
break;
386-
default:
387-
$filterClass = 'adminhtml/widget_grid_column_filter_text';
388-
break;
389-
}
390-
return $filterClass;
309+
return match ($type) {
310+
'datetime' => 'adminhtml/widget_grid_column_filter_datetime',
311+
'date' => 'adminhtml/widget_grid_column_filter_date',
312+
'range', 'number', 'currency' => 'adminhtml/widget_grid_column_filter_range',
313+
'price' => 'adminhtml/widget_grid_column_filter_price',
314+
'country' => 'adminhtml/widget_grid_column_filter_country',
315+
'options' => 'adminhtml/widget_grid_column_filter_select',
316+
'massaction' => 'adminhtml/widget_grid_column_filter_massaction',
317+
'checkbox' => 'adminhtml/widget_grid_column_filter_checkbox',
318+
'radio' => 'adminhtml/widget_grid_column_filter_radio',
319+
'store' => 'adminhtml/widget_grid_column_filter_store',
320+
'theme' => 'adminhtml/widget_grid_column_filter_theme',
321+
default => 'adminhtml/widget_grid_column_filter_text',
322+
};
391323
}
392324

393325
/**

0 commit comments

Comments
 (0)