escolalms/mailerlite

Escola LMS MailerLite integration.

Installs: 6 404

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:package

0.4.2 2022-09-27 11:34 UTC

This package is auto-updated.

Last update: 2024-04-12 13:28:59 UTC


README

codecov phpunit downloads downloads downloads Maintainability Test Coverage

What does it do

This package is used for integration with MailerLite after dispatching events.

Installing

  • composer require escolalms/mailerlite

Example

You can set the package status and api key using the Facade

Config::set('escolalms_mailer_lite.package_status', PackageStatusEnum::ENABLED);
Config::set('escolalms_mailer_lite.api_key', '1234);

or Settings package

$this->actingAs($this->user, 'api')->postJson(
    '/api/admin/config',
    [
        'config' => [
            [
                'key' => 'escolalms_mailer_lite.package_status',
                'value' => PackageStatusEnum::ENABLED,
            ],
            [
                'key' => 'escolalms_mailer_lite.api_key',
                'value' => '1234',
            ],
        ]
    ]
);

Group names are also configurable.

$this->actingAs($this->user, 'api')->postJson(
    '/api/admin/config',
    [
        'config' => [
            [
                'key' => 'escolalms_mailer_lite.group_registered_group',
                'value' => 'registered users',
            ],
            [
                'key' => 'escolalms_mailer_lite.group_order_paid',
                'value' => 'order paid',
            ],
            [
                'key' => 'escolalms_mailer_lite.group_left_cart',
                'value' => 'left cart',
            ],
        ]
    ]
);

Tests

Run ./vendor/bin/phpunit to run tests.

Test details codecov phpunit

Listeners

Handling events

  • EscolaLms\Auth\Events\AccountConfirmed => add to group of registered users (escolalms_mailer_lite.group_registered_group)
  • EscolaLms\Cart\Events\ProductBought => add to group of users with paid orders (escolalms_mailer_lite.group_order_paid)
  • EscolaLms\Auth\Events\AccountBlocked => remove from all groups
  • EscolaLms\Cart\Events\AbandonedCartEvent => add to the group of users with abandoned carts (escolalms_mailer_lite.group_left_cart)
  • EscolaLms\Cart\Events\OrderCreated => remove from the group of users with abandoned carts (escolalms_mailer_lite.group_left_cart)