PHP 7.4.33
Preview: AbstractSelected.php Size: 4.57 KB
/var/www/multi-event-cfp.bitkit.dk/httpdocs/app/Mail/AbstractSelected.php
<?php

namespace App\Mail;

use App\Models\Abstracts;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use App\Lib\EmailSetupHelper;

class AbstractSelected extends Mailable
{
    use Queueable, SerializesModels;

    protected $abstract;
    protected $emailSetup;

    const KEY_TO_SUBMITTER_ABS_ACCEPT = "abstract_selected_accept";
    const KEY_TO_SUBMITTER_ABS_ACCEPT_RESERVE = "abstract_selected_accept_reserve";
    const KEY_TO_SUBMITTER_ABS_REJECT = "abstract_selected_reject";
    const KEY_TO_SUBMITTER_ABS_ACCEPT_PROVI = "abstract_selected_provisionally_accept";
    const KEY_TO_SUBMITTER_ABS_ACCEPT_PROVI_RESERVE = "abstract_selected_provisionally_accept_reserve";
    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct(Abstracts $abstract)
    {
        $this->abstract = $abstract;
        $this->emailSetup = new EmailSetupHelper();

        $this->formSettings = $this->abstract->event->form_settings;
        $this->abstractData = $this->abstract->data;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        $key = '';
        if ($this->abstract->selection_status == "Accepted") {
            $key = self::KEY_TO_SUBMITTER_ABS_ACCEPT;
        } elseif ($this->abstract->selection_status == "Rejected") {
            $key = self::KEY_TO_SUBMITTER_ABS_REJECT;
        } elseif ($this->abstract->selection_status == "Accepted Reserve") {
            $key = self::KEY_TO_SUBMITTER_ABS_ACCEPT_RESERVE;
        } elseif ($this->abstract->selection_status == "Provisionally Accepted") {
            $key = self::KEY_TO_SUBMITTER_ABS_ACCEPT_PROVI;
        } elseif ($this->abstract->selection_status == "Provisionally Accepted Reserved") {
            $key = self::KEY_TO_SUBMITTER_ABS_ACCEPT_PROVI_RESERVE;
        }
        $emailContents = $this->emailSetup->getEmailData($this->abstract->event->id, $key);

        $logo = config('app.url') . '/' . $this->abstract->event->theme['logo']['value'];
        $eventHeader = $this->abstract->event->event_name;
        $eventUrl = $this->abstract->event->eventUrl('submitter');
        $presentationUrl = $eventUrl . "presentations";

        $abstractSubmitter = $this->abstract->users('abstract_submitter')->first();
        $abstractSubmitterUserName = $abstractSubmitter->name;
        $presentationViewLink = $this->emailSetup->formatLinks($emailContents->body, 'presentation_view_link_title', $presentationUrl);

        // $reservePaperContent =  $this->abstract->selection_status == "Accepted" ? '.<br>' : ' as a reserve paper.';

        $titleLabel = getField($this->formSettings, 'title')[0]['label'] ? getField($this->formSettings, 'title')[0]['label'] : '';

        $titleField = getField($this->abstractData, 'title');

        if (!empty($titleField)) {
            $titleValue = isset($titleField[0]['value']) ? $titleField[0]['value'] : '';
        } else {
            $titleValue = '';
        }

        $variables = [
            'event_name' => $this->abstract->event->event_name,
            'submitter_name' => $abstractSubmitterUserName,
            'presentation_view_link' => $presentationViewLink,
            'abstract_id' => $this->abstract->id,
            "abstract_title_label" => $titleLabel,
            "abstract_title_value" => $titleValue,
        ];

        $subject = $this->emailSetup->formatEmailBody($emailContents->subject, $variables);
        $body = $this->emailSetup->formatEmailBody($emailContents->body, $variables);
        $body = html_entity_decode($this->emailSetup->removeLinkTitleFromBody($body, 'presentation_view_link_title'));

        // $body = "
        // <p>
        //     Hi $abstractSubmitterUserName,<br/><br>

        //     The abstract you submitted in the {$this->abstract->event->event_name} has been accepted
        //     by the selection committee$reservePaperContent
        //     Login to accept your invitation and complete outstanding requirements.<br/><br/>
        //     Link : <a href={$presentationUrl}>$presentationUrl</a><br>
        //     <br>
        //     Thank you,<br>
        //     {$this->abstract->event->event_name} Team<br>
        // </p>
        // ";

        return $this->from(config('app.admin_mail', 'Admin'), $this->abstract->event->event_name)
            ->subject($subject)
            ->view('emails.submitter.abstract_selected')
            ->with([
                "body" => $body,
                "eventHeader" => $eventHeader,
                "logo" => $logo
            ]);
    }
}

Directory Contents

Dirs: 0 × Files: 34
Name Size Perms Modified Actions
3.36 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.72 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
4.57 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.92 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
5.26 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.02 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
4.96 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.93 KB lrw-rw-r-- 2025-03-03 05:40:15
Edit Download
3.13 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.92 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.62 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.12 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.18 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
558 B lrw-rw-r-- 2025-10-28 05:25:19
Edit Download
3.32 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.35 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.17 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.59 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
4.22 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.10 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
5.12 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.23 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.63 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.58 KB lrw-rw-r-- 2024-07-09 04:25:22
Edit Download
879 B lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.06 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
507 B lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.54 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.67 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
5.42 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
3.46 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
4.31 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
1.32 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
2.97 KB lrw-r--r-- 2024-02-09 12:37:30
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).