/** * Create CMS page type * * @return void */ private function createRedirect() { Redirect::create(['match_type' => Redirect::TYPE_EXACT, 'target_type' => Redirect::TARGET_TYPE_CMS_PAGE, 'from_url' => $this->getOriginalUrl(), 'to_url' => null, 'cms_page' => $this->page->getBaseFileName(), 'status_code' => 301, 'is_enabled' => true, 'system' => true]); }
/** * Create Redirects from Request Log items * * @return array */ public function onCreateRedirectFromRequestLogItems() { $checkedIds = $this->getCheckedIds(); $redirectsCreated = 0; foreach ($checkedIds as $checkedId) { /** @var RequestLog $requestLog */ $requestLog = RequestLog::find($checkedId); $path = parse_url($requestLog->getAttribute('url'), PHP_URL_PATH); if ($path === false || $path === '/' || $path === '') { continue; } Redirect::create(['match_type' => Redirect::TYPE_EXACT, 'target_type' => Redirect::TARGET_TYPE_PATH_URL, 'from_url' => $path, 'to_url' => '/', 'status_code' => 301, 'is_enabled' => false]); $redirectsCreated++; } if ((bool) Request::get('andDelete', false)) { RequestLog::destroy($checkedIds); } if ($redirectsCreated > 0) { Event::fire('redirects.changed'); Flash::success(Lang::get('adrenth.redirect::lang.flash.success_created_redirects', ['count' => $redirectsCreated])); } return $this->listRefresh(); }