No description or website provided.
PHP
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
database/migrations
src
tests
.editorconfig
.gitattributes
.gitignore
.travis.yml
LICENSE
README.md
composer.json
phpunit.xml.dist

README.md

Laravel Likeable

Build Status PHP from Packagist Latest Version License

Installation

Require this package, with Composer, in the root directory of your project.

$ composer require faustbrian/laravel-likeable

To get started, you'll need to publish the vendor assets and migrate:

php artisan vendor:publish --provider="BrianFaust\Likeable\LikeableServiceProvider" && php artisan migrate

Usage

Setup a Model

<?php

namespace App;

use BrianFaust\Likeable\HasLikesTrait;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasLikesTrait;
}

Post Model gets liked by User Model

$post->like($user);

Post Model gets disliked by User Model

$post->dislike($user);

Count all likes

$post->likeCount;

Collection of all likes

$post->likes;

Check if the Post Model is currently liked by the User Model

$post->liked($user);

Load posts that are currently liked by the User Model

Post::whereLiked($user)->get();

Count likes the Post Model has

$post->getLikeCount();

Count likes the Post Model has for a specific date

$post->getLikeCountByDate('2015-06-30');

Count likes the Post Model has between two dates

$post->getLikeCountByDate('2015-06-30', '2015-06-31');

Testing

$ phpunit

Security

If you discover a security vulnerability within this package, please send an e-mail to hello@brianfaust.me. All security vulnerabilities will be promptly addressed.

Credits

License

MIT © Brian Faust