Skip to main content

Available Actions

The admin package includes actions for administrative operations.
ActionContractNamespacePurpose
SendAdminAccountInvitationActionSendAdminAccountInvitationActionContractEsign\UnleashCommerce\Admin\ActionsSend invitation to admin users
AcceptAdminAccountInvitationActionAcceptAdminAccountInvitationActionContractEsign\UnleashCommerce\Admin\ActionsAccept admin account invitation

Core Actions in Admin

The admin panel also has access to all core actions for managing the business logic of the shop.

Using Admin Actions

Inject actions into your admin controllers:
use Esign\UnleashCommerce\Admin\Contracts\Actions\SendAdminAccountInvitationAction;

public function inviteAdmin(SendAdminAccountInvitationAction $sendInvitation)
{
    $sendInvitation->execute($adminUser);
    
    return response()->json(['message' => 'Invitation sent']);
}

Custom Admin Actions

Create custom admin actions by implementing the action contract:
namespace App\Actions;

use Esign\UnleashCommerce\Admin\Contracts\Actions\SendAdminAccountInvitationAction as SendAdminAccountInvitationActionContract;

class CustomSendAdminAccountInvitationAction implements SendAdminAccountInvitationActionContract
{
    public function execute($adminUser): void
    {
        // Your custom implementation
    }
}
Register in a service provider:
use Esign\UnleashCommerce\Admin\Contracts\Actions\SendAdminAccountInvitationAction as SendAdminAccountInvitationActionContract;

public function register()
{
    $this->app->bind(
        SendAdminAccountInvitationActionContract::class,
        CustomSendAdminAccountInvitationAction::class
    );
}