403Webshell
Server IP : 192.158.238.246  /  Your IP : 18.227.72.114
Web Server : LiteSpeed
System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64
User : jenniferflocom ( 1321)
PHP Version : 8.1.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/7779/cwd/plugins/give/src/EventTickets/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/7779/cwd/plugins/give/src/EventTickets//ServiceProvider.php
<?php

namespace Give\EventTickets;

use Give\BetaFeatures\Facades\FeatureFlag;
use Give\EventTickets\Actions\AddEventTicketsToDonationConfirmationPageDonationTotal;
use Give\EventTickets\Actions\AddEventTicketsToDonationConfirmationPageEventTicketDetails;
use Give\EventTickets\Actions\RegisterEventsMenuItem;
use Give\EventTickets\Actions\RenderDonationFormBlock;
use Give\EventTickets\Actions\UpdateDonationConfirmationPageReceiptDonationAmount;
use Give\EventTickets\Repositories\EventRepository;
use Give\EventTickets\Repositories\EventTicketRepository;
use Give\EventTickets\Repositories\EventTicketTypeRepository;
use Give\Framework\Migrations\MigrationsRegister;
use Give\Framework\Receipts\DonationReceipt;
use Give\Framework\Support\ValueObjects\Money;
use Give\Helpers\Hooks;
use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface;

/**
 * @since 3.6.0
 */
class ServiceProvider implements ServiceProviderInterface
{
    /**
     * @inheritDoc
     *
     * @since 3.6.0
     */
    public function register(): void
    {
        if (!FeatureFlag::eventTickets()) {
            return;
        }

        global $wpdb;
        $wpdb->give_events = "{$wpdb->prefix}give_events";
        $wpdb->give_event_tickets = "{$wpdb->prefix}give_event_tickets";
        $wpdb->give_event_ticket_types = "{$wpdb->prefix}give_event_ticket_types";

        give()->singleton('events', EventRepository::class);
        give()->singleton('eventTickets', EventTicketRepository::class);
        give()->singleton('eventTicketTypes', EventTicketTypeRepository::class);
    }

    /**
     * @inheritDoc
     *
     * @since 3.6.0
     */
    public function boot(): void
    {
        if (!FeatureFlag::eventTickets()) {
            return;
        }

        $this->registerMigrations();
        $this->registerRoutes();
        $this->registerMenus();
        $this->registerFormExtension();
    }

    /**
     * @since 3.6.0
     */
    private function registerMigrations(): void
    {
        give(MigrationsRegister::class)->addMigrations([
            Migrations\CreateEventsTable::class,
            Migrations\CreateEventTicketTypesTable::class,
            Migrations\CreateEventTicketsTable::class,
        ]);
    }

    /**
     * @since 3.6.0
     */
    private function registerRoutes(): void
    {
        Hooks::addAction('rest_api_init', Routes\CreateEvent::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\CreateEventTicketType::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\DeleteEventsListTable::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\DeleteEventTicketType::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEvents::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEventsListTable::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEventForms::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEventTickets::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEventTicketTypes::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\GetEventTicketTypeTickets::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\UpdateEvent::class, 'registerRoute');
        Hooks::addAction('rest_api_init', Routes\UpdateEventTicketType::class, 'registerRoute');
    }

    /**
     * @since 3.6.0
     */
    private function registerMenus(): void
    {
        Hooks::addAction('admin_menu', RegisterEventsMenuItem::class, '__invoke', 15);
    }

    /**
     * @since 3.6.0
     */
    private function registerFormExtension()
    {
        Hooks::addAction('givewp_form_builder_enqueue_scripts', Actions\EnqueueFormBuilderScripts::class);
        Hooks::addAction('givewp_donation_form_enqueue_scripts', Actions\EnqueueDonationFormScripts::class);
        Hooks::addFilter(
            'givewp_donation_form_block_render_givewp/event-tickets',
            RenderDonationFormBlock::class,
            '__invoke',
            10,
            4
        );

        //TODO: write unit tests for these actions
        Hooks::addAction('givewp_generate_confirmation_page_receipt_before_donation_total', AddEventTicketsToDonationConfirmationPageDonationTotal::class);
        Hooks::addAction('givewp_generate_confirmation_page_receipt_fill_event_ticket_details', AddEventTicketsToDonationConfirmationPageEventTicketDetails::class);
        Hooks::addFilter('givewp_generate_confirmation_page_receipt_detail_donation_amount', UpdateDonationConfirmationPageReceiptDonationAmount::class, '__invoke', 10, 2);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit