when two users become friend , it is shown
you and are friends //working fine
// but it is shown to every profile and i want that it is only shown on those two users(which are friends)
if you need any other file or function ,tell me.
my view :
@if(Auth::user()->hasFriendRequestPending($user))
<p>waiting for to accept ur reqst </p>
@elseif(Auth::user()->hasFriendRequestReceived($user))
<a href="" class="btn btn-primary" >Accept frnd reqst</a>
@elseif(Auth::user()->isFriendsWith($user))
<p>you and are friends</p>
@else
<a href="" class="btn btn-primary">Add as friend</a>
@endif
friend controller :
class FriendController extends Controller
{
public function getIndex(){
$friends=Auth::user()->friends();
$requests = Auth::user()->friendRequests();
return view('friends',['friends'=>$friends,'requests' => $requests]);
}
public function getAdd($username){
$user = User::where('username', $username)->first();
if(!$user){
return redirect()->route('home')->with('info', 'That user could not be found');
}
if(Auth::user()->id === $user->id){
return redirect()->route('home');
}
if(Auth::user()->hasFriendRequestPending($user) || $user->hasFriendRequestPending(Auth::user())) {
return redirect()->route('myplace', ['username' => $user->username])
->with('info', 'Friend Request already pending.');
}
if(Auth::user()->isFriendsWith($user)) {
return redirect()->route('myplace', ['username' => $user->username])
->with('info', 'You are already friends.');
}
Auth::user()->addFriend($user);
return redirect()->route('myplace', ['username' => $user->username])
->with('info', 'Friend Request Sent.');
}
public function getAccept($username){
$user = User::where('username', $username)->first();
if(!$user) {
return redirect()->route('home')->with('info', 'That user can not be found.');
}
if(!Auth::user()->hasFriendRequestReceived($user)) {
return redirect()->route('home');
}
Auth::user()->acceptFriendRequest($user);
return redirect()->route('myplace', ['username' => $user->username])
->with('info', 'Friend Request accepted.');
}
}
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire