HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wpmuhibbah_err/wp-content/plugins/give/src/DonationSummary/SummaryView.php
<?php

namespace Give\DonationSummary;

use Give\Helpers\Form\Template;

/**
 * @since 2.17.0
 */
class SummaryView
{

    /**
     * @since 2.17.0
     * @var int
     */
    protected $formID;

    /**
     * @since 2.18.0
     * @var string
     */
    protected $template;

    /**
     * @since 2.17.0
     * @var array
     */
    protected $templateOptions;

    /**
     * @since 2.17.0
     *
     * @param int $formID
     */
    public function __invoke($formID)
    {
        $this->formID = $formID;
        $this->template = Template::getActiveID($formID);
        $this->templateOptions = Template::getOptions($formID);

        /**
         * @hook give_donation_form_user_info
         * @hook give_donation_form_before_submit
         */
        add_action($this->getFormTemplateLocation(), [$this, 'maybeRender']);
    }

    public function maybeRender()
    {
        if ($this->isDonationSummaryEnabled()) {
            if (in_array(Template::getActiveID($this->formID), [ 'sequoia', 'classic'])) {
                $this->render();
            }
        }
    }

    /**
     * @since 2.17.0
     */
    public function render()
    {
        do_action( 'give_donation_summary_top' );
        include 'resources/views/summary.php';
        do_action( 'give_donation_summary_bottom' );
    }

    public function getPrimaryColor()
    {
        return $this->templateOptions['visual_appearance']['primary_color'];
    }

    /**
     * @since 2.17.0
     * @return string
     */
    public function getFormTemplateLocation()
    {
        if (isset($this->templateOptions['payment_information']) && isset($this->templateOptions['payment_information']['donation_summary_location'])) {
            return $this->templateOptions['payment_information']['donation_summary_location'];
        }

        return 'give_donation_form_before_submit'; // Default location.
    }

    /**
     * @since 2.17.0
     * @return string
     */
    public function getSummaryHeading()
    {
        if (isset($this->templateOptions['payment_information']) && isset($this->templateOptions['payment_information']['donation_summary_heading'])) {
            return $this->templateOptions['payment_information']['donation_summary_heading'];
        }

        return '';
    }

    /**
     * @since 2.17.0
     * @return bool
     */
    public function isDonationSummaryEnabled()
    {
        return isset($this->templateOptions['payment_information'])
               && isset($this->templateOptions['payment_information']['donation_summary_enabled'])
               && give_is_setting_enabled($this->templateOptions['payment_information']['donation_summary_enabled']);
    }

    /**
     * @since 2.17.0
     * @return bool
     */
    protected function isFeeRecoveryEnabled()
    {
        if (class_exists('\GiveFeeRecovery\Helpers\Form\Form')) {
            return \GiveFeeRecovery\Helpers\Form\Form::canRecoverFee($this->formID);
        }

        return false;
    }

    /**
     * @since 2.19.0 - remove check for Give_Recurring
     * @return bool
     * @since 2.17.0
     */
    protected function isRecurringEnabled()
    {
        return give_recurring_is_recurring($this->formID);
    }

    /**
     * @since 2.18.0
     * @return bool
     */
    protected function isMultiStep()
    {
        return $this->template === 'sequoia';
    }
}