PluginProbe ʕ •ᴥ•ʔ
Everest Forms – Contact Form, Payment Form, Quiz, Survey & Custom Form Builder with AI / 3.5.2
Everest Forms – Contact Form, Payment Form, Quiz, Survey & Custom Form Builder with AI v3.5.2
3.5.2 3.5.1 3.5.0 3.4.8 3.4.7 3.4.6 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5.1 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.10 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.6.1 1.6.7 1.7.0 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.2 1.7.2.1 1.7.2.2 1.7.3 1.7.4 1.7.5 1.7.5.1 1.7.5.2 1.7.6 1.7.7 1.7.7.1 1.7.7.2 1.7.8 1.7.9 1.8.0 1.8.0.1 1.8.1 1.8.2 1.8.2.1 1.8.2.2 1.8.2.3 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.0.1 1.9.1 1.9.2 1.9.3 1.9.4 1.9.4.1 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.0.1 2.0.1 2.0.2 2.0.3 2.0.3.1 2.0.4 2.0.4.1 2.0.5 2.0.6 2.0.7 2.0.8 2.0.8.1 2.0.9 3.0.0 3.0.0.1 3.0.1 3.0.2 3.0.3 3.0.3.1 3.0.4 3.0.4.1 3.0.4.2 3.0.5 3.0.5.1 3.0.5.2 3.0.6 3.0.6.1 3.0.7.1 3.0.8 3.0.8.1 3.0.9 3.0.9.1 3.0.9.2 3.0.9.3 3.0.9.4 3.0.9.5 3.1.0 3.1.1 3.1.2 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.3.0 3.4.0 3.4.1 3.4.2 3.4.2.1 3.4.3 3.4.4 3.4.5 trunk 1.0 1.0.1 1.0.2 1.0.3
everest-forms / includes / class-evf-autoloader.php
everest-forms / includes Last commit date
Helpers 11 months ago Integrations 2 weeks ago RestApi 5 days ago abilities 3 weeks ago abstracts 5 days ago admin 5 days ago blocks 1 year ago elementor 2 years ago export 2 months ago fields 3 weeks ago interfaces 8 years ago libraries 2 years ago log-handlers 1 year ago shortcodes 3 weeks ago stats 5 months ago templates 3 months ago traits 3 weeks ago class-everest-forms.php 5 days ago class-evf-addon-upsell.php 3 weeks ago class-evf-ajax.php 3 weeks ago class-evf-autoloader.php 7 years ago class-evf-background-process-import-entries.php 2 years ago class-evf-background-updater.php 7 years ago class-evf-cache-helper.php 2 months ago class-evf-cron.php 2 years ago class-evf-deprecated-action-hooks.php 6 years ago class-evf-deprecated-filter-hooks.php 5 years ago class-evf-email-entries-report.php 3 months ago class-evf-emails.php 3 weeks ago class-evf-fields.php 3 weeks ago class-evf-form-handler.php 3 weeks ago class-evf-form-task.php 3 weeks ago class-evf-forms-features.php 3 weeks ago class-evf-frontend-scripts.php 3 weeks ago class-evf-install.php 2 months ago class-evf-integrations.php 3 months ago class-evf-log-levels.php 8 years ago class-evf-logger.php 5 years ago class-evf-post-types.php 1 year ago class-evf-privacy.php 6 years ago class-evf-report-cron.php 2 months ago class-evf-reporting.php 2 months ago class-evf-session-handler.php 7 years ago class-evf-shortcodes.php 1 year ago class-evf-smart-tags.php 9 months ago class-evf-template-loader.php 1 year ago class-evf-validation.php 6 years ago evf-conditional-functions.php 6 years ago evf-core-functions.php 3 weeks ago evf-deprecated-functions.php 6 years ago evf-entry-functions.php 4 months ago evf-formatting-functions.php 4 years ago evf-notice-functions.php 4 years ago evf-template-functions.php 4 years ago evf-template-hooks.php 7 years ago evf-update-functions.php 5 years ago
class-evf-autoloader.php
92 lines
1 <?php
2 /**
3 * EverestForms Autoloader.
4 *
5 * @package EverestForms\Classes
6 * @since 1.0.0
7 */
8
9 defined( 'ABSPATH' ) || exit;
10
11 /**
12 * Autoloader Class.
13 */
14 class EVF_Autoloader {
15
16 /**
17 * Path to the includes directory.
18 *
19 * @var string
20 */
21 private $include_path = '';
22
23 /**
24 * Class Constructor Method.
25 */
26 public function __construct() {
27 if ( function_exists( '__autoload' ) ) {
28 spl_autoload_register( '__autoload' );
29 }
30
31 spl_autoload_register( array( $this, 'autoload' ) );
32
33 $this->include_path = untrailingslashit( plugin_dir_path( EVF_PLUGIN_FILE ) ) . '/includes/';
34 }
35
36 /**
37 * Take a class name and turn it into a file name.
38 *
39 * @param string $class Class name.
40 * @return string
41 */
42 private function get_file_name_from_class( $class ) {
43 return 'class-' . str_replace( '_', '-', $class ) . '.php';
44 }
45
46 /**
47 * Include a class file.
48 *
49 * @param string $path File path.
50 * @return bool Successful or not.
51 */
52 private function load_file( $path ) {
53 if ( $path && is_readable( $path ) ) {
54 include_once $path;
55 return true;
56 }
57 return false;
58 }
59
60 /**
61 * Auto-load EVF classes on demand to reduce memory consumption.
62 *
63 * @param string $class Class name.
64 */
65 public function autoload( $class ) {
66 $class = strtolower( $class );
67
68 if ( 0 !== strpos( $class, 'evf_' ) ) {
69 return;
70 }
71
72 $file = $this->get_file_name_from_class( $class );
73 $path = '';
74
75 if ( 0 === strpos( $class, 'evf_field_' ) ) {
76 $path = $this->include_path . 'fields/';
77 } elseif ( 0 === strpos( $class, 'evf_shortcode_' ) ) {
78 $path = $this->include_path . 'shortcodes/';
79 } elseif ( 0 === strpos( $class, 'evf_admin' ) ) {
80 $path = $this->include_path . 'admin/';
81 } elseif ( 0 === strpos( $class, 'evf_log_handler_' ) ) {
82 $path = $this->include_path . 'log-handlers/';
83 }
84
85 if ( empty( $path ) || ! $this->load_file( $path . $file ) ) {
86 $this->load_file( $this->include_path . $file );
87 }
88 }
89 }
90
91 new EVF_Autoloader();
92