This package helps you to add user block system to your project.
- So simply and easy.
- Use "ON DELETE CASCADE" in block relationships table.
- Support Laravel 5.4~
- Required php >=7.0
First, pull in the package through Composer.
Run composer require barisdemirhan/laravel-user-blockable
And then, include the service provider within config/app.php
.
'providers' => [
Hareku\LaravelBlockable\BlockableServiceProvider::class,
];
Publish the config file. (blockable.php)
$ php artisan vendor:publish --provider="Hareku\LaravelBlockable\BlockableServiceProvider"
Finally, use Blockable trait in User model.
use Hareku\LaravelBlockable\Traits\Blockable;
class User extends Model
{
use Blockable;
}
$user->block(1);
$user->block([1,2,3,4]);
$user->addBlockers(1);
$user->addBlockers([1,2,3,4]);
$user->unblock(1);
$user->unblock([1,2,3,4]);
// blocker users
$user->blockerUsers()->get(); // Get blocker user models.
$user->blockerRelationships()->get(); // Get blocker relationship models.
// blocked by users
$user->blockingUsers()->get();
$user->blockingRelationships()->get();
$user->isBlocking(1);
$user->isBlocking([1,2,3,4]);
$user->isBlockedBy(1);
$user->isBlockedBy([1,2,3,4]);
$user->isMutualBlock(1);
$user->isMutualBlock([1,2,3,4]);
$user->block([1,2,3]);
$user->blockerIds(); // [1,2,3]
$user->blockingIds();
$user->blockerUsers()->pluck('id')->all(); // [1,2,3]
$user->rejectNotBlocker([1,2,3,4,5]); // [1,2,3]
$user->block([1,2,3]);
$user->rejectNotBlocking([1,2,3,4,5]); // [1,2,3]
MIT
hareku (hareku908@gmail.com)
barisdemirhan (barisdemirhn@gmail.com)