<?php namespace Bixo\Payment\Policies; use Bixo\Payment\Models\Gateway; use Illuminate\Foundation\Auth\User as Authenticatable; trait GatewayAction { /** * Determine if the given user can copy the given gateway. * * @param Authenticatable $user * * @return bool */ public function copy(Authenticatable $user, Gateway $gateway) { if ($authUser->canDo('payment.gateway.action.copy')) { return true; } $this->model->is_owner; } /** * Determine if the given user can empty the given gateway. * * @param Authenticatable $user * * @return bool */ function empty(Authenticatable $user, Gateway $gateway) { if ($authUser->canDo('payment.gateway.action.empty')) { return true; } $this->model->is_owner; } /** * Determine if the given user can transfer the given gateway. * * @param Authenticatable $user * * @return bool */ public function transfer(Authenticatable $user, Gateway $gateway) { if ($authUser->canDo('payment.gateway.action.transfer')) { return true; } $this->model->is_owner; } }