File: D:/HostingSpaces/SBogers10/azenio.komma.pro/app/Http/Wildcards/ReferencesWildcard.php
<?php
namespace App\Http\Wildcards;
use App\References\Models\ReferenceTranslation;
use Illuminate\Http\Request;
class ReferencesWildcard implements WildcardInterface
{
/**
* @param Request $request
* @param string $route
* @param string $tail
* @return Request
*/
public function handle(Request $request, string $route, string $tail): Request
{
// Check if the first segment is found in the ProjectTranslation
// If ProjectTranslation isn't found then send to the filters method
if($referenceTranslation = ReferenceTranslation::where('slug', $tail[0])->first())
{
//Set the request URI and the original path
$request->server->set('REQUEST_URI', 'references/'.$referenceTranslation->reference_id);
return $request;
}
// Bind filters to the request and set uri to the filter function of the project controller
$request->merge(['filters' => $tail]);
//Set the request URI and the original path
$request->server->set('REQUEST_URI', 'references/filters');
return $request;
}
}