Files
exchange-2.0/app/Classes/Modules/Currencies/Standards/Rules/CanCreateCurrency.php
T
CheeSiong dec78bf8d7 Create Currency Logic Class
Update Currency Selling Logic Class
Delete Currency Selling Logic Class
Create Currency Log Service Class
2020-11-29 12:39:36 +08:00

55 lines
1.3 KiB
PHP

<?php
namespace App\Classes\Modules\Currencies\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Currencies\DataTransferObjects\SegmentObject;
use App\Classes\Modules\Currencies\Standards\Validators\CurrencyValidation;
class CanCreateCurrency extends AbstractRule
{
/** @var currencyValidation */
private $currencyValidation;
/**
* CanCreateCurrency constructor.
* @param CurrencyValidation $currencyValidation
*/
public function __construct(CurrencyValidation $currencyValidation)
{
$this->currencyValidation = $currencyValidation;
}
/**
* @return bool
*/
protected function authorized(): bool
{
// TODO Set Authorization rules
if (!\Auth::user()->can('add currency')) {
return false;
}
return true;
}
/**
* @param SegmentObject $object
* @return bool
* @throws \App\Classes\Exceptions\RequestValidationException
*/
protected function validators($object): bool
{
return $this->currencyValidation->validate($object);
}
/**
* @param SegmentObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}