Files
omair saleh 8a28eb1790 Revert "Merge branch 'dashboardReport' into 'master'"
This reverts merge request !5
2019-03-19 09:57:38 +00:00

43 lines
1.1 KiB
PHP

<?php
namespace App\Classes\Modules\Accounts\Validation;
use App\Classes\Modules\Accounts\DataTransferObjects\UserInvitationObject;
use App\Classes\Modules\ControllerLogic\Exceptions\ResourceConflictException;
use App\Models\UserInvitation;
class InvitationAlreadyExists
{
/** @var UserInvitation */
private $repository;
/**
* CreatesUserInvitation constructor.
* @param UserInvitation $repository
*/
public function __construct(UserInvitation $repository)
{
$this->repository = $repository;
}
/**
* @param UserInvitationObject $object
* @return bool
* @throws ResourceConflictException
*/
public function execute(UserInvitationObject $object){
// ensure that there is not already an invitation for the email
$existingInvitations = $this->repository->where('email', $object->getInviteeEmail())->first();
if ($existingInvitations) {
throw new ResourceConflictException("An existing invitation already exists for the email {$object->getInviteeEmail()}");
}
return true;
}
}