Comments (2)
Hey,
You can use the getAllFriendships()
method which returns all types of friendships.
You can then get the status of the friendship (0=Pending, 1=Accepted, 2=Denied, 3=Blocked) and eager load the sender/recipient details (username, email, etc) and the filter through the collection to display the results as desired.
A very basic way of testing the same would be -
$user = Auth::user();
$friends = $user->getAllFriendships();
foreach($friends as $friend)
{
echo 'username = ' . $friend->sender->username; (or $friend->recipient->username)
if($friend->status == 0)
echo 'status = PENDING';
else if($friend->status == 1)
echo 'status = ACCEPTED';
else if($friend->status == 2)
echo 'status = DENIED';
else if($friend->status == 3)
echo 'status = BLOCKED';
}
Now there is a limitation here which unfortunately we cannot get fixed since it seems this package is no longer being maintained (or accepting PR's) is that the methods will return the details of the requesting user itself which leads to a mess and confusion between friend requests sent and friend requests received by the user.
Hence why I personally whenever in use of this package, run multiple loops i.e., instead of using getAllFriendships()
, I make use of the combination of getAcceptedFriendships()
, getDeniedFriendships()
, getBlockedFriendships()
, etc. (not very efficient I know, but thats what I got to work with until I can fix this with tests).
If anyone has a better way to of doing it, please share here or better create a PR.
Hope this helps.
from laravel-friendships.
Thanks @TechTailor
I was looking for exactly this: 0=Pending, 1=Accepted, 2=Denied, 3=Blocked
from laravel-friendships.
Related Issues (20)
- getAcceptedFriends not returning the user details HOT 7
- can't send friend request HOT 2
- how do i use UUID HOT 2
- Call to undefined method App\User::getPendingsCount() HOT 2
- PHP 7.2 count() Issue HOT 2
- "Incorrect table name" after publishing the vendor HOT 2
- Does not work with Laravel 5.8 (Event::fire) HOT 12
- laravel issue when I add notes to database HOT 3
- laravel-friendships needs a maintainer HOT 10
- How To Fetch Posts For only friends HOT 2
- Will this work HOT 3
- How do you check relationship with other user before sending a friend request? HOT 1
- Support for Laravel 6
- Laravel 7 support HOT 7
- Is this still maintained? HOT 3
- Replace usage of deprecated Illuminate\Events\Dispatcher::fire() HOT 4
- Composer install hootlex requires version ~5.* HOT 13
- Why getFriends method returns all friends ? HOT 4
- Method Illuminate\Events\Dispatcher::fire does not exist HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from laravel-friendships.