jcc / laravel-vote by jcc

The package helps you to add user based vote system to your model
47,172
137
4
Package Data
Maintainer Username: jcc
Maintainer Contact: changejian@gmail.com (jcc)
Package Create Date: 2017-04-11
Package Last Update: 2023-06-07
Language: PHP
License: MIT
Last Refreshed: 2024-03-27 03:22:10
Package Statistics
Total Downloads: 47,172
Monthly Downloads: 236
Daily Downloads: 11
Total Stars: 137
Total Watchers: 4
Total Forks: 15
Total Open Issues: 2

Laravel 5 Vote System

:tada: This package helps you to add user based vote system to your model.

This project code is basically the same as laravel-follow.

Installation

You can install the package using Composer:

$ composer require jcc/laravel-vote -vvv

Then add the service provider to config/app.php:

Jcc\LaravelVote\VoteServiceProvider::class

Publish the migrations file:

$ php artisan vendor:publish --provider="Jcc\LaravelVote\VoteServiceProvider" --tag="migrations"

Finally, use VoteTrait in User model:

use Jcc\LaravelVote\Vote;

class User extends Model
{
    use Vote;
}

Or use CanBeVoted in Comment model:

use Jcc\LaravelVote\CanBeVoted;

class Comment extends Model
{
    use CanBeVoted;

    protected $vote = User::class;
}

Usage

For User model

Up vote a comment or comments

$comment = Comment::find(1);

$user->upVote($comment);

Down vote a comment or comments

$comment = Comment::find(1);

$user->downVote($comment);

Cancel vote a comment or comments

$comment = Comment::find(1);

$user->cancelVote($comment);

Get user has voted comment items

$user->votedItems(Comment::class)->get();

Check if user has up or down vote

$comment = Comment::find(1);

$user->hasVoted($comment);

Check if user has up vote

$comment = Comment::find(1);

$user->hasUpVoted($comment);

Check if user has down vote

$comment = Comment::find(1);

$user->hasDownVoted($comment);

For Comment model

Get comment voters

$comment->voters();

Count comment voters

$comment->countVoters();

Count comment up voters

$comment->countUpVoters();

Count comment down voters

$comment->countDownVoters();

Check if voted by

$comment->isVotedBy(1);

Reference

laravel-follow

License

MIT