$97 GRAYBYTE WORDPRESS FILE MANAGER $40

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/FormMigration/

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

namespace Give\FormMigration;

use Give\DonationForms\V2\Models\DonationForm as DonationFormV2;
use Give\FormMigration\Commands\MigrationCommand;
use Give\FormMigration\Commands\TransferCommand;
use Give\FormMigration\Controllers\MigrationController;
use Give\FormMigration\Controllers\TransferController;
use Give\FormMigration\DataTransferObjects\TransferOptions;
use Give\Framework\Permissions\Facades\UserPermissions;
use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface;
use WP_CLI;
use WP_REST_Request;
use WP_REST_Server;

/**
 * @since 3.0.0
 */
class ServiceProvider implements ServiceProviderInterface
{
    /**
     * @inheritDoc
     */
    public function register()
    {
        give()->singleton(Pipeline::class, function () {
            return new Pipeline([
                Steps\MigrateMeta::class,
                Steps\FormTitle::class,
                Steps\FormTemplate\ClassicTemplateSettings::class,
                Steps\FormTemplate\SequoiaTemplateSettings::class,
                Steps\FormTemplate\LegacyTemplateSettings::class,
                Steps\DonationOptions::class,
                Steps\RecurringDonationOptions::class,
                Steps\FormFields::class,
                Steps\FormFields\LoginRegistration::class,
                Steps\FormFields\CompanyDonations::class,
                Steps\DonationGoal::class,
                Steps\TermsAndConditions::class,
                Steps\FormTaxonomies::class,
                Steps\FormGrid::class,
                Steps\FormFieldManager::class,
                Steps\OfflineDonations::class,
                Steps\PaymentGateways::class,
                Steps\EmailSettings::class,
                Steps\FormMeta::class,
                Steps\PdfSettings::class,
                Steps\FeeRecovery::class,
                Steps\ConstantContact::class,
                Steps\PerFormGateways::class,
                Steps\Mailchimp::class,
                Steps\FundsAndDesignations::class,
                Steps\GiftAid::class,
                Steps\FormFeaturedImage::class,
                Steps\FormExcerpt::class,
                Steps\ConvertKit::class,
                Steps\ActiveCampaign::class,
                Steps\DoubleTheDonation::class,
                Steps\CurrencySwitcher::class,
                Steps\RazorpayPerFormSettings::class,
            ]);
        });
    }

    /**
     * @inheritDoc
     */
    public function boot()
    {
        $this->registerRoutes();
        $this->registerCommands();
    }

    protected function registerRoutes()
    {
        add_action('rest_api_init', function () {
            // give-api/v2/admin/forms/migrate
            register_rest_route('give-api/v2', 'admin/forms/migrate/(?P<id>\d+)', [
                'methods'             => WP_REST_Server::CREATABLE,
                'callback'            => function (WP_REST_Request $request) {
                    return (new MigrationController($request))(
                        DonationFormV2::find($request->get_param('id'))
                    );
                },
                'permission_callback' => function () {
                    return UserPermissions::donationForms()->canEdit();
                },
                'args'                => [
                    'id' => [
                        'type'              => 'integer',
                        'sanitize_callback' => 'absint',
                        'description'       => __('The ID of the form (v2) to migrate to v3.', 'give'),
                    ],
                ],
            ]);

            // give-api/v2/admin/forms/transfer
            register_rest_route('give-api/v2', 'admin/forms/transfer', [
                'methods'             => WP_REST_Server::CREATABLE,
                'callback'            => function (WP_REST_Request $request) {
                    return (new TransferController($request))(
                        DonationFormV2::find($request->get_param('formId')),
                        TransferOptions::fromRequest($request)
                    );
                },
                'permission_callback' => function () {
                    return UserPermissions::donationForms()->canEdit();
                },
                'args'                => [
                    'formId'    => [
                        'type'              => 'integer',
                        'sanitize_callback' => function ($value) {
                            return intval($value);
                            // return array_map('intval', explode(',', $value));
                        },
                        'description'       => __('The ID of the form (v3) to transfer donations (from v2).', 'give'),
                    ],
                    'changeUrl' => [
                        'type'     => 'boolean',
                        'required' => false,
                        'default'  => true,
                    ],
                    'delete'    => [
                        'type'     => 'boolean',
                        'required' => true,
                    ],
                    'redirect'  => [
                        'type'     => 'boolean',
                        'required' => false,
                        'default'  => true,
                    ],
                ],
            ]);
        }, 9);
    }

    protected function registerCommands()
    {
        if (defined('WP_CLI') && WP_CLI) {
            error_reporting(E_ALL & ~E_DEPRECATED);
            WP_CLI::add_command('givewp form:migrate', MigrationCommand::class);
            WP_CLI::add_command('givewp form:transfer', TransferCommand::class);
        }
    }
}


Current_dir [ WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Actions
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Commands
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Concerns
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Contracts
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Controllers
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
DataTransferObjects
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
Steps
--
4 Apr 2026 1.57 AM
bravrvjk / bravrvjk
0755
FormMetaDecorator.php
29.68 KB
17 Sep 2025 8.52 PM
bravrvjk / bravrvjk
0644
Pipeline.php
1.14 KB
16 Oct 2023 9.55 PM
bravrvjk / bravrvjk
0644
ServiceProvider.php
5.559 KB
28 Jan 2026 8.00 PM
bravrvjk / bravrvjk
0644
StepProcessor.php
0.586 KB
16 Oct 2023 9.55 PM
bravrvjk / bravrvjk
0644
functions.php
2.443 KB
2 Nov 2023 11.14 PM
bravrvjk / bravrvjk
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF