Skip to content

Commit 89b8e07

Browse files
[CodeQuality] Skip with HTML on ShortenElseIfRector (#7686)
* [CodeQuality] Skip with HTML on ShortenElseIfRector * [ci-review] Rector Rectify --------- Co-authored-by: GitHub Action <[email protected]>
1 parent 1d51948 commit 89b8e07

File tree

2 files changed

+37
-1
lines changed

2 files changed

+37
-1
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
3+
namespace Rector\Tests\CodeQuality\Rector\If_\ShortenElseIfRector\Fixture;
4+
5+
class SkipWithHTML
6+
{
7+
private function renderMenu(): void {
8+
?>
9+
<div>
10+
<?php if ($menuItem->is_main_item) : ?>
11+
<a href="#" class="<?= $aClass ?>">
12+
<div class="flex items-center gap-2 pointer-events-none">
13+
<?= $menuItem->icon ? $this->Icon->render($menuItem->icon) : '' ?>
14+
<?= $title ?>
15+
</div>
16+
</a>
17+
<?php else :
18+
if ($menuItem->is_external_url) {
19+
echo $this->Html->link($title, $menuItem->url, [
20+
'menu-icon' => $menuItem->icon ?? false,
21+
'class' => $aClass,
22+
]);
23+
} elseif ($menuItem->parsed_url && $menuItem->is_url_valid) {
24+
echo $this->Html->linkFromPath($title, $menuItem->parsed_url, [], [
25+
'menu-icon' => $menuItem->icon ?? false,
26+
'class' => $aClass,
27+
]);
28+
} else {
29+
// Do something?
30+
}
31+
endif; ?>
32+
</div>
33+
<?php
34+
}
35+
}

rules/CodeQuality/Rector/If_/ShortenElseIfRector.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use PhpParser\Node\Stmt\ElseIf_;
1010
use PhpParser\Node\Stmt\If_;
1111
use PhpParser\Node\Stmt\Nop;
12+
use Rector\Contract\Rector\HTMLAverseRectorInterface;
1213
use Rector\NodeTypeResolver\Node\AttributeKey;
1314
use Rector\Rector\AbstractRector;
1415
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
@@ -17,7 +18,7 @@
1718
/**
1819
* @see \Rector\Tests\CodeQuality\Rector\If_\ShortenElseIfRector\ShortenElseIfRectorTest
1920
*/
20-
final class ShortenElseIfRector extends AbstractRector
21+
final class ShortenElseIfRector extends AbstractRector implements HTMLAverseRectorInterface
2122
{
2223
public function getRuleDefinition(): RuleDefinition
2324
{

0 commit comments

Comments
 (0)