donem middlware
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\URL;
use Illuminate\Support\Facades\Session;
class donem {
public function __construct(){}
public function handle(Request $request, Closure $next)
{
$donem = $request->segment(1);
if( Session::get('donem') != null ){
URL::defaults(['donem' => '/']);
return $next($request);
}
if (in_array($donem, config('donemler'))) {
config(['donem'=>$donem]);
Session::put('donem', $donem);
URL::defaults(['donem' => config('donem')]);
return $next($request);
}
if (!in_array($donem, config('donemler'))) {
$segments=$request->segments();
$segments[]=2023;
return redirect(implode('/', $segments));
}
}
}donemcurrent(2. middlware) middlware
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
class donemcurrent {
public function __construct(){}
public function handle(Request $request, Closure $next)
{
if( Session::get('donem') == null ){
$segments = $request->segments();
$donem = 2023;
$key = array_search($donem, $segments);
if(isset($key)){
unset($segments[$key]);
}
Session::put('donem', $donem);
return redirect(implode('/', $segments));
}else{
return $next($request);
}
}
}web.php route
Route::prefix('{donem?}')->middleware(['donem','donemcurrent'])->group(function () {
Route::get('/', [App\Http\Controllers\front\indexController::class,'index'])->name('index');
Route::get('/liste', [App\Http\Controllers\front\indexController::class,'index'])->name('index');
Route::group(['namespace'=>'satis','prefix'=>'satis','as'=>'satis.'],function(){
Route::get('/', [App\Http\Controllers\front\satis\indexController::class,'index'])->name('index');
Route::post('/', [App\Http\Controllers\front\satis\indexController::class,'post'])->middleware('XSS')->name('post');
Route::get('/liste', [App\Http\Controllers\front\satis\indexController::class,'list'])->name('list');
Route::get('/siparis', [App\Http\Controllers\front\satis\orderController::class,'index'])->name('order');
Route::get('/detay/{hayvan_id}', [App\Http\Controllers\front\satis\indexController::class,'detail'])->name('detail');
Route::get('/siparis/liste', [App\Http\Controllers\front\satis\orderController::class,'list'])->name('orderList');
Route::post('/siparis/ekle', [App\Http\Controllers\front\satis\orderController::class,'post'])->name('orderPost');
Route::post('/siparis/onay', [App\Http\Controllers\front\satis\orderController::class,'orderCheck'])->name('orderCheck');
});
});Bu Şekilde Link Yapısını istediğim gibi alabiliyorum ama sanırım donem prefixinden dolayı doğru route'a Bağlanamıyor site.com/satis şeklinde girdiğimde'de index sayfası açılıyor.