$40 GRAYBYTE WORDPRESS FILE MANAGER $50

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/home/bravrvjk/itiministry.org/wp-content/plugins/give/src/Onboarding/

HOME
Current File : /home/bravrvjk/itiministry.org/wp-content/plugins/give/src/Onboarding//FormRepository.php
<?php

namespace Give\Onboarding;

use Exception;
use Give\Campaigns\Models\Campaign;
use Give\Campaigns\ValueObjects\CampaignGoalType;
use Give\Campaigns\ValueObjects\CampaignStatus;
use Give\Campaigns\ValueObjects\CampaignType;
use Give\DonationForms\Models\DonationForm;
use Give\DonationForms\ValueObjects\DonationFormStatus;

/**
 * @since 2.8.0
 */
class FormRepository
{

    /** @var SettingsRepository */
    protected $settingsRepository;

    /** @var DefaultFormFactory */
    protected $defaultFormFactory;

    /**
     * @since 2.8.0
     *
     * @param SettingsRepositoryFactory $settingsRepositoryFactory
     * @param DefaultFormFactory        $defaultFormFactory
     */
    public function __construct(
        SettingsRepositoryFactory $settingsRepositoryFactory,
        DefaultFormFactory $defaultFormFactory
    ) {
        $this->settingsRepository = $settingsRepositoryFactory->make('give_onboarding');
        $this->defaultFormFactory = $defaultFormFactory;
    }

    /**
     * @since 2.8.0
     * @return int Form ID
     *
     */
    public function getOrMake()
    {
        return $this->getDefaultFormID() ?: $this->makeAndPersist();
    }

    /**
     * @since 2.8.0
     * @return int Form ID
     *
     */
    public function getDefaultFormID()
    {
        $formID = $this->settingsRepository->get('form_id');

        return $this->isFormAvailable($formID) ? $formID : 0;
    }

    /**
     * @since 2.8.0
     *
     * @param int $formID
     *
     * @return bool
     *
     */
    protected function isFormAvailable($formID)
    {
        $status = get_post_status($formID);

        return ! (false === $status || 'trash' == $status);
    }

    /**
     * @since 4.1.0 Update title to "Fundraising Campaign Form"
     * @since 4.0.0 Replace "Donation Form" with "Campaign Form"
     * @since 3.15.0 Create the default v3 form.
     * @since 2.8.0
     * @return int Form ID
     *
     * @throws Exception
     */
    protected function makeAndPersist(): int
    {
        $campaign = Campaign::create([
            'type' => CampaignType::CORE(),
            'title' => __('Fundraising Campaign', 'give'),
            'shortDescription' => '',
            'longDescription' => '',
            'logo' => '',
            'image' => '',
            'primaryColor' => '#0b72d9',
            'secondaryColor' => '#27ae60',
            'goal' => 1000,
            'goalType' => CampaignGoalType::AMOUNT(),
            'status' => CampaignStatus::ACTIVE(),
        ]);

        $form = DonationForm::find($campaign->defaultFormId);

        if ($form) {
            $form->title = $campaign->title;
            $form->status = DonationFormStatus::PUBLISHED();
            $form->settings->designId = 'multi-step';
            $form->settings->designSettingsImageUrl = GIVE_PLUGIN_URL . 'build/assets/dist/images/admin/onboarding/header-image.jpg';
            $form->settings->designSettingsImageStyle = 'above';
            $form->settings->designSettingsImageAlt = $campaign->title;

            $form->save();
        }

        $this->settingsRepository->set('form_id', $campaign->defaultFormId);
        $this->settingsRepository->save();

        return $campaign->defaultFormId;
    }
}


Current_dir [ WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Config
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Helpers
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Migrations
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Routes
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Setup
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Wizard
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
BlockFactory.php
3.27 KB
14 Aug 2024 11.11 PM
bravrvjk / bravrvjk
0644
DefaultFormFactory.php
9.258 KB
31 Mar 2025 11.17 PM
bravrvjk / bravrvjk
0644
FormRepository.php
3.164 KB
16 Apr 2025 5.25 PM
bravrvjk / bravrvjk
0644
LocaleCollection.php
9.172 KB
24 Nov 2021 4.55 AM
bravrvjk / bravrvjk
0644
SettingsRepository.php
1.471 KB
24 Nov 2021 4.55 AM
bravrvjk / bravrvjk
0644
SettingsRepositoryFactory.php
0.47 KB
24 Nov 2021 4.55 AM
bravrvjk / bravrvjk
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF