1. Go to this page and download the library: Download laravel-interaction/vote library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
laravel-interaction / vote example snippets
use Illuminate\Database\Eloquent\Model;
use LaravelInteraction\Vote\Concerns\Voter;
class User extends Model
{
use Voter;
}
use Illuminate\Database\Eloquent\Model;
use LaravelInteraction\Vote\Concerns\Voteable;
class Channel extends Model
{
use Voteable;
}
use LaravelInteraction\Vote\Tests\Models\Channel;
/** @var \LaravelInteraction\Vote\Tests\Models\User $user */
/** @var \LaravelInteraction\Vote\Tests\Models\Channel $channel */
// Vote to Voteable
$user->vote($channel);
$user->upvote($channel);
$user->downvote($channel);
$user->cancelVote($channel);
// Compare Voteable
$user->hasVoted($channel);
$user->hasNotVoted($channel);
$user->hasUpvoted($channel);
$user->hasNotUpvoted($channel);
$user->hasDownvoted($channel);
$user->hasNotDownvoted($channel);
// Get voted info
$user->voterVotes()->count();
// with type
$user->voterVotes()->withType(Channel::class)->count();
$user->votedChannels()->count();
$user->upvotedChannels()->count();
$user->downvotedChannels()->count();
// get voted channels
Channel::query()->whereVotedBy($user)->get();
Channel::query()->whereUpvotedBy($user)->get();
Channel::query()->whereDownvotedBy($user)->get();
// get voted channels doesnt voted
Channel::query()->whereNotVotedBy($user)->get();
Channel::query()->whereNotUpvotedBy($user)->get();
Channel::query()->whereNotDownvotedBy($user)->get();