sber permissions
This commit is contained in:
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
namespace App\Modules\SberPaymentOrder\Nova\Resources\Concerns;
|
||||
|
||||
use Illuminate\Auth\Access\AuthorizationException;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
|
||||
trait NovaSberPaymentOrderAuth
|
||||
{
|
||||
public function authorizeToView(Request $request)
|
||||
{
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->isSystemUser()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->resource->user_id == auth()->id()) {
|
||||
return;
|
||||
}
|
||||
|
||||
throw new AuthorizationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit button
|
||||
*/
|
||||
public function authorizedToUpdate(Request $request): bool
|
||||
{
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->isSystemUser()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit proceess
|
||||
*/
|
||||
public function authorizeToUpdate(Request $request): void
|
||||
{
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->isSystemUser()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->resource->user_id == auth()->id()) {
|
||||
return;
|
||||
}
|
||||
|
||||
throw new AuthorizationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete button
|
||||
*/
|
||||
public function authorizedToDelete(Request $request)
|
||||
{
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->isSystemUser()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function authorizeToDelete(Request $request)
|
||||
{
|
||||
$user = auth()->user();
|
||||
|
||||
if ($user->isSystemUser()) {
|
||||
return;
|
||||
}
|
||||
|
||||
throw new AuthorizationException();
|
||||
}
|
||||
|
||||
public function authorizedToForceDelete(Request $request)
|
||||
{
|
||||
throw_unless(auth()->user()->isMe(), AuthorizationException::class);
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
namespace App\Modules\SberPaymentOrder\Nova\Resources;
|
||||
|
||||
use App\Models\Branch\Branch;
|
||||
use App\Modules\SberPaymentOrder\Nova\Resources\Concerns\NovaSberPaymentOrderAuth;
|
||||
use App\Modules\SberPaymentOrder\Nova\Resources\Concerns\SberPaymentOrderFieldsForDetail;
|
||||
use App\Modules\SberPaymentOrder\Nova\Resources\Concerns\SberPaymentOrderFieldsForIndex;
|
||||
use App\Nova\Actions\MakeSberPaymentAction;
|
||||
@@ -31,6 +32,8 @@ use Outl1ne\NovaSimpleRepeatable\SimpleRepeatable;
|
||||
*/
|
||||
class NovaSberPaymentOrder extends Resource
|
||||
{
|
||||
use NovaSberPaymentOrderAuth;
|
||||
|
||||
/**
|
||||
* The model the resource corresponds to.
|
||||
*
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace App\Nova\Resources;
|
||||
use App\Models\CurrencyRate as ModelsCurrencyRate;
|
||||
use App\Nova\Resource;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Select;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
@@ -35,6 +36,36 @@ class CurrencyRate extends Resource
|
||||
'id',
|
||||
];
|
||||
|
||||
/**
|
||||
* Determine if the given resource is authorizable.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public static function authorizable()
|
||||
{
|
||||
if (auth()->user()->isSystemUser()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// disables
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the resource should be available for the given request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return bool
|
||||
*/
|
||||
public static function authorizedToViewAny(Request $request)
|
||||
{
|
||||
if (auth()->user()->isSystemUser()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the fields displayed by the resource.
|
||||
*
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Nova;
|
||||
|
||||
use App\Nova\Forms\NovaForm;
|
||||
use App\Nova\Resources\Branch\Branch;
|
||||
use App\Nova\Resources\Order\Card\CardOrder;
|
||||
use App\Nova\Resources\Order\Loan\LoanOrder;
|
||||
@@ -13,6 +14,7 @@ use Illuminate\Validation\Rules;
|
||||
use Laravel\Nova\Fields\BelongsToMany;
|
||||
use Laravel\Nova\Fields\Boolean;
|
||||
use Laravel\Nova\Fields\HasMany;
|
||||
use Laravel\Nova\Fields\Hidden;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\MorphToMany;
|
||||
use Laravel\Nova\Fields\Password;
|
||||
@@ -108,6 +110,16 @@ class User extends Resource
|
||||
->creationRules('required', Rules\Password::defaults())
|
||||
->updateRules('nullable', Rules\Password::defaults()),
|
||||
|
||||
Boolean::make(__('Phone verified'), 'phone_verified_at')
|
||||
->default(false)
|
||||
->fillUsing(function ($request, $model, $attribute, $requestAttribute) {
|
||||
if ($request->boolean('phone_verified_at')) {
|
||||
$model->phone_verified_at = now();
|
||||
}
|
||||
})
|
||||
->onlyOnForms()
|
||||
->canSeeWhen('isAdmin', $this),
|
||||
|
||||
Boolean::make(__('Active'), 'active')
|
||||
->default(true)
|
||||
->canSeeWhen('isAdmin', $this),
|
||||
|
||||
@@ -97,7 +97,7 @@ class NovaMenuRepo
|
||||
MenuItem::resource(LocaleManagerResource::class),
|
||||
])->collapsedByDefault(),
|
||||
|
||||
])->icon('cog')->collapsedByDefault(),
|
||||
])->icon('cog')->collapsedByDefault()->canSee(NovaPermissionRepo::isSuperAdmin()),
|
||||
|
||||
MenuSection::resource(OnlinePaymentHistoryResource::class)
|
||||
->icon('credit-card')
|
||||
|
||||
@@ -207,6 +207,7 @@
|
||||
"Users": "Ulanyjylar",
|
||||
"Variant Also Negotiates": "Wariant hem gepleşik geçirýär",
|
||||
"Verify Phone Number": "Telefon beligiňizi tassyklaň",
|
||||
"Phone verified": "Telefon tassyklanan",
|
||||
"Verify Email Address": "E-poçta salgysyny barlaň",
|
||||
"Verify Your Email Address": "E-poçta salgyňyzy barlaň",
|
||||
"Web Server is Down": "Web Serwer ýapyk",
|
||||
|
||||
Reference in New Issue
Block a user