Skip to content

Commit 2ebfe4d

Browse files
committed
Added last seen section to users page
1 parent beac50f commit 2ebfe4d

File tree

3 files changed

+36
-7
lines changed

3 files changed

+36
-7
lines changed

app/Http/Controllers/AdminController.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,16 @@ public function users(Request $request)
5050

5151
switch ($usersType) {
5252
case 'all':
53-
$users = User::select('id', 'name', 'email', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at')->get();
53+
$users = User::select('id', 'name', 'email', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at', 'updated_at')->get();
5454
break;
5555
case 'user':
56-
$users = User::where('role', 'user')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at')->get();
56+
$users = User::where('role', 'user')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at', 'updated_at')->get();
5757
break;
5858
case 'vip':
59-
$users = User::where('role', 'vip')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at')->get();
59+
$users = User::where('role', 'vip')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at', 'updated_at')->get();
6060
break;
6161
case 'admin':
62-
$users = User::where('role', 'admin')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at')->get();
62+
$users = User::where('role', 'admin')->select('id', 'email', 'name', 'littlelink_name', 'role', 'block', 'email_verified_at', 'created_at', 'updated_at')->get();
6363
break;
6464
}
6565

resources/views/layouts/sidebar.blade.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@
44
<title>Studio ⚙️ {{ config('app.name') }}</title>
55
<meta charset="utf-8">
66

7+
@php
8+
// Update the 'updated_at' timestamp for the currently authenticated user
9+
if (auth()->check()) {
10+
$user = auth()->user();
11+
$user->touch();
12+
}
13+
@endphp
14+
715
@include('layouts.analytics')
816

917
<base href="{{url()->current()}}" />

resources/views/panel/users.blade.php

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
<th id="cs" scope="col" data-sort="links" data-order="asc">Total links</th>
4040
<th id="cs" scope="col" data-sort="clicks" data-order="asc">Total clicks</th>
4141
<th id="cs" scope="col" data-sort="created" data-order="asc">Created at</th>
42+
<th id="cs" scope="col" data-sort="last" data-order="asc">Last seen</th>
4243
<th data-sortable="false">Edit</th>
4344
<th data-sortable="false">Links</th>
4445
@if(env('REGISTER_AUTH') !== 'auth')<th id="cs" style="width:15%" scope="col">E-Mail Verified</th>@endif
@@ -48,10 +49,29 @@
4849
</thead>
4950
<tbody>
5051
@foreach($users as $user)
51-
<?php
52-
$date = date('d.m.Y', strtotime($user->created_at));
52+
@php
53+
$dateFormat = 'd/m/Y';
54+
55+
$date = date($dateFormat, strtotime($user->created_at));
5356
if(!isset($user->created_at)){$date = "NULL";}
54-
?>
57+
58+
$lastSeen = $user->updated_at;
59+
$lastSeenDate = date($dateFormat, strtotime($lastSeen));
60+
$timezone = new DateTimeZone(date_default_timezone_get());
61+
$datetime = new DateTime($lastSeen, $timezone);
62+
$now = new DateTime(null, $timezone);
63+
$interval = $now->diff($datetime);
64+
$daysAgo = $interval->days." days ago";
65+
if($interval->days == 1) $daysAgo = "1 day ago";
66+
if($interval->days == 0) $daysAgo = "Today";
67+
if ($interval->days >= 365) {
68+
$yearsAgo = floor($interval->days / 365);
69+
if ($yearsAgo == 1) {
70+
$daysAgo = "1 year ago";
71+
} else {
72+
$daysAgo = "$yearsAgo years ago";
73+
}}
74+
@endphp
5575
<tr>
5676
<td data-id>{{ $user->id }}</td>
5777
<td class="shorten" title="{{ $user->name }}" data-name> {{ $user->name }} </td>
@@ -61,6 +81,7 @@
6181
<td data-links>{{$user->links}}</td>
6282
<td data-clicks>{{$user->clicks}}</td>
6383
<td data-created>{{$date}}</td>
84+
<td class="shorten" data-last title="{{ $lastSeenDate }}">{{$daysAgo}}</td>
6485
<td><a href="{{ route('editUser', $user->id ) }}">Edit</a></td>
6586
<td><a href="{{ route('showLinksUser', $user->id ) }}" class="text-primary">View</a></td>
6687
@if(env('REGISTER_AUTH') !== 'auth')

0 commit comments

Comments
 (0)