<?php namespace WPForms\Admin; /** * Class Loader gives ability to track/load all admin modules. * * @since 1.5.0 */ class Loader { /** * Get the instance of a class and store it in itself. * * @since 1.5.0 */ public static function get_instance() { static $instance; if ( ! $instance ) { $instance = new self(); } return $instance; } /** * Loader constructor. * * @since 1.5.0 */ public function __construct() { $core_class_names = [ 'Connect', 'FlyoutMenu', 'Builder\LicenseAlert', 'Builder\Builder', 'Pages\Community', 'Pages\SMTP', 'Pages\Analytics', 'Entries\PrintPreview', ]; $class_names = \apply_filters( 'wpforms_admin_classes_available', $core_class_names ); foreach ( $class_names as $class_name ) { $this->register_class( $class_name ); } } /** * Register a new class. * * @since 1.5.0 * * @param string $class_name Class name to register. */ public function register_class( $class_name ) { $class_name = sanitize_text_field( $class_name ); // Load Lite class if exists. if ( class_exists( 'WPForms\Lite\Admin\\' . $class_name ) && ! wpforms()->is_pro() ) { $class_name = 'WPForms\Lite\Admin\\' . $class_name; new $class_name(); return; } // Load Pro class if exists. if ( class_exists( 'WPForms\Pro\Admin\\' . $class_name ) && wpforms()->is_pro() ) { $class_name = 'WPForms\Pro\Admin\\' . $class_name; new $class_name(); return; } // Load general class if neither Pro nor Lite class exists. if ( class_exists( __NAMESPACE__ . '\\' . $class_name ) ) { $class_name = __NAMESPACE__ . '\\' . $class_name; new $class_name(); } } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
Addons | Folder | 0755 |
|
|
Base | Folder | 0755 |
|
|
Builder | Folder | 0755 |
|
|
Dashboard | Folder | 0755 |
|
|
Education | Folder | 0755 |
|
|
Forms | Folder | 0755 |
|
|
Helpers | Folder | 0755 |
|
|
Notifications | Folder | 0755 |
|
|
Pages | Folder | 0755 |
|
|
Payments | Folder | 0755 |
|
|
Settings | Folder | 0755 |
|
|
Splash | Folder | 0755 |
|
|
Tools | Folder | 0755 |
|
|
Traits | Folder | 0755 |
|
|
AdminBarMenu.php | File | 17.75 KB | 0644 |
|
Challenge.php | File | 17.57 KB | 0644 |
|
FlyoutMenu.php | File | 3.51 KB | 0644 |
|
FormEmbedWizard.php | File | 10.98 KB | 0644 |
|
Loader.php | File | 1.65 KB | 0644 |
|
Notice.php | File | 9.85 KB | 0644 |
|
Revisions.php | File | 10.92 KB | 0644 |
|
SiteHealth.php | File | 2.83 KB | 0644 |
|