escolalms/assign-without-account

Escola Headless LMS Assign without account

Maintainers

👁 qunabu

Package info

github.com/EscolaLMS/Assign-Without-Account

Type:package

pkg:composer/escolalms/assign-without-account

Statistics

Installs: 10 884

Dependents: 2

Suggesters: 0

Stars: 0

Open Issues: 0

0.1.18 2024-02-14 13:24 UTC

Requires

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT ad8d6ae4c35b4ad8c8b6da3e9d62be248b41e0d6

  • Tomasz Smolarek <tomasz.smolarek.woop@escolasoft.com>

README

👁 swagger
👁 codecov
👁 Tests PHPUnit in environments
👁 downloads
👁 downloads
👁 downloads

What does it do

The package is used to assign users without an account.

Installing

  • composer require escolalms/assing-without-account
  • php artisan migrate
  • php artisan db:seed --class="EscolaLms\AssignWithoutAccount\Database\Seeders\AssignWitoutAccountPermissionSeeder"

Requirements

You need to define email templates in the Templates package for AssignToProduct and AssignToProductable events.

Database

  1. user-submissions
id email status created_at updated_at morphable_type morphable_id
1 test@email.com sent 2022-04-15 07:36:12 2022-04-15 07:36:12 App\Models\Course 1
2 test@email.com accepted 2022-04-15 07:36:30 2022-04-15 07:36:30 EscolaLms\Cart\Models\Product 2

Example

  1. Create user submission like this:
POST /api/admin/user-submissions
{
 "email": "test@email.com",
 "morphable_id": 2,
 "morphable_type": "EscolaLms\\Cart\\Models\\Product"
}
  1. Create a new account.
  2. The product is assigned to your account.

Endpoints

All the endpoints are defined in swagger 👁 swagger

Tests

Run ./vendor/bin/phpunit to run tests. See tests folder as it's quite good staring point as documentation appendix.

Test details 👁 codecov
👁 Tests PHPUnit in environments

Events

  1. AssignToProduct - event dispatched after assigning user to product.
  2. AssignToProductable - event dispatched after assigning user to productable model.

Listeners

  1. AccountRegisteredListener - listens to newly created accounts.

How to use this on frontend.

Admin panel

List of user submissions 👁 List of user submissions

Permissions

Permissions are defined in seeder