Mailing

  • routy:
    /routes/vendor/icore/admin/mailings.php
  • kontrolery:
    N1ebieski\ICore\Http\Controllers\Admin\MailingController
  • model:
    N1ebieski\ICore\Models\Mailing
  • widoki:
    /resources/views/vendor/icore/admin/mailing
  • widok powiadomienia mailowego:
    /resources/views/vendor/icore/mails/mailing
  • pliki językowe:
    /resources/lang/vendor/icore/pl/mailings.php
    /resources/lang/vendor/icore/en/mailings.php


# Opis

iCore umożliwia wysyłkę mailingu do użytkowników serwisu, newslettera oraz na adresy e-mail zaimportowane w formacie JSON. Moderator może dodać nieograniczoną liczbę mailingów. Może mailing edytować, aktywować/dezaktywować lub usunąć. Proces wysyłki jest graficznie reprezentowany przez progress bar dostępny z poziomu panelu administracyjnego.

W momencie utworzenia mailingu dla każdego z odbiorców tworzony jest job i przekazany do kolejki w celu wykonania.

# Statusy

  • aktywny - przeznaczony do wykonania
  • nieaktywny
  • nieaktywny - zaplanowany - oczekujący na wykonanie (można określić dzień i godzinę); aktywacją zajmuje się zadanie cron.
  • w trakcie wykonania

W celu edycji aktywnego mailingu (w trakcie wysyłki) należy go wpierw zresetować, po czym ponownie zdefiniować odbiorców.

# Uprawnienia

  • admin.* - dostęp do wszystkich funkcjonalności panelu administracyjnego
  • admin.mailings.* - dostęp do wszystkich funkcjonalności mailingu w panelu administracyjnym
  • admin.mailings.view - dostęp do listy mailingów w panelu administracyjnym
  • admin.mailings.create - dostęp do dodawania mailingów w panelu administracyjnym
  • admin.mailings.status - dostęp do aktywacji/deaktywacji mailingów w panelu administracyjnym
  • admin.mailings.edit - dostęp do edycji mailingów w panelu administracyjnym
  • admin.mailings.delete - dostęp do usuwania mailingów w panelu administracyjnym

# Dynamiczne elementy w treści

W przypadku, gdy w treści kilku mailingów zamierzamy wstawiać tą samą wartość, albo zakładamy, że może się ona w przyszłości zmienić, można z poziomu pliku /config/icore.php skonfigurować specjalne klucze:

'replacement' => [
    ':home' => '<a href="' . env('APP_URL') . '">' . env('APP_NAME') . '</a>',
],

W powyższym przykładzie wstawienie w treści mailingu klucza :home spowoduje, że zostanie on zamieniony na link do strony głównej.

# Import listy adresów e-mail odbiorców

Prócz możliwości wysyłki mailingu do użytkowników serwisu oraz newslettera, iCore umożliwia zaimportowanie listy adresów e-mail w formacie JSON lub TXT. Prawidłowa struktura na poniższym przykładzie:

[
    {
        "email": "example1@example.pl"
    },
    {
        "email": "example2@example.pl"
    },
    {
        "email": "example3@example.pl"
    }
]
example1@example.pl
example2@example.pl
example3@example.pl

W przypadku duplikatów pierwszeństwo mają adresy e-mail powiązane z modelem użytkowników, następnie z modelem newslettera, na końcu importowane z listy.

# Konfiguracja edytora treści WYSIWYG

Zgodnie z dokumentacją pluginu Trumbowyg z poziomu assetu JS:

/resources/js/vendor/icore/admin/scripts/plugins/trumbowyg.js