diff --git a/app/Http/Controllers/Web/AffiliateController.php b/app/Http/Controllers/Web/AffiliateController.php index 3b67903..b67a35c 100644 --- a/app/Http/Controllers/Web/AffiliateController.php +++ b/app/Http/Controllers/Web/AffiliateController.php @@ -65,10 +65,13 @@ public function store(Request $request): RedirectResponse /** * Display the specified resource. */ - public function show(Affiliates $affiliate): RedirectResponse + public function show($affiliate): RedirectResponse { - if (auth('web')->guest()) { - // save the affiliate id in the session + $redirect = redirect()->route('index'); + + $affiliate = Affiliates::where('uuid', $affiliate)->first(); + + if (auth('web')->guest() && $affiliate) { session()->put('affiliate_id', $affiliate->id); $cache_key = 'affiliate_ip:'.$affiliate->id.':'.request()->ip(); @@ -77,9 +80,11 @@ public function show(Affiliates $affiliate): RedirectResponse $affiliate->increment('visits'); Cache::put($cache_key, true, now()->addHour()); } + } else { + $redirect->with('error', '此推介链接已失效。'); } - return redirect()->route('index'); + return $redirect; } /**