Skip to content

Commit 09e37ef

Browse files
committed
Handle user_id for authenticated users
1 parent 5c9f77d commit 09e37ef

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

src/Http/Controllers/UrlController.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ public function create()
4242
public function store(UrlRequest $request)
4343
{
4444
$data = [
45-
'url' => $request->get('url'),
45+
'url' => $request->get('url'),
4646
'code' => $request->get('code') ? \Str::slug($request->get('code')) : \Hasher::generate(),
47+
'user_id' => optional(auth()->user())->id,
4748
];
4849

4950
if ($request->filled('expires_at')) {
@@ -82,8 +83,9 @@ public function update(UrlRequest $request, $id)
8283
\Cache::forget("url.{$url['code']}");
8384

8485
$data = [
85-
'url' => $request->get('url'),
86+
'url' => $request->get('url'),
8687
'code' => $request->get('code'),
88+
'user_id' => optional(auth()->user())->id,
8789
];
8890

8991
if ($request->filled('expires_at')) {

src/Http/Responses/UrlResponse.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ public function toResponse($request)
4444
'short_url' => $shortUrl,
4545
'counter' => $this->url->counter,
4646
'expires_at' => $this->url->expires_at,
47+
'user_id' => optional($this->url->user)->id,
4748
], 201);
4849
}
4950

src/Url.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ class Url extends Model
2323
'url',
2424
'code',
2525
'expires_at',
26+
'user_id',
2627
];
2728

2829
/**
@@ -72,4 +73,16 @@ public function hasExpired(): bool
7273

7374
return ! $expiresAt->isFuture();
7475
}
76+
77+
/**
78+
* Get the user that created the url.
79+
*
80+
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
81+
*/
82+
public function user()
83+
{
84+
$provider = config('auth.guards.api.provider');
85+
86+
return $this->belongsTo(config("auth.providers.{$provider}.model"));
87+
}
7588
}

0 commit comments

Comments
 (0)