Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/mets.corals.io/wp-content/plugins/give/src/DonorDashboards/Tabs/Contracts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/mets.corals.io/wp-content/plugins/give/src/DonorDashboards/Tabs/Contracts/Tab.php
<?php

namespace Give\DonorDashboards\Tabs\Contracts;

use Give\DonorDashboards\Tabs\Contracts\Route as RouteAbstract;
use Give\Framework\Exceptions\Primitives\RuntimeException;

/**
 * Class Tab
 *
 * Extend this class when creating Donor Profile tabs.
 *
 * @since 2.10.0
 */
abstract class Tab
{
    /**
     * Return array of routes (must extend DonorDashboard Route class)
     *
     * @since 2.10.0
     * @return array
     */
    abstract public function routes();

    /**
     * Return a unique identifier for the tab
     *
     * @since 2.10.0
     * @return string
     */
    public static function id()
    {
        throw new RuntimeException('A unique ID must be provided for the tab');
    }

    /**
     * Enqueue assets required for frontend rendering of tab
     *
     * @since 2.10.0
     */
    public function enqueueAssets()
    {
        return null;
    }

    /**
     * Registers routes with WP REST api
     *
     * @since 2.10.0
     */
    public function registerRoutes()
    {
        $routeClasses = $this->routes();
        foreach ($routeClasses as $routeClass) {
            if ( ! is_subclass_of($routeClass, RouteAbstract::class)) {
                throw new \InvalidArgumentException(
                    $routeClass . ' must extend the ' . RouteAbstract::class . ' class'
                );
            }
            (new $routeClass)->registerRoute();
        }
    }

    public function registerTab()
    {
        give()->donorDashboardTabs->addTab(get_called_class());
    }
}

Spamworldpro Mini