public function vote($targets, $type = 'upvote', $class = __CLASS__)
    {
        $this->cancelVote($targets);

        return Follow::attachRelations($this, str_plural($type), $targets, $class);
    }
public function vote($targets, $type = 'upvote', $class = __CLASS__)
    {
        $this->cancelVote($targets);

        return Follow::attachRelations($this, str_plural($type), $targets, $class);
    }
public function vote ( $ targets , $ type = 'upvote' , $ class = __CLASS__ ) { $ this -> cancelVote ( $ targets ) ; return Follow :: attachRelations ( $ this , str_plural ( $ type ) , $ targets , $ class ) ; }
Vote an item or items.

@param int|array|\Illuminate\Database\Eloquent\Model $targets
@param string                                        $type
@param string                                        $class

@throws \Exception

@return array
Vote an item or items .