⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.1
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
work
/
app
/
Http
/
Middleware
/
View File Name :
RedirectForMultiLanguage.php
<?php /** * Created by PhpStorm. * User: Admin * Date: 7/11/2019 * Time: 4:54 PM */ namespace App\Http\Middleware; use Closure; use Illuminate\Support\Arr; use Illuminate\Support\Facades\Config; use Modules\Language\Models\Language; class RedirectForMultiLanguage { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @param string|null $guard * @return mixed */ public function handle($request, Closure $next, $guard = null) { if (strpos($request->path(), 'install') === false && file_exists(storage_path() . '/installed') && strtolower($request->method()) === 'get' and $request->query('set_lang')) { $locale = $request->query('set_lang'); $firstSegment = $request->segment(1); $languages = \Modules\Language\Models\Language::getActive(); $localeCodes = Arr::pluck($languages, 'locale'); $data = $request->query(); unset($data['set_lang']); if($locale != $firstSegment and in_array($locale,$localeCodes)){ $segments = $request->segments(); if(!$firstSegment || in_array($firstSegment,$localeCodes)){ if($locale != setting_item('site_locale')){ $segments[0] = $locale; }else{ unset($segments[0]);} }else{ $segments = Arr::prepend($segments, $locale); } $url = implode('/', $segments); if (!empty($data)) { $url .= '?' . http_build_query($data); } return redirect()->to($url); } } return $next($request); } }