Code Duplication    Length = 18-18 lines in 2 locations

src/Eccube/Controller/Admin/Product/ProductController.php 1 location

@@ 606-623 (lines=18) @@
603
604
                $this->addSuccess('admin.common.save_complete', 'admin');
605
606
                if ($returnLink = $form->get('return_link')->getData()) {
607
                    try {
608
                        // $returnLinkはpathの形式で渡される. pathが存在するかをルータでチェックする.
609
                        $pattern = '/^'.preg_quote($request->getBasePath(), '/').'/';
610
                        $returnLink = preg_replace($pattern, '', $returnLink);
611
                        $result = $router->match($returnLink);
612
                        // パラメータのみ抽出
613
                        $params = array_filter($result, function ($key) {
614
                            return 0 !== \strpos($key, '_');
615
                        }, ARRAY_FILTER_USE_KEY);
616
617
                        // pathからurlを再構築してリダイレクト.
618
                        return $this->redirectToRoute($result['_route'], $params);
619
                    } catch (\Exception $e) {
620
                        // マッチしない場合はログ出力してスキップ.
621
                        log_warning('URLの形式が不正です。');
622
                    }
623
                }
624
625
                $cacheUtil->clearDoctrineCache();
626

src/Eccube/Controller/Admin/Order/EditController.php 1 location

@@ 320-337 (lines=18) @@
317
318
                        log_info('受注登録完了', [$TargetOrder->getId()]);
319
320
                        if ($returnLink = $form->get('return_link')->getData()) {
321
                            try {
322
                                // $returnLinkはpathの形式で渡される. pathが存在するかをルータでチェックする.
323
                                $pattern = '/^'.preg_quote($request->getBasePath(), '/').'/';
324
                                $returnLink = preg_replace($pattern, '', $returnLink);
325
                                $result = $router->match($returnLink);
326
                                // パラメータのみ抽出
327
                                $params = array_filter($result, function ($key) {
328
                                    return 0 !== \strpos($key, '_');
329
                                }, ARRAY_FILTER_USE_KEY);
330
331
                                // pathからurlを再構築してリダイレクト.
332
                                return $this->redirectToRoute($result['_route'], $params);
333
                            } catch (\Exception $e) {
334
                                // マッチしない場合はログ出力してスキップ.
335
                                log_warning('URLの形式が不正です。');
336
                            }
337
                        }
338
339
                        return $this->redirectToRoute('admin_order_edit', ['id' => $TargetOrder->getId()]);
340
                    }