PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.3.4
JetFormBuilder — Dynamic Blocks Form Builder v3.3.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 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / includes / autoloader.php
jetformbuilder / includes Last commit date
actions 2 years ago addons 2 years ago admin 2 years ago blocks 2 years ago classes 2 years ago db-queries 2 years ago exceptions 2 years ago form-messages 2 years ago form-patterns 2 years ago form-response 2 years ago generators 2 years ago integrations 2 years ago migrations 2 years ago presets 2 years ago request 2 years ago autoloader.php 2 years ago file-upload.php 2 years ago form-break.php 2 years ago form-handler.php 2 years ago form-manager.php 2 years ago functions.php 2 years ago live-form.php 2 years ago plugin.php 2 years ago
autoloader.php
200 lines
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 // gateways
42 'Jet_Form_Builder\\Gateways\\Base_Gateway' => 'JFB_Modules\\Gateways\\Base_Gateway',
43 'Jet_Form_Builder\\Gateways\\Base_Scenario_Gateway' => 'JFB_Modules\\Gateways\\Base_Scenario_Gateway',
44 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Base' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Base',
45 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Repository' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_Logic_Repository',
46 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenario_View_Base' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenario_View_Base',
47 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenarios_Manager_Abstract' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenarios_Manager_Abstract',
48 'Jet_Form_Builder\\Gateways\\Scenarios_Abstract\\Scenarios_View_Repository' => 'JFB_Modules\\Gateways\\Scenarios_Abstract\\Scenarios_View_Repository',
49 'Jet_Form_Builder\\Gateways\\Db_Models\\Payer_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payer_Model',
50 'Jet_Form_Builder\\Gateways\\Db_Models\\Payer_Shipping_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payer_Shipping_Model',
51 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_Meta_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_Meta_Model',
52 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_Model',
53 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_To_Payer_Shipping_Model' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_To_Payer_Shipping_Model',
54 'Jet_Form_Builder\\Gateways\\Db_Models\\Payment_To_Record' => 'JFB_Modules\\Gateways\\Db_Models\\Payment_To_Record',
55 'Jet_Form_Builder\\Gateways\\Db_Models\\Constraints\\Payer_Shipping_Model_Constraint' => 'JFB_Modules\\Gateways\\Db_Models\\Constraints\\Payer_Shipping_Model_Constraint',
56 'Jet_Form_Builder\\Gateways\\Db_Models\\Constraints\\Payment_Model_Constraint' => 'JFB_Modules\\Gateways\\Db_Models\\Constraints\\Payment_Model_Constraint',
57 'Jet_Form_Builder\\Gateways\\Pages\\Single_Payment_Page' => 'JFB_Modules\\Gateways\\Pages\\Single_Payment_Page',
58 'Jet_Form_Builder\\Gateways\\Rest_Api\\Gateway_Endpoint' => 'JFB_Modules\\Gateways\\Rest_Api\\Gateway_Endpoint',
59 'Jet_Form_Builder\\Gateways\\Rest_Api\\Receive_Payments' => 'JFB_Modules\\Gateways\\Rest_Api\\Receive_Payments',
60 'Jet_Form_Builder\\Gateways\\Rest_Api\\Receive_Payment' => 'JFB_Modules\\Gateways\\Rest_Api\\Receive_Payment',
61 'Jet_Form_Builder\\Gateways\\Paypal\\Scenarios_Logic\\With_Resource_It' => 'JFB_Modules\\Gateways\\Paypal\\Scenarios_Logic\\With_Resource_It',
62 'Jet_Form_Builder\\Gateways\\Paypal\\Scenarios_Views\\Pay_Now' => 'JFB_Modules\\Gateways\\Paypal\\Scenarios_Views\\Pay_Now',
63 'Jet_Form_Builder\\Gateways\\Paypal\\Rest_Endpoints\\Fetch_Pay_Now_Editor' => 'JFB_Modules\\Gateways\\Paypal\\Rest_Endpoints\\Fetch_Pay_Now_Editor',
64 'Jet_Form_Builder\\Gateways\\Paypal\\Api_Actions\\Base_Action' => 'JFB_Modules\\Gateways\\Paypal\\Api_Actions\\Base_Action',
65 'Jet_Form_Builder\\Gateways\\Paypal\\Api_Actions\\Traits\\App_Context_Trait' => 'JFB_Modules\\Gateways\\Paypal\\Api_Actions\\Traits\\App_Context_Trait',
66 'Jet_Form_Builder\\Gateways\\Paypal\\Controller' => 'JFB_Modules\\Gateways\\Paypal\\Controller',
67 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Row_Actions_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Row_Actions_Column',
68 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Gross_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Gross_Column',
69 'Jet_Form_Builder\\Gateways\\Pages\\Payments_Page' => 'JFB_Modules\\Gateways\\Pages\\Payments_Page',
70 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Payer_Box' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Payer_Box',
71 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Payer_Shipping_Box' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Payer_Shipping_Box',
72 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Payment_Amount_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Payment_Amount_Column',
73 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Payment_Currency_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Payment_Currency_Column',
74 'Jet_Form_Builder\\Gateways\\Meta_Boxes\\Columns\\Gateway_Type_Column' => 'JFB_Modules\\Gateways\\Meta_Boxes\\Columns\\Gateway_Type_Column',
75 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payment_Type_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payment_Type_Column',
76 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payment_Status_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payment_Status_Column',
77 'Jet_Form_Builder\\Gateways\\Table_Views\\Columns\\Payer_Column' => 'JFB_Modules\\Gateways\\Table_Views\\Columns\\Payer_Column',
78 'Jet_Form_Builder\\Gateways\\Table_Views\\Payments' => 'JFB_Modules\\Gateways\\Table_Views\\Payments',
79 'Jet_Form_Builder\\Gateways\\Query_Views\\Payment_View' => 'JFB_Modules\\Gateways\\Query_Views\\Payment_View',
80 'Jet_Form_Builder\\Gateways\\Query_Views\\Payment_With_Record_View' => 'JFB_Modules\\Gateways\\Query_Views\\Payment_With_Record_View',
81 // jet-engine compatibility
82 'Jet_Form_Builder\\Blocks\\Types\\Map_Field' => 'JFB_Compatibility\\Jet_Engine\\Blocks\\Map_Field',
83 // repository component
84 'Jet_Form_Builder\\Classes\\Repository\\Repository_Pattern_Trait' => 'JFB_Components\\Repository\\Repository_Pattern_Trait',
85 'Jet_Form_Builder\\Classes\\Repository\\Repository_Static_Item_It' => 'JFB_Components\\Repository\\Repository_Static_Item_It',
86 // form-record
87 'Jet_Form_Builder\\Actions\\Types\\Save_Record' => 'JFB_Modules\\Form_Record\\Action_Types\\Save_Record',
88 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Controller' => 'JFB_Modules\\Form_Record\\Controller',
89 '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',
90 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Admin\\View_Columns\\Error_Message_Column' => 'JFB_Modules\\Form_Record\\Admin\\View_Columns\\Error_Message_Column',
91 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Models\\Record_Model' => 'JFB_Modules\\Form_Record\\Models\\Record_Model',
92 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Admin\\Pages\\Single_Form_Record_Page' => 'JFB_Modules\\Form_Record\\Admin\\Pages\\Single_Form_Record_Page',
93 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Constraints\\Record_Model_Constraint' => 'JFB_Modules\\Form_Record\\Constraints\\Record_Model_Constraint',
94 'Jet_Form_Builder\\Actions\\Methods\\Form_Record\\Query_Views\\Record_Fields_View' => 'JFB_Modules\\Form_Record\\Query_Views\\Record_Fields_View',
95 // dev-mode module
96 'Jet_Form_Builder\\Dev_Mode\\Manager' => 'JFB_Modules\\Dev\\Module',
97 'Jet_Form_Builder\\Dev_Mode\\Logger' => 'JFB_Modules\\Logger\\Module',
98 // request related
99 'Jet_Form_Builder\\Request\\Parser_Manager' => 'JFB_Modules\\Block_Parsers\\Module',
100 'Jet_Form_Builder\\Request\\Field_Data_Parser' => 'JFB_Modules\\Block_Parsers\\Field_Data_Parser',
101 'Jet_Form_Builder\\Blocks\\Validation' => 'JFB_Modules\\Validation\\Module',
102 // block renderers
103 'Jet_Form_Builder\\Blocks\\Render\\Radio_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Radio\\Block_Render',
104 'Jet_Form_Builder\\Blocks\\Render\\Select_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Select\\Block_Render',
105 'Jet_Form_Builder\\Blocks\\Render\\Checkbox_Field_Render' => 'JFB_Modules\\Option_Field\\Blocks\\Checkbox\\Block_Render',
106 );
107
108 /**
109 * Run autoloader.
110 *
111 * Register a function as `__autoload()` implementation.
112 *
113 * @since 1.6.0
114 * @access public
115 * @static
116 */
117 public static function run() {
118 spl_autoload_register( array( __CLASS__, 'autoload' ) );
119 }
120
121 /**
122 * Load class.
123 *
124 * For a given class name, require the class file.
125 *
126 * @param string $space
127 * @param array $class_parts
128 *
129 * @since 1.6.0
130 * @access private
131 * @static
132 */
133 private static function load_class( string $space, array $class_parts ) {
134
135 $file = implode( DIRECTORY_SEPARATOR, $class_parts );
136 $file = strtolower( str_replace( '_', '-', $file ) );
137 $filepath = JET_FORM_BUILDER_PATH . self::NAMESPACES[ $space ] . $file . '.php';
138
139 if ( is_readable( $filepath ) ) {
140 require_once $filepath;
141 }
142 }
143
144 /**
145 * Autoload.
146 *
147 * For a given class, check if it exist and load it.
148 *
149 * @param $class_name
150 *
151 * @since 1.6.0
152 * @access private
153 * @static
154 */
155 private static function autoload( $class_name ) {
156
157 $parts = explode( '\\', $class_name );
158
159 if ( ! array_key_exists( $parts[0] . '\\', self::NAMESPACES ) ) {
160 return;
161 }
162
163 list( $prefix, $parts, $relative ) = self::get_class_parts( $parts );
164
165 $has_alias = isset( self::DEPRECATED_CLASSMAP[ $prefix . $relative ] );
166
167 if ( $has_alias ) {
168 list( $prefix, $parts, $relative ) = self::get_class_parts(
169 self::DEPRECATED_CLASSMAP[ $prefix . $relative ]
170 );
171 }
172
173 if ( ! class_exists( $prefix . $relative ) ) {
174 self::load_class( $prefix, $parts );
175 }
176
177 if ( $has_alias ) {
178 class_alias( $prefix . $relative, $class_name );
179 }
180 }
181
182 /**
183 * @param array|string $class_name
184 *
185 * @return array
186 */
187 private static function get_class_parts( $class_name ): array {
188 $parts = is_array( $class_name ) ? $class_name : explode( '\\', $class_name );
189
190 // global namespace
191 $prefix = $parts[0] . '\\';
192 // remove first element
193 array_shift( $parts );
194
195 $relative = implode( '\\', $parts );
196
197 return array( $prefix, $parts, $relative );
198 }
199 }
200