fix: prevent display of non-existing profiles
This commit is contained in:
parent
3670fc575b
commit
85962de188
@ -62,6 +62,15 @@ class ProfileController extends Controller
|
|||||||
|
|
||||||
public function showSingleProfile(User $user)
|
public function showSingleProfile(User $user)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
if (is_null($user->profile)) {
|
||||||
|
|
||||||
|
return redirect()
|
||||||
|
->back()
|
||||||
|
->with('error', "This user doesn't have a profile.");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
$socialMediaProfiles = json_decode($user->profile->socialLinks, true);
|
$socialMediaProfiles = json_decode($user->profile->socialLinks, true);
|
||||||
$createdDate = Carbon::parse($user->created_at);
|
$createdDate = Carbon::parse($user->created_at);
|
||||||
|
|
||||||
|
@ -28,48 +28,50 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
||||||
@foreach ($users as $user)
|
@foreach ($users as $user)
|
||||||
<div class="col-md-4">
|
@if (!is_null($user->profile))
|
||||||
<div class="card card-widget widget-user">
|
<div class="col-md-4">
|
||||||
<div class="widget-user-header bg-secondary">
|
<div class="card card-widget widget-user">
|
||||||
<h3 class="widget-user-username">{{ $user->name }}</h3>
|
<div class="widget-user-header bg-secondary">
|
||||||
<h5 class="widget-user-desc">{{ $user->profile->profileShortBio }}</h5>
|
<h3 class="widget-user-username">{{ $user->name }}</h3>
|
||||||
</div>
|
<h5 class="widget-user-desc">{{ $user->profile->profileShortBio }}</h5>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="widget-user-image">
|
<div class="widget-user-image">
|
||||||
@if($user->profile->avatarPreference == 'gravatar')
|
@if($user->profile->avatarPreference == 'gravatar')
|
||||||
<img class="profile-user-img elevation-2 img-fluid img-circle" src="https://gravatar.com/avatar/{{md5($user->email)}}" alt="{{ __('User profile picture') }}">
|
<img class="profile-user-img elevation-2 img-fluid img-circle" src="https://gravatar.com/avatar/{{md5($user->email)}}" alt="{{ __('User profile picture') }}">
|
||||||
@else
|
@else
|
||||||
<img class="profile-user-img elevation-2 img-fluid img-circle" src="https://crafatar.com/avatars/{{$user->uuid}}" alt="{{ __('User profile picture') }}">
|
<img class="profile-user-img elevation-2 img-fluid img-circle" src="https://crafatar.com/avatars/{{$user->uuid}}" alt="{{ __('User profile picture') }}">
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer text-center">
|
<div class="card-footer text-center">
|
||||||
|
|
||||||
@if (Auth::user()->is($user))
|
@if (Auth::user()->is($user))
|
||||||
|
|
||||||
<div class="user-indicator mb-2">
|
<div class="user-indicator mb-2">
|
||||||
|
|
||||||
<span class="badge badge-success">{{__("It's you!")}}</span>
|
<span class="badge badge-success">{{__("It's you!")}}</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<div class="roles mb-2">
|
<div class="roles mb-2">
|
||||||
|
|
||||||
@foreach ($user->roles as $role)
|
@foreach ($user->roles as $role)
|
||||||
|
|
||||||
<span class="badge badge-secondary mr-2">{{ucfirst($role->name)}}</span>
|
<span class="badge badge-secondary mr-2">{{ucfirst($role->name)}}</span>
|
||||||
|
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button type="button" class="btn btn-sm btn-primary" onclick="window.location.href='{{ route('showSingleProfile', ['user' => $user->id]) }}'"><i class="fa fa-eye"></i> {{__('Profile')}}</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- /.widget-user -->
|
||||||
<button type="button" class="btn btn-sm btn-primary" onclick="window.location.href='{{ route('showSingleProfile', ['user' => $user->id]) }}'"><i class="fa fa-eye"></i> {{__('Profile')}}</button>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- /.widget-user -->
|
@endif
|
||||||
</div>
|
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user