PluginProbe
JetFormBuilder — Dynamic Blocks Form Builder / 3.6.6
JetFormBuilder — Dynamic Blocks Form Builder v3.6.6
3.6.6.1 3.6.6 3.6.5.4 3.6.5.3 3.6.5.2 3.6.5.1 3.6.5 3.6.4.2 3.6.4.1 3.6.4 3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 All 134 releases
← All changes | includes/autoloader.php +202 -77 1.0.1 → 3.6.6 View file →
@@ -1,77 +1,202 @@
1 -<?php
2 -
3 -namespace Jet_Form_Builder;
4 -
5 -if ( ! defined( 'ABSPATH' ) ) {
6 - exit; // Exit if accessed directly.
7 -}
8 -
9 -/**
10 - * Autoloader handler class is responsible for loading the different
11 - * classes needed to run the plugin.
12 - */
13 -class Autoloader {
14 -
15 - /**
16 - * Run autoloader.
17 - *
18 - * Register a function as `__autoload()` implementation.
19 - *
20 - * @since 1.6.0
21 - * @access public
22 - * @static
23 - */
24 - public static function run() {
25 - spl_autoload_register( array( __CLASS__, 'autoload' ) );
26 - }
27 -
28 - /**
29 - * Load class.
30 - *
31 - * For a given class name, require the class file.
32 - *
33 - * @param string $relative_class_name Class name.
34 - *
35 - * @since 1.6.0
36 - * @access private
37 - * @static
38 - *
39 - */
40 - private static function load_class( $class_name ) {
41 -
42 - $file = str_replace( '\\', DIRECTORY_SEPARATOR, $class_name );
43 - $file = strtolower( str_replace( '_', '-', $file ) );
44 - $filepath = JET_FORM_BUILDER_PATH . 'includes/' . $file . '.php';
45 -
46 - if ( is_readable( $filepath ) ) {
47 - require $filepath;
48 - }
49 - }
50 -
51 - /**
52 - * Autoload.
53 - *
54 - * For a given class, check if it exist and load it.
55 - *
56 - * @param string $class Class name.
57 - *
58 - * @since 1.6.0
59 - * @access private
60 - * @static
61 - *
62 - */
63 - private static function autoload( $class ) {
64 -
65 - if ( 0 !== strpos( $class, __NAMESPACE__ . '\\' ) ) {
66 - return;
67 - }
68 -
69 - $relative_class_name = preg_replace( '/^' . __NAMESPACE__ . '\\\/', '', $class );
70 - $final_class_name = __NAMESPACE__ . '\\' . $relative_class_name;
71 -
72 - if ( ! class_exists( $final_class_name ) ) {
73 - self::load_class( $relative_class_name );
74 - }
75 -
76 - }
77 -}
1 +<?php
2 +
3 +namespace Jet_Form_Builder;
4 +
5 +if ( ! defined( 'WPINC' ) ) {
6 + exit; // Exit if accessed directly.
7 +}
8 +
9 +/**
10 + * Autoloader handler class is responsible for loading the different
11 + * classes needed to run the plugin.
12 + */
13 +class Autoloader {
14 +
15 + const NAMESPACES = array(
16 + __NAMESPACE__ . '\\' => 'includes/',
17 + 'JFB_Modules\\' => 'modules/',
18 + 'JFB_Components\\' => 'components/',
19 + 'JFB_Compatibility\\' => 'compatibility/',
20 + );
21 +
22 + /**
23 + * @since 3.1.0
24 + */
25 + const DEPRECATED_CLASSMAP = array(
26 + 'Jet_Form_Builder\\Classes\\Security\\Csrf_Token_Model' => 'JFB_Modules\\Security\\Csrf\\Csrf_Token_Model',
27 + 'Jet_Form_Builder\\Classes\\Security\\Csrf_Token_View' => 'JFB_Modules\\Security\\Csrf\\Csrf_Token_View',
28 + 'Jet_Form_Builder\\Classes\\Security\\Csrf_Tools' => 'JFB_Modules\\Security\\Csrf\\Csrf_Tools',
29 + 'Jet_Form_Builder\\Integrations\\Forms_Captcha' => 'JFB_Modules\\Captcha\\Module',
30 + 'Jet_Form_Builder\\Rest_Api\\Dynamic_Rest_Url_Trait' => 'JFB_Components\\Rest_Api\\Dynamic_Rest_Url_Trait',
31 + 'Jet_Form_Builder\\Rest_Api\\Rest_Api_Controller_Base' => 'JFB_Components\\Rest_Api\\Rest_Api_Controller_Base',
32 + 'Jet_Form_Builder\\Rest_Api\\Rest_Api_Endpoint_Base' => 'JFB_Components\\Rest_Api\\Rest_Api_Endpoint_Base',
33 + 'Jet_Form_Builder\\Rest_Api\\Rest_Endpoint' => 'JFB_Components\\Rest_Api\\Rest_Endpoint',
34 + 'Jet_Form_Builder\\Rest_Api\\Rest_Response' => 'JFB_Components\\Rest_Api\\Rest_Response',
35 + 'Jet_Form_Builder\\Rest_Api\\Traits\\Paginated_Args' => 'JFB_Components\\Rest_Api\\Traits\\Paginated_Args',
36 + 'Jet_Form_Builder\\Rest_Api\\Traits\\Rest_Fetch_Endpoint' => 'JFB_Components\\Rest_Api\\Traits\\Rest_Fetch_Endpoint',
37 + // blocks
38 + 'Jet_Form_Builder\\Blocks\\Manager' => 'Jet_Form_Builder\\Blocks\\Module',
39 + 'Jet_Form_Builder\\Blocks\\Types\\Text_Field' => 'JFB_Modules\\Blocks_V2\\Text_Field\\Block_Type',
40 + 'Jet_Form_Builder\\Blocks\\Render\\Text_Field_Render' => 'JFB_Modules\\Blocks_V2\\Text_Field\\Block_Render',
41 + 'Jet_Form_Builder\\Blocks\\Types\\Repeater_Field' => 'JFB_Modules\\Blocks_V2\\Repeater_Field\\Block_Type',
42 + 'Jet_Form_Builder\\Blocks\\Types\\Repeater_Row' => 'JFB_Modules\\Blocks_V2\\Repeater_Field\\Block_Type_Row',
43 + // gateways
44 + 'Jet_Form_Builder\\Gateways\\Base_Gateway' => 'JFB_Modules\\Gateways\\Base_Gateway',
45 + 'Jet_Form_Builder\\Gateways\\Base_Scenario_Gateway' => 'JFB_Modules\\Gateways\\Base_Scenario_Gateway',
46 + 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Base' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Base',
47 + 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Repository' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Repository',
48 + 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_View_Base' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_View_Base',
49 + 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenarios_Manager_Abstract' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenarios_Manager_Abstract',
50 + 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenarios_View_Repository' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenarios_View_Repository',
51 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payer_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payer_Model',
52 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payer_Shipping_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payer_Shipping_Model',
53 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_Meta_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_Meta_Model',
54 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_Model',
55 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_To_Payer_Shipping_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_To_Payer_Shipping_Model',
56 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_To_Record' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_To_Record',
57 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Constraints\\Payer_Shipping_Model_Constraint' => 'JFB_Modules\\Gateways\\Db_Models\\Constraints\\Payer_Shipping_Model_Constraint',
58 + 'Jet_Form_Builder\\Gateways\\Db_Models\\Constraints\\Payment_Model_Constraint' => 'JFB_Modules\\Gateways\\Db_Models\\Constraints\\Payment_Model_Constraint',
59 + 'Jet_Form_Builder\\Gateways\\Pages\\Single_Payment_Page' => 'JFB_Modules\\Gateways\\Pages\\Single_Payment_Page',
60 + 'Jet_Form_Builder\\Gateways\\Rest_Api\\Gateway_Endpoint' => 'JFB_Modules\\Gateways\\Rest_Api\\Gateway_Endpoint',
61 + 'Jet_Form_Builder\\Gateways\\Rest_Api\\Receive_Payments' => 'JFB_Modules\\Gateways\\Rest_Api\\Receive_Payments',
62 + 'Jet_Form_Builder\\Gateways\\Rest_Api\\Receive_Payment' => 'JFB_Modules\\Gateways\\Rest_Api\\Receive_Payment',
63 + 'Jet_Form_Builder\\Gateways\\Paypal\\Scenarios_Logic\\With_Resource_It' => 'JFB_Modules\\Gateways\\Paypal\\Scenarios_Logic\\With_Resource_It',
64 + 'Jet_Form_Builder\\Gateways\\Paypal\\Scenarios_Views\\Pay_Now' => 'JFB_Modules\\Gateways\\Paypal\\Scenarios_Views\\Pay_Now',
65 + 'Jet_Form_Builder\\Gateways\\Paypal\\Rest_Endpoints\\Fetch_Pay_Now_Editor' => 'JFB_Modules\\Gateways\\Paypal\\Rest_Endpoints\\Fetch_Pay_Now_Editor',
66 + 'Jet_Form_Builder\\Gateways\\Paypal\\Api_Actions\\Base_Action' => 'JFB_Modules\\Gateways\\Paypal\\Api_Actions\\Base_Action',
67 + 'Jet_Form_Builder\\Gateways\\Paypal\\Api_Actions\\Traits\\App_Context_Trait' => 'JFB_Modules\\Gateways\\Paypal\\Api_Actions\\Traits\\App_Context_Trait',
68 + 'Jet_Form_Builder\\Gateways\\Paypal\\Controller' => 'JFB_Modules\\Gateways\\Paypal\\Controller',
69 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Row_Actions_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Row_Actions_Column',
70 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Gross_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Gross_Column',
71 + 'Jet_Form_Builder\\Gateways\\Pages\\Payments_Page' => 'JFB_Modules\\Gateways\\Pages\\Payments_Page',
72 + 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Payer_Box' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Payer_Box',
73 + 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Payer_Shipping_Box' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Payer_Shipping_Box',
74 + 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Payment_Amount_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Payment_Amount_Column',
75 + 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Payment_Currency_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Payment_Currency_Column',
76 + 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Gateway_Type_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Gateway_Type_Column',
77 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payment_Type_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payment_Type_Column',
78 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payment_Status_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payment_Status_Column',
79 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payer_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payer_Column',
80 + 'Jet_Form_Builder\\Gateways\\Table_Views\\Payments' => 'JFB_Modules\\Gateways\\Table_Views\\Payments',
81 + 'Jet_Form_Builder\\Gateways\\Query_Views\\Payment_View' => 'JFB_Modules\\Gateways\\Query_Views\\Payment_View',
82 + 'Jet_Form_Builder\\Gateways\\Query_Views\\Payment_With_Record_View' => 'JFB_Modules\\Gateways\\Query_Views\\Payment_With_Record_View',
83 + // jet-engine compatibility
84 + 'Jet_Form_Builder\\Blocks\\Types\\Map_Field' => 'JFB_Compatibility\\Jet_Engine\\Blocks\\Map_Field\\Block_Type',
85 + 'JFB_Compatibility\\Jet_Engine\\Blocks\\Map_Field' => 'JFB_Compatibility\\Jet_Engine\\Blocks\\Map_Field\\Block_Type',
86 + // repository component
87 + 'Jet_Form_Builder\\Classes\\Repository\\Repository_Pattern_Trait' => 'JFB_Components\\Repository\\Repository_Pattern_Trait',
88 + 'Jet_Form_Builder\\Classes\\Repository\\Repository_Static_Item_It' => 'JFB_Components\\Repository\\Repository_Static_Item_It',
89 + // form-record
90 + 'Jet_Form_Builder\\Actions\\Types\\Save_Record' => 'JFB_Modules\\Form_Record\\Action_Types\\Save_Record',
91 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Controller' => 'JFB_Modules\\Form_Record\\Controller',
92 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Admin\\Meta_Boxes\\Form_Record_Values_Box' => 'JFB_Modules\\Form_Record\\Admin\\Meta_Boxes\\Form_Record_Values_Box',
93 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Admin\\View_Columns\\Error_Message_Column' => 'JFB_Modules\\Form_Record\\Admin\\View_Columns\\Error_Message_Column',
94 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Models\\Record_Model' => 'JFB_Modules\\Form_Record\\Models\\Record_Model',
95 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Admin\\Pages\\Single_Form_Record_Page' => 'JFB_Modules\\Form_Record\\Admin\\Pages\\Single_Form_Record_Page',
96 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Constraints\\Record_Model_Constraint' => 'JFB_Modules\\Form_Record\\Constraints\\Record_Model_Constraint',
97 + 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Query_Views\\Record_Fields_View' => 'JFB_Modules\\Form_Record\\Query_Views\\Record_Fields_View',
98 + // dev-mode module
99 + 'Jet_Form_Builder\\Dev_Mode\\Manager' => 'JFB_Modules\\Dev\\Module',
100 + 'Jet_Form_Builder\\Dev_Mode\\Logger' => 'JFB_Modules\\Logger\\Module',
101 + // request related
102 + 'Jet_Form_Builder\\Request\\Parser_Manager' => 'JFB_Modules\\Block_Parsers\\Module',
103 + 'Jet_Form_Builder\\Request\\Field_Data_Parser' => 'JFB_Modules\\Block_Parsers\\Field_Data_Parser',
104 + 'Jet_Form_Builder\\Blocks\\Validation' => 'JFB_Modules\\Validation\\Module',
105 + // block renderers
106 + 'Jet_Form_Builder\\Blocks\\Render\\Radio_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Radio\\Block_Render',
107 + 'Jet_Form_Builder\\Blocks\\Render\\Select_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Select\\Block_Render',
108 + 'Jet_Form_Builder\\Blocks\\Render\\Checkbox_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Checkbox\\Block_Render',
109 + );
110 +
111 + /**
112 + * Run autoloader.
113 + *
114 + * Register a function as `__autoload()` implementation.
115 + *
116 + * @since 1.6.0
117 + * @access public
118 + * @static
119 + */
120 + public static function run() {
121 + spl_autoload_register( array( __CLASS__, 'autoload' ) );
122 + }
123 +
124 + /**
125 + * Load class.
126 + *
127 + * For a given class name, require the class file.
128 + *
129 + * @param string $space
130 + * @param array $class_parts
131 + *
132 + * @since 1.6.0
133 + * @access private
134 + * @static
135 + */
136 + private static function load_class( string $space, array $class_parts ) {
137 +
138 + $file = implode( DIRECTORY_SEPARATOR, $class_parts );
139 + $file = strtolower( str_replace( '_', '-', $file ) );
140 + $filepath = JET_FORM_BUILDER_PATH . self::NAMESPACES[ $space ] . $file . '.php';
141 +
142 + if ( is_readable( $filepath ) ) {
143 + require_once $filepath;
144 + }
145 + }
146 +
147 + /**
148 + * Autoload.
149 + *
150 + * For a given class, check if it exist and load it.
151 + *
152 + * @param $class_name
153 + *
154 + * @since 1.6.0
155 + * @access private
156 + * @static
157 + */
158 + private static function autoload( $class_name ) {
159 +
160 + $parts = explode( '\\', $class_name );
161 +
162 + if ( ! array_key_exists( $parts[0] . '\\', self::NAMESPACES ) ) {
163 + return;
164 + }
165 +
166 + list( $prefix, $parts, $relative ) = self::get_class_parts( $parts );
167 +
168 + $has_alias = isset( self::DEPRECATED_CLASSMAP[ $prefix . $relative ] );
169 +
170 + if ( $has_alias ) {
171 + list( $prefix, $parts, $relative ) = self::get_class_parts(
172 + self::DEPRECATED_CLASSMAP[ $prefix . $relative ]
173 + );
174 + }
175 +
176 + if ( ! class_exists( $prefix . $relative ) ) {
177 + self::load_class( $prefix, $parts );
178 + }
179 +
180 + if ( $has_alias ) {
181 + class_alias( $prefix . $relative, $class_name );
182 + }
183 + }
184 +
185 + /**
186 + * @param array|string $class_name
187 + *
188 + * @return array
189 + */
190 + private static function get_class_parts( $class_name ): array {
191 + $parts = is_array( $class_name ) ? $class_name : explode( '\\', $class_name );
192 +
193 + // global namespace
194 + $prefix = $parts[0] . '\\';
195 + // remove first element
196 + array_shift( $parts );
197 +
198 + $relative = implode( '\\', $parts );
199 +
200 + return array( $prefix, $parts, $relative );
201 + }
202 +}