Alimentalos/Backend

View on GitHub
relationships/src/Asserts/GroupAssert.php

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
<?php

namespace Alimentalos\Relationships\Asserts;

use App\Models\Group;
use App\Models\User;

trait GroupAssert
{
    /**
     * Assert group has the user as administrator.
     *
     * @param object|User $user
     * @param object|Group $group
     * @return bool
     */
    public function hasAdministrator(Group $group, User $user)
    {
        return $user->uuid === $group->user_uuid || $user->groups()->whereIn('status', [Group::ACCEPTED_STATUS, Group::ATTACHED_STATUS])->where('is_admin', true)->exists();
    }
}