PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.0.17
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.0.17
1.2.73 1.2.72 1.2.71 1.2.70 1.2.69 1.2.68 1.2.67 1.2.66 1.2.65 1.2.64 1.2.63 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.20 1.0.21 1.0.22 All 173 releases
userswp / includes / class-userswp.php

class-userswp.php in UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP 1.0.17, at includes/class-userswp.php

611 lines 28.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The file that defines the core plugin class
4 *
5 * A class definition that includes attributes and functions used across both the
6 * public-facing side of the site and the admin area.
7 *
8 * @since 1.0.0
9 * @author GeoDirectory Team <info@wpgeodirectory.com>
10 */
11 class UsersWP {
12
13 /**
14 * The loader that's responsible for maintaining and registering all hooks that power
15 * the plugin.
16 *
17 * @since 1.0.0
18 * @access protected
19 * @var UsersWP_Loader $loader Maintains and registers all hooks for the plugin.
20 */
21 protected $loader;
22
23
24 /**
25 * The current version of the plugin.
26 *
27 * @since 1.0.0
28 * @access protected
29 * @var string $version The current version of the plugin.
30 */
31 protected $version;
32
33 protected $profile;
34 protected $forms;
35 protected $i18n;
36 protected $notices;
37 protected $templates;
38 protected $meta;
39 protected $pages;
40 protected $files;
41 protected $shortcodes;
42 protected $assets;
43 protected $admin;
44 protected $admin_settings;
45 protected $menus;
46 protected $form_builder;
47 protected $ajax;
48 protected $tools;
49 protected $tables;
50
51 /**
52 * Define the core functionality of the plugin.
53 *
54 * Set the plugin name and the plugin version that can be used throughout the plugin.
55 * Load the dependencies, define the locale, and set the hooks for the admin area and
56 * the public-facing side of the site.
57 *
58 * @since 1.0.0
59 */
60 public function __construct() {
61
62 $this->plugin_name = USERSWP_NAME;
63 $this->version = USERSWP_VERSION;
64
65
66 $this->load_dependencies();
67 $this->loader = new UsersWP_Loader();
68 $this->meta = new UsersWP_Meta();
69 $this->pages = new UsersWP_Pages();
70 $this->profile = new UsersWP_Profile();
71 $this->forms = new UsersWP_Forms();
72 $this->templates = new UsersWP_Templates();
73 $this->i18n = new UsersWP_i18n();
74 $this->notices = new UsersWP_Notices();
75 $this->assets = new UsersWP_Public();
76 $this->form_builder = new UsersWP_Form_Builder();
77 $this->menus = new UsersWP_Menus();
78 $this->tools = new UsersWP_Tools();
79 $this->tables = new UsersWP_Tables();
80
81 $this->shortcodes = new UsersWP_Shortcodes($this->templates);
82 $this->admin_settings = new UsersWP_Admin_Settings($this->form_builder);
83 $this->admin = new UsersWP_Admin($this->admin_settings);
84 $this->ajax = new UsersWP_Ajax($this->form_builder);
85 $this->files = new UsersWP_Files();
86
87
88 // actions and filters
89 $this->load_assets_actions_and_filters($this->assets);
90 $this->load_meta_actions_and_filters($this->meta);
91 $this->load_ajax_actions_and_filters($this->ajax);
92 $this->load_files_actions_and_filters($this->files);
93 $this->load_forms_actions_and_filters($this->forms);
94 $this->load_i18n_actions_and_filters($this->i18n);
95 $this->load_notices_actions_and_filters($this->notices);
96 $this->load_pages_actions_and_filters($this->pages);
97 $this->load_profile_actions_and_filters($this->profile);
98 $this->load_shortcodes_actions_and_filters($this->shortcodes);
99 $this->load_tables_actions_and_filters($this->tables);
100 $this->load_templates_actions_and_filters($this->templates);
101 $this->load_tools_actions_and_filters($this->tools);
102
103 //admin
104 $this->load_form_builder_actions_and_filters($this->form_builder);
105 $this->load_menus_actions_and_filters($this->menus);
106 $this->load_admin_actions_and_filters($this->admin);
107 $this->load_admin_settings_actions_and_filters($this->admin_settings);
108
109 }
110
111
112
113
114 public function load_assets_actions_and_filters($instance) {
115 add_action( 'wp_enqueue_scripts', array($instance, 'enqueue_styles') );
116 add_action( 'wp_enqueue_scripts', array($instance, 'enqueue_scripts') );
117 }
118
119 public function load_meta_actions_and_filters($instance) {
120 add_action('user_register', array($instance, 'sync_usermeta'), 10, 1);
121 add_action('delete_user', array($instance, 'delete_usermeta_for_user'), 10, 1);
122 add_action('remove_user_from_blog', array($instance, 'remove_user_from_blog'), 10, 2);
123 add_action('wp_login', array($instance, 'save_user_ip_on_login') ,10,2);
124 add_filter('uwp_before_extra_fields_save', array($instance, 'save_user_ip_on_register'), 10, 3);
125 add_filter('uwp_update_usermeta', array($instance, 'modify_privacy_value_on_update'), 10, 4);
126 add_filter('uwp_get_usermeta', array($instance, 'modify_privacy_value_on_get'), 10, 5);
127 add_filter('uwp_update_usermeta', array($instance, 'modify_datepicker_value_on_update'), 10, 3);
128 add_filter('uwp_get_usermeta', array($instance, 'modify_datepicker_value_on_get'), 10, 5);
129 add_filter('user_row_actions', array($instance, 'uwp_user_row_actions'), 10, 2);
130 add_action('bulk_actions-users', array($instance, 'uwp_users_bulk_actions'));
131 add_action('handle_bulk_actions-users', array($instance, 'uwp_handle_users_bulk_actions'), 10, 3);
132 add_filter('init', array($instance, 'uwp_process_user_actions'));
133 add_action('admin_notices', array($instance, 'uwp_show_update_messages'));
134 }
135
136 public function load_ajax_actions_and_filters($instance) {
137 add_action('wp_ajax_uwp_ajax_action', array($instance, 'handler'));
138 }
139
140 public function load_files_actions_and_filters($instance) {
141 if($instance->uwp_doing_upload()){
142 add_filter( 'wp_handle_upload_prefilter', array($instance, 'uwp_wp_media_restrict_file_types') );
143 }
144 add_filter('uwp_get_max_upload_size', array($instance, 'uwp_modify_get_max_upload_size'), 10, 2);
145 }
146
147 public function load_forms_actions_and_filters($instance) {
148 // general
149 add_action('init', array($instance, 'init_notices'), 1);
150 add_action('init', array($instance, 'handler'));
151 add_action('init', array($instance, 'uwp_privacy_submit_handler'));
152 add_action('uwp_template_display_notices', array($instance, 'display_notices'), 10, 1);
153 add_action('wp_ajax_uwp_upload_file_remove', array($instance, 'uwp_upload_file_remove'));
154 //User search form
155 add_action('uwp_users_page_search_form_inner', array($instance, 'uwp_users_search_form_text_field'), 10, 1);
156 add_action('uwp_users_page_search_form_inner', array($instance, 'uwp_users_search_form_submit'), 50, 1);
157 add_action('personal_options_update', array($instance, 'update_profile_extra_admin_edit'), 10, 1);
158 add_action('edit_user_profile_update', array($instance, 'update_profile_extra_admin_edit'), 10, 1);
159 add_action('user_edit_form_tag', array($instance, 'add_multipart_to_admin_edit_form'));
160 add_action('uwp_template_form_title_after', array($instance, 'uwp_display_username_in_account'), 10, 1);
161
162
163 // Forms
164 add_filter('uwp_form_input_html_datepicker', array($instance, 'uwp_form_input_datepicker'), 10, 4);
165 add_filter('uwp_form_input_html_time', array($instance, 'uwp_form_input_time'), 10, 4);
166 add_filter('uwp_form_input_html_select', array($instance, 'uwp_form_input_select'), 10, 4);
167 add_filter('uwp_form_input_html_multiselect', array($instance, 'uwp_form_input_multiselect'), 10, 4);
168 add_filter('uwp_form_input_html_text', array($instance, 'uwp_form_input_text'), 10, 4);
169 add_filter('uwp_form_input_html_textarea', array($instance, 'uwp_form_input_textarea'), 10, 4);
170 add_filter('uwp_form_input_html_fieldset', array($instance, 'uwp_form_input_fieldset'), 10, 4);
171 add_filter('uwp_form_input_html_file', array($instance, 'uwp_form_input_file'), 10, 4);
172 add_filter('uwp_form_input_html_checkbox', array($instance, 'uwp_form_input_checkbox'), 10, 4);
173 add_filter('uwp_form_input_html_radio', array($instance, 'uwp_form_input_radio'), 10, 4);
174 add_filter('uwp_form_input_html_url', array($instance, 'uwp_form_input_url'), 10, 4);
175 add_filter('uwp_form_input_html_email', array($instance, 'uwp_form_input_email'), 10, 4);
176 add_filter('uwp_form_input_html_password', array($instance, 'uwp_form_input_password'), 10, 4);
177 // Country select
178 add_filter('uwp_form_input_html_select_country', array($instance, 'uwp_form_input_select_country'), 10, 4);
179 add_filter('uwp_forms_check_for_send_mail_errors', array($instance, 'uwp_forms_check_for_send_mail_errors'), 10, 3);
180 add_filter('uwp_form_input_email_uwp_account_email_after', array($instance, 'uwp_register_confirm_email_field'), 10, 4);
181 add_filter('uwp_form_input_password_uwp_account_password_after', array($instance, 'uwp_register_confirm_password_field'), 10, 4);
182
183 // Emails
184 add_filter('uwp_send_mail_subject', array($instance, 'init_mail_subject'), 10, 2);
185 add_filter('uwp_send_mail_message', array($instance, 'init_mail_content'), 10, 2);
186 add_filter('uwp_send_mail_extras', array($instance, 'init_mail_extras'), 10, 3);
187
188 add_filter('uwp_send_admin_mail_subject', array($instance, 'init_admin_mail_subject'), 10, 2);
189 add_filter('uwp_send_admin_mail_message', array($instance, 'init_admin_mail_content'), 10, 2);
190 add_filter('uwp_send_admin_mail_extras', array($instance, 'init_admin_mail_extras'), 10, 3);
191
192 }
193
194 public function load_i18n_actions_and_filters($instance) {
195 add_action( 'init', array($instance, 'load_plugin_textdomain'));
196 }
197
198 public function load_notices_actions_and_filters($instance) {
199 add_action('uwp_template_display_notices', array($instance, 'display_registration_disabled_notice'));
200 add_action('uwp_template_display_notices', array($instance, 'form_notice_by_key'));
201 add_action( 'admin_notices', array( $instance, 'show_admin_notices' ) );
202 add_action( 'admin_notices', array($instance, 'uwp_admin_notices') );
203 }
204
205 public function load_pages_actions_and_filters($instance) {
206 add_action( 'wpmu_new_blog', array($instance, 'wpmu_generate_default_pages_on_new_site'), 10, 6 );
207 }
208
209 public function load_profile_actions_and_filters($instance) {
210 add_action( 'template_redirect', array($instance, 'uwp_redirect_author_page') , 10 , 2 );
211 //profile page
212 add_filter('query_vars', array($instance, 'profile_query_vars'), 10, 1 );
213 add_action('init', array($instance, 'rewrite_profile_link') , 10, 1 );
214 add_filter( 'uwp_profile_link', array($instance, 'get_profile_link'), 10, 2 );
215 add_filter( 'edit_profile_url', array($instance, 'uwp_modify_admin_bar_edit_profile_url'), 10, 3);
216 add_filter( 'the_title', array($instance, 'modify_profile_page_title'), 10, 2 );
217 add_filter( 'get_comment_author_link', array($instance, 'uwp_get_comment_author_link') , 10 , 2 );
218 add_action( 'uwp_profile_header', array($instance, 'get_profile_header'), 10, 1 );
219 add_action( 'uwp_users_profile_header', array($instance, 'get_profile_header'), 10, 1 );
220 add_action( 'uwp_profile_title', array($instance, 'get_profile_title'), 10, 1 );
221 //add_action( 'uwp_profile_bio', array($instance, 'get_profile_bio'), 10, 1 );
222 add_action( 'uwp_profile_social', array($instance, 'get_profile_social'), 10, 1 );
223
224 //Fields as tabs
225 add_action( 'uwp_profile_tabs', array($instance, 'uwp_extra_fields_as_tabs'), 10, 2 );
226
227 // Popup and crop functions
228 add_filter( 'ajax_query_attachments_args', array($instance, 'uwp_restrict_attachment_display') );
229
230 add_action( 'uwp_handle_file_upload_error_checks', array($instance, 'uwp_handle_file_upload_error_checks'), 10, 4 );
231 add_action( 'wp_ajax_uwp_avatar_banner_upload', array($instance, 'uwp_ajax_avatar_banner_upload') );
232 //add_action( 'wp_ajax_uwp_ajax_image_crop_popup', array($instance, 'uwp_ajax_image_crop_popup') );
233 add_action( 'wp_ajax_uwp_ajax_image_crop_popup_form', array($instance, 'uwp_ajax_image_crop_popup_form') );
234 add_action( 'wp_head', array($instance, 'uwp_define_ajaxurl') );
235 add_action( 'uwp_profile_header', array($instance, 'uwp_image_crop_init'), 10, 1 );
236 add_action( 'uwp_admin_profile_edit', array($instance, 'uwp_image_crop_init'), 10, 1 );
237
238 // Profile Tabs
239 add_action( 'uwp_profile_content', array($instance, 'get_profile_tabs_content'), 10, 1 );
240 add_action( 'uwp_profile_more_info_tab_content', array($instance, 'get_profile_more_info'), 10, 1);
241 add_action( 'uwp_profile_posts_tab_content', array($instance, 'get_profile_posts'), 10, 1);
242 add_action( 'uwp_profile_comments_tab_content', array($instance, 'get_profile_comments'), 10, 1);
243 add_action( 'uwp_profile_tab_content', array($instance, 'uwp_extra_fields_as_tab_values'), 10, 2 );
244
245 // Profile Pagination
246 add_action( 'uwp_profile_pagination', array($instance, 'get_profile_pagination'));
247
248 // Users
249 add_action( 'uwp_users_search', array($instance, 'uwp_users_search'));
250 add_action( 'uwp_users_list', array($instance, 'uwp_users_list'));
251 add_action( 'uwp_users_extra', array($instance, 'get_users_extra'));
252 add_action( 'uwp_profile_bio', array($instance, 'get_profile_side_extra'));
253
254
255 // User, allow subscribers to upload profile and banner pictures
256 add_filter( 'plupload_default_params', array($instance, 'add_uwp_plupload_param'), 10, 1 );
257 add_filter( 'user_has_cap', array($instance, 'allow_all_users_profile_uploads'), 10, 4 );
258 }
259
260 public function load_shortcodes_actions_and_filters($instance) {
261 add_shortcode( 'uwp_forgot', array($instance, 'forgot'));
262 add_shortcode( 'uwp_change', array($instance, 'change'));
263 add_shortcode( 'uwp_reset', array($instance, 'reset'));
264 add_shortcode( 'uwp_account', array($instance, 'account'));
265 add_shortcode( 'uwp_profile', array($instance, 'profile'));
266 add_shortcode( 'uwp_users', array($instance, 'users'));
267 }
268
269 public function load_tables_actions_and_filters($instance) {
270 add_filter( 'wpmu_drop_tables', array($instance, 'drop_tables_on_delete_blog'));
271 }
272
273 public function load_templates_actions_and_filters($instance) {
274
275
276
277 add_action( 'template_redirect', array($instance, 'change_default_password_redirect') );
278 add_action( 'uwp_template_fields', array($instance, 'uwp_template_fields'), 10, 1 );
279 add_action( 'uwp_account_form_display', array($instance, 'uwp_account_edit_form_display'), 10, 1 );
280 add_action( 'wp_logout', array($instance, 'logout_redirect'));
281 add_action( 'init', array($instance, 'wp_login_redirect'));
282 add_action( 'admin_init', array($instance, 'uwp_activation_redirect'));
283 // Redirect functions
284 add_action( 'template_redirect', array($instance, 'profile_redirect'), 10);
285 add_action( 'template_redirect', array($instance, 'access_checks'), 20);
286 // Admin user edit page
287 add_action( 'edit_user_profile', array($instance, 'get_profile_extra_admin_edit'), 10, 1 );
288 add_action( 'show_user_profile', array($instance, 'get_profile_extra_admin_edit'), 10, 1 );
289
290
291 add_filter( 'wp_setup_nav_menu_item', array($instance, 'uwp_setup_nav_menu_item'), 10, 1 );
292 add_filter( 'the_content', array($instance, 'uwp_author_page_content'), 10, 1 );
293 add_filter( 'body_class', array($instance, 'uwp_add_body_class'), 10, 1 );
294
295 // filter the login url
296 add_filter( 'login_url', array($instance, 'wp_login_url'), 10, 3 );
297 }
298
299 public function load_tools_actions_and_filters($instance) {
300 add_action('admin_init', array($instance, 'uwp_tools_process_dummy_users'));
301 add_action('uwp_admin_sub_menus', array($instance, 'uwp_add_admin_tools_sub_menu'), 100, 1);
302 add_action('uwp_tools_settings_main_tab_content', array($instance, 'uwp_tools_main_tab_content'));
303 add_action('wp_ajax_uwp_process_diagnosis', array($instance, 'uwp_process_diagnosis_ajax'));
304 }
305
306 public function load_form_builder_actions_and_filters($instance) {
307 // Actions
308 add_action('admin_init', array($instance, 'uwp_form_builder_dummy_fields'));
309 add_action('uwp_manage_available_fields_predefined', array($instance, 'uwp_manage_available_fields_predefined'));
310 add_action('uwp_manage_available_fields_custom', array($instance, 'uwp_manage_available_fields_custom'));
311 add_action('uwp_manage_available_fields', array($instance, 'uwp_manage_available_fields'));
312 add_action('uwp_manage_selected_fields', array($instance, 'uwp_manage_selected_fields'));
313 add_action('uwp_admin_extra_custom_fields', array($instance, 'uwp_advance_admin_custom_fields'), 10, 2);
314 add_action('uwp_manage_available_fields', array($instance, 'uwp_manage_register_available_fields'), 10, 1);
315 add_action('uwp_manage_selected_fields', array($instance, 'uwp_manage_register_selected_fields'), 10, 1);
316 add_action('wp_ajax_uwp_ajax_register_action', array($instance, 'uwp_register_ajax_handler'));
317
318
319 // Filters
320 add_filter('uwp_builder_extra_fields_multiselect', array($instance, 'uwp_builder_extra_fields_smr'), 10, 4);
321 add_filter('uwp_builder_extra_fields_select', array($instance, 'uwp_builder_extra_fields_smr'), 10, 4);
322 add_filter('uwp_builder_extra_fields_radio', array($instance, 'uwp_builder_extra_fields_smr'), 10, 4);
323 add_filter('uwp_builder_extra_fields_datepicker', array($instance, 'uwp_builder_extra_fields_datepicker'), 10, 4);
324 add_filter('uwp_builder_extra_fields_password', array($instance, 'uwp_builder_extra_fields_password'), 10, 4);
325 add_filter('uwp_builder_extra_fields_email', array($instance, 'uwp_builder_extra_fields_email'), 10, 4);
326 add_filter('uwp_builder_extra_fields_file', array($instance, 'uwp_builder_extra_fields_file'), 10, 4);
327 add_filter('uwp_builder_data_type_text', array($instance, 'uwp_builder_data_type_text'), 10, 4);
328 add_filter('uwp_form_builder_available_fields_head', array($instance, 'uwp_register_available_fields_head'), 10, 2);
329 add_filter('uwp_form_builder_available_fields_note', array($instance, 'uwp_register_available_fields_note'), 10, 2);
330 add_filter('uwp_form_builder_selected_fields_head', array($instance, 'uwp_register_selected_fields_head'), 10, 2);
331 add_filter('uwp_form_builder_selected_fields_note', array($instance, 'uwp_register_selected_fields_note'), 10, 2);
332 add_filter('uwp_register_fields', array($instance, 'uwp_register_extra_fields'), 10, 2);
333 // htmlvar not needed for taxonomy
334 add_filter('uwp_builder_htmlvar_name_taxonomy',array($instance, 'uwp_return_empty_string'),10,4);
335 // default_value not needed for textarea, html, file, fieldset
336 add_filter('uwp_builder_default_value_textarea',array($instance, 'uwp_return_empty_string'),10,4);
337 add_filter('uwp_builder_default_value_html',array($instance, 'uwp_return_empty_string'),10,4);
338 add_filter('uwp_builder_default_value_file',array($instance, 'uwp_return_empty_string'),10,4);
339 add_filter('uwp_builder_default_value_fieldset',array($instance, 'uwp_return_empty_string'),10,4);
340 // is_required not needed for fieldset
341 add_filter('uwp_builder_is_required_fieldset',array($instance, 'uwp_return_empty_string'),10,4);
342 add_filter('uwp_builder_required_msg_fieldset',array($instance, 'uwp_return_empty_string'),10,4);
343 // field_icon not needed for fieldset
344 add_filter('uwp_builder_css_class_fieldset',array($instance, 'uwp_return_empty_string'),10,4);
345 }
346
347 public function load_menus_actions_and_filters($instance) {
348 add_action( 'load-nav-menus.php', array($instance, 'users_wp_admin_menu_metabox') );
349 }
350
351 public function load_admin_actions_and_filters($instance) {
352 add_action( 'admin_enqueue_scripts', array($instance, 'enqueue_styles') );
353 add_action( 'admin_enqueue_scripts', array($instance, 'enqueue_scripts') );
354 add_action( 'admin_menu', array($instance, 'setup_admin_menus') );
355 add_action('admin_head', array($instance, 'uwp_admin_only_css'));
356 }
357
358 public function load_admin_settings_actions_and_filters($instance) {
359 $instance->init_settings();
360
361 add_action( 'admin_init', array($instance, 'uwp_register_settings') );
362 //register settings
363 add_action( 'userswp_settings_main_tab_content', array($instance, 'get_general_content') );
364 add_action( 'userswp_settings_register_tab_content', array($instance, 'generic_display_form') );
365 add_action( 'userswp_settings_login_tab_content', array($instance, 'generic_display_form') );
366 add_action( 'userswp_settings_account_tab_content', array($instance, 'generic_display_form') );
367 add_action( 'userswp_settings_profile_tab_content', array($instance, 'generic_display_form') );
368 add_action( 'userswp_settings_users_tab_content', array($instance, 'generic_display_form') );
369 add_action( 'userswp_settings_change_tab_content', array($instance, 'generic_display_form') );
370 add_action( 'userswp_settings_uninstall_tab_content', array($instance, 'generic_display_form') );
371
372 add_action( 'uwp_form_builder_settings_main_tab_content_before', array($instance, 'get_form_builder_tabs') );
373 add_action( 'uwp_form_builder_settings_main_tab_content', array($instance, 'get_form_builder_content') );
374 add_filter( 'uwp_display_form_title', array($instance, 'display_form_title'), 10, 3 );
375 add_action( 'uwp_notifications_settings_main_tab_content', array($instance, 'get_notifications_content') );
376 add_action( 'uwp_notifications_settings_admin_tab_content', array($instance, 'generic_display_form') );
377 }
378
379
380
381 /**
382 * Run the loader to execute all of the hooks with WordPress.
383 *
384 * @since 1.0.0
385 */
386 public function run() {
387 $this->loader->run();
388 }
389
390 /**
391 * The name of the plugin used to uniquely identify it within the context of
392 * WordPress and to define internationalization functionality.
393 *
394 * @since 1.0.0
395 * @return string The name of the plugin.
396 */
397 public function get_plugin_name() {
398 return $this->plugin_name;
399 }
400
401 /**
402 * The reference to the class that orchestrates the hooks with the plugin.
403 *
404 * @since 1.0.0
405 * @return UsersWP_Loader Orchestrates the hooks of the plugin.
406 */
407 public function get_loader() {
408 return $this->loader;
409 }
410
411 /**
412 * Retrieve the version number of the plugin.
413 *
414 * @since 1.0.0
415 * @return string The version number of the plugin.
416 */
417 public function get_version() {
418 return $this->version;
419 }
420
421 /**
422 * Load the required dependencies for this plugin.
423 *
424 * @since 1.0.0
425 * @access private
426 */
427 private function load_dependencies() {
428 if ( ! function_exists( 'is_plugin_active' ) ) {
429 /**
430 * Load all plugin functions from WordPress.
431 */
432 require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
433 }
434
435 /**
436 * The class responsible for orchestrating the actions and filters of the
437 * core plugin.
438 */
439 require_once dirname(dirname( __FILE__ )) . '/includes/class-loader.php';
440
441 /**
442 * The class responsible for defining internationalization functionality
443 * of the plugin.
444 */
445 require_once dirname(dirname( __FILE__ )) . '/includes/class-i18n.php';
446
447 /**
448 * The class responsible for sending emails
449 * of the plugin.
450 */
451 require_once dirname(dirname( __FILE__ )) . '/includes/class-emails.php';
452
453 /**
454 * The class responsible for reading and updating meta
455 * of the plugin.
456 */
457 require_once dirname(dirname( __FILE__ )) . '/includes/class-meta.php';
458
459 /**
460 * The class responsible for userswp dates
461 * of the plugin.
462 */
463 require_once dirname(dirname( __FILE__ )) . '/includes/class-date.php';
464
465 /**
466 * The class responsible for userswp pages
467 * of the plugin.
468 */
469 require_once dirname(dirname( __FILE__ )) . '/includes/class-pages.php';
470
471 /**
472 * The class responsible for uploading files
473 * of the plugin.
474 */
475 require_once dirname(dirname( __FILE__ )) . '/includes/class-files.php';
476
477 /**
478 * The class responsible for defining form handler functionality
479 * of the plugin.
480 */
481 require_once dirname(dirname( __FILE__ )) . '/includes/class-forms.php';
482
483 /**
484 * The class responsible for form validation
485 * of the plugin.
486 */
487 require_once dirname(dirname( __FILE__ )) . '/includes/class-validation.php';
488
489 /**
490 * Country helpers
491 */
492 require_once dirname(dirname( __FILE__ )) . '/includes/class-countries.php';
493
494 /**
495 * The class responsible for defining ajax handler functionality
496 * of the plugin.
497 */
498 require_once dirname(dirname( __FILE__ )) . '/includes/class-ajax.php';
499
500 /**
501 * The class responsible for defining all shortcodes
502 */
503 require_once dirname(dirname( __FILE__ )) . '/includes/class-templates.php';
504
505 /**
506 * The class responsible for defining profile content
507 */
508 require_once dirname(dirname( __FILE__ )) . '/includes/class-profile.php';
509
510 /**
511 * The class responsible for defining all shortcodes
512 */
513 require_once dirname(dirname( __FILE__ )) . '/includes/class-shortcodes.php';
514
515 /**
516 * The class responsible for defining all menus items.
517 */
518 require_once dirname(dirname( __FILE__ )) . '/admin/menus/class-checklist.php';
519
520 /**
521 * The class responsible for defining all menus in the admin area.
522 */
523 require_once dirname(dirname( __FILE__ )) . '/admin/menus/class-menus.php';
524
525 /**
526 * The class responsible for defining all actions that occur in the admin area.
527 */
528 require_once dirname(dirname( __FILE__ )) . '/admin/class-admin.php';
529
530 /**
531 * The class responsible for defining all admin area settings.
532 */
533 require_once dirname(dirname( __FILE__ )) . '/admin/settings/class-settings.php';
534
535 /**
536 * The class responsible for defining all actions that occur in the public-facing
537 * side of the site.
538 */
539 require_once dirname(dirname( __FILE__ )) . '/public/class-public.php';
540
541 /**
542 * The class responsible for table functions
543 */
544 require_once dirname(dirname( __FILE__ )) . '/includes/class-tables.php';
545
546 /**
547 * The class responsible for adding fields in forms
548 */
549 require_once dirname(dirname( __FILE__ )) . '/admin/settings/class-formbuilder.php';
550
551 /**
552 * The class responsible for setting field callbacks
553 */
554 require_once dirname(dirname( __FILE__ )) . '/includes/class-callback.php';
555
556 /**
557 * The class responsible for adding tools functions
558 */
559 require_once dirname(dirname( __FILE__ )) . '/includes/class-tools.php';
560
561 /**
562 * The class responsible for displaying notices
563 */
564 require_once dirname(dirname( __FILE__ )) . '/includes/class-notices.php';
565
566 /**
567 * The class WP_Super_Duper for widgets.
568 */
569 require_once dirname(dirname( __FILE__ )) . '/includes/libraries/wp-super-duper.php';
570
571 /**
572 * contents helpers files and functions.
573 */
574 require_once( dirname(dirname( __FILE__ )) .'/includes/helpers.php' );
575
576 /**
577 * The class for login widget.
578 */
579 require_once( dirname(dirname( __FILE__ )) .'/widgets/login.php' );
580
581 /**
582 * The class for register widget.
583 */
584 require_once( dirname(dirname( __FILE__ )) .'/widgets/register.php' );
585
586 /**
587 * The class responsible for displaying notices
588 */
589 require_once dirname(dirname( __FILE__ )) . '/includes/class-import-export.php';
590
591 /**
592 * The class responsible for privacy policy functions
593 */
594 require_once dirname(dirname( __FILE__ )) . '/includes/abstract-uwp-privacy.php';
595 require_once dirname(dirname( __FILE__ )) . '/includes/class-uwp-privacy.php';
596
597 if ( is_plugin_active( 'uwp_geodirectory/uwp_geodirectory.php' ) ) {
598 deactivate_plugins( 'uwp_geodirectory/uwp_geodirectory.php' );
599 }
600
601 if ( is_plugin_active( 'geodirectory/geodirectory.php' ) ) {
602 /**
603 * The class responsible for displaying notices
604 *
605 * @since 1.0.12
606 */
607 require_once dirname(dirname( __FILE__ )) . '/includes/libraries/class-geodirectory-plugin.php';
608 }
609 }
610
611 }