PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.0.22
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.0.22
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 1.0.23 All 172 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.22, at includes/class-userswp.php

652 lines 30.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 current version of the plugin.
15 *
16 * @since 1.0.0
17 * @access protected
18 * @var string $version The current version of the plugin.
19 */
20 protected $version;
21
22 protected $profile;
23 public $forms;
24 protected $i18n;
25 protected $notices;
26 protected $templates;
27 protected $meta;
28 protected $pages;
29 protected $files;
30 protected $shortcodes;
31 protected $assets;
32 protected $admin;
33 protected $admin_settings;
34 protected $menus;
35 protected $form_builder;
36 protected $ajax;
37 protected $tools;
38 protected $tables;
39
40 /**
41 * Define the core functionality of the plugin.
42 *
43 * Set the plugin name and the plugin version that can be used throughout the plugin.
44 * Load the dependencies, define the locale, and set the hooks for the admin area and
45 * the public-facing side of the site.
46 *
47 * @since 1.0.0
48 */
49 public function __construct() {
50
51 $this->plugin_name = USERSWP_NAME;
52 $this->version = USERSWP_VERSION;
53
54
55 $this->load_dependencies();
56 $this->init_hooks();
57
58 $this->meta = new UsersWP_Meta();
59 $this->pages = new UsersWP_Pages();
60 $this->profile = new UsersWP_Profile();
61 $this->forms = new UsersWP_Forms();
62 $this->templates = new UsersWP_Templates();
63 $this->i18n = new UsersWP_i18n();
64 $this->notices = new UsersWP_Notices();
65 $this->assets = new UsersWP_Public();
66 $this->form_builder = new UsersWP_Form_Builder();
67 $this->menus = new UsersWP_Menus();
68 $this->tools = new UsersWP_Tools();
69 $this->tables = new UsersWP_Tables();
70
71 $this->shortcodes = new UsersWP_Shortcodes($this->templates);
72 $this->admin_settings = new UsersWP_Admin_Settings($this->form_builder);
73 $this->admin = new UsersWP_Admin($this->admin_settings);
74 $this->ajax = new UsersWP_Ajax($this->form_builder);
75 $this->files = new UsersWP_Files();
76 $this->notifications = new UsersWP_Notifications();
77 $this->status = new UsersWP_Status();
78
79
80 // actions and filters
81 $this->load_assets_actions_and_filters($this->assets);
82 $this->load_meta_actions_and_filters($this->meta);
83 $this->load_ajax_actions_and_filters($this->ajax);
84 $this->load_files_actions_and_filters($this->files);
85 $this->load_forms_actions_and_filters($this->forms);
86 $this->load_i18n_actions_and_filters($this->i18n);
87 $this->load_notices_actions_and_filters($this->notices);
88 $this->load_pages_actions_and_filters($this->pages);
89 $this->load_profile_actions_and_filters($this->profile);
90 $this->load_shortcodes_actions_and_filters($this->shortcodes);
91 $this->load_tables_actions_and_filters($this->tables);
92 $this->load_templates_actions_and_filters($this->templates);
93 $this->load_tools_actions_and_filters($this->tools);
94 $this->load_notifications_actions_and_filters($this->notifications);
95 $this->load_status_actions_and_filters($this->status);
96
97 //admin
98 $this->load_form_builder_actions_and_filters($this->form_builder);
99 $this->load_menus_actions_and_filters($this->menus);
100 $this->load_admin_actions_and_filters($this->admin);
101 $this->load_admin_settings_actions_and_filters($this->admin_settings);
102
103 }
104
105 /**
106 * Hook into actions and filters.
107 */
108 private function init_hooks() {
109 register_activation_hook( USERSWP_PLUGIN_FILE, array( 'UsersWP_Activator', 'activate' ) );
110 register_deactivation_hook( USERSWP_PLUGIN_FILE, array( 'UsersWP_Deactivator', 'deactivate' ) );
111 add_action( 'admin_init', array('UsersWP_Activator', 'uwp_automatic_upgrade') );
112 add_action( 'init', array( 'UsersWP_Activator', 'init_background_updater' ), 5 );
113 add_action( 'widgets_init', array( $this, 'uwp_register_widgets' ) );
114 }
115
116
117 public function load_assets_actions_and_filters($instance) {
118 add_action( 'wp_enqueue_scripts', array($instance, 'enqueue_styles') );
119 add_action( 'wp_enqueue_scripts', array($instance, 'enqueue_scripts') );
120 }
121
122 public function load_meta_actions_and_filters($instance) {
123 add_action('user_register', array($instance, 'sync_usermeta'), 10, 1);
124 add_action('delete_user', array($instance, 'delete_usermeta_for_user'), 10, 1);
125 add_action('remove_user_from_blog', array($instance, 'remove_user_from_blog'), 10, 2);
126 add_action('wp_login', array($instance, 'save_user_ip_on_login') ,10,2);
127 add_filter('uwp_before_extra_fields_save', array($instance, 'save_user_ip_on_register'), 10, 3);
128 add_filter('uwp_update_usermeta', array($instance, 'modify_datepicker_value_on_update'), 10, 3);
129 add_filter('uwp_get_usermeta', array($instance, 'modify_datepicker_value_on_get'), 10, 4);
130 add_filter('user_row_actions', array($instance, 'uwp_user_row_actions'), 10, 2);
131 add_action('bulk_actions-users', array($instance, 'uwp_users_bulk_actions'));
132 add_action('handle_bulk_actions-users', array($instance, 'uwp_handle_users_bulk_actions'), 10, 3);
133 add_filter('init', array($instance, 'uwp_process_user_actions'));
134 add_action('admin_notices', array($instance, 'uwp_show_update_messages'));
135 }
136
137 public function load_ajax_actions_and_filters($instance) {
138 add_action('wp_ajax_uwp_ajax_action', array($instance, 'handler'));
139 }
140
141 public function load_files_actions_and_filters($instance) {
142 if($instance->uwp_doing_upload()){
143 add_filter( 'wp_handle_upload_prefilter', array($instance, 'uwp_wp_media_restrict_file_types') );
144 }
145 add_filter('uwp_get_max_upload_size', array($instance, 'uwp_modify_get_max_upload_size'), 10, 2);
146 }
147
148 public function load_forms_actions_and_filters($instance) {
149 // general
150 add_action('init', array($instance, 'init_notices'), 1);
151 add_action('uwp_loaded', array($instance, 'handler'));
152 add_action('init', array($instance, 'uwp_privacy_submit_handler'));
153 add_action('uwp_template_display_notices', array($instance, 'display_notices'), 10, 1);
154 add_action('wp_ajax_uwp_upload_file_remove', array($instance, 'uwp_upload_file_remove'));
155 //User search form
156 add_action('uwp_users_page_search_form_inner', array($instance, 'uwp_users_search_form_text_field'), 10, 1);
157 add_action('uwp_users_page_search_form_inner', array($instance, 'uwp_users_search_form_submit'), 50, 1);
158 add_action('personal_options_update', array($instance, 'update_profile_extra_admin_edit'), 10, 1);
159 add_action('edit_user_profile_update', array($instance, 'update_profile_extra_admin_edit'), 10, 1);
160 add_action('user_edit_form_tag', array($instance, 'add_multipart_to_admin_edit_form'));
161 add_action('uwp_template_form_title_after', array($instance, 'uwp_display_username_in_account'), 10, 1);
162
163
164 // Forms
165 add_filter('uwp_form_input_html_datepicker', array($instance, 'uwp_form_input_datepicker'), 10, 4);
166 add_filter('uwp_form_input_html_time', array($instance, 'uwp_form_input_time'), 10, 4);
167 add_filter('uwp_form_input_html_select', array($instance, 'uwp_form_input_select'), 10, 4);
168 add_filter('uwp_form_input_html_multiselect', array($instance, 'uwp_form_input_multiselect'), 10, 4);
169 add_filter('uwp_form_input_html_text', array($instance, 'uwp_form_input_text'), 10, 4);
170 add_filter('uwp_form_input_html_textarea', array($instance, 'uwp_form_input_textarea'), 10, 4);
171 add_filter('uwp_form_input_html_fieldset', array($instance, 'uwp_form_input_fieldset'), 10, 4);
172 add_filter('uwp_form_input_html_file', array($instance, 'uwp_form_input_file'), 10, 4);
173 add_filter('uwp_form_input_html_checkbox', array($instance, 'uwp_form_input_checkbox'), 10, 4);
174 add_filter('uwp_form_input_html_radio', array($instance, 'uwp_form_input_radio'), 10, 4);
175 add_filter('uwp_form_input_html_url', array($instance, 'uwp_form_input_url'), 10, 4);
176 add_filter('uwp_form_input_html_email', array($instance, 'uwp_form_input_email'), 10, 4);
177 add_filter('uwp_form_input_html_password', array($instance, 'uwp_form_input_password'), 10, 4);
178 // Country select
179 add_filter('uwp_form_input_html_select_country', array($instance, 'uwp_form_input_select_country'), 10, 4);
180 add_filter('uwp_forms_check_for_send_mail_errors', array($instance, 'uwp_forms_check_for_send_mail_errors'), 10, 3);
181 add_filter('uwp_form_input_email_uwp_account_email_after', array($instance, 'uwp_register_confirm_email_field'), 10, 4);
182 add_filter('uwp_form_input_password_uwp_account_password_after', array($instance, 'uwp_register_confirm_password_field'), 10, 4);
183
184 // Emails
185 add_filter('uwp_send_mail_extras', array($instance, 'init_mail_extras'), 10, 3);
186 add_filter('uwp_send_admin_mail_extras', array($instance, 'init_admin_mail_extras'), 10, 3);
187
188 }
189
190 public function load_i18n_actions_and_filters($instance) {
191 add_action( 'init', array($instance, 'load_plugin_textdomain'));
192 }
193
194 public function load_notices_actions_and_filters($instance) {
195 add_action('uwp_template_display_notices', array($instance, 'display_registration_disabled_notice'));
196 add_action('uwp_template_display_notices', array($instance, 'form_notice_by_key'));
197 add_action( 'admin_notices', array( $instance, 'show_admin_notices' ) );
198 add_action( 'admin_notices', array($instance, 'uwp_admin_notices') );
199 }
200
201 public function load_pages_actions_and_filters($instance) {
202 add_action( 'wpmu_new_blog', array($instance, 'wpmu_generate_default_pages_on_new_site'), 10, 6 );
203 }
204
205 public function load_profile_actions_and_filters($instance) {
206 add_action( 'template_redirect', array($instance, 'uwp_redirect_author_page') , 10 , 2 );
207 //profile page
208 add_filter('query_vars', array($instance, 'profile_query_vars'), 10, 1 );
209 add_action('init', array($instance, 'rewrite_profile_link') , 10, 1 );
210 add_filter( 'uwp_profile_link', array($instance, 'get_profile_link'), 10, 2 );
211 add_filter( 'edit_profile_url', array($instance, 'uwp_modify_admin_bar_edit_profile_url'), 10, 3);
212 add_filter( 'the_title', array($instance, 'modify_profile_page_title'), 10, 2 );
213 add_filter( 'get_comment_author_link', array($instance, 'uwp_get_comment_author_link') , 10 , 2 );
214 add_action( 'uwp_profile_header', array($instance, 'get_profile_header'), 10, 1 );
215 add_action( 'uwp_users_profile_header', array($instance, 'get_profile_header'), 10, 1 );
216 add_action( 'uwp_profile_title', array($instance, 'get_profile_title'), 10, 1 );
217 add_action( 'uwp_profile_social', array($instance, 'get_profile_social'), 10, 1 );
218
219 //Fields as tabs
220 add_action( 'uwp_available_tab_items', array($instance, 'uwp_extra_fields_available_tab_items'), 10, 1 );
221 add_action( 'uwp_profile_tabs', array($instance, 'uwp_extra_fields_as_tabs'), 10, 3 );
222
223 // Popup and crop functions
224 add_filter( 'ajax_query_attachments_args', array($instance, 'uwp_restrict_attachment_display') );
225
226 add_action( 'uwp_handle_file_upload_error_checks', array($instance, 'uwp_handle_file_upload_error_checks'), 10, 4 );
227 add_action( 'wp_ajax_uwp_avatar_banner_upload', array($instance, 'uwp_ajax_avatar_banner_upload') );
228 //add_action( 'wp_ajax_uwp_ajax_image_crop_popup', array($instance, 'uwp_ajax_image_crop_popup') );
229 add_action( 'wp_ajax_uwp_ajax_image_crop_popup_form', array($instance, 'uwp_ajax_image_crop_popup_form') );
230 add_action( 'wp_head', array($instance, 'uwp_define_ajaxurl') );
231 add_action( 'uwp_profile_header', array($instance, 'uwp_image_crop_init'), 10, 1 );
232 add_action( 'uwp_admin_profile_edit', array($instance, 'uwp_image_crop_init'), 10, 1 );
233
234 // Profile Tabs
235 add_action( 'uwp_profile_content', array($instance, 'get_profile_tabs_content'), 10, 1 );
236 add_action( 'uwp_profile_more_info_tab_content', array($instance, 'get_profile_more_info'), 10, 1);
237 add_action( 'uwp_profile_posts_tab_content', array($instance, 'get_profile_posts'), 10, 1);
238 add_action( 'uwp_profile_comments_tab_content', array($instance, 'get_profile_comments'), 10, 1);
239 add_action( 'uwp_profile_tab_content', array($instance, 'uwp_extra_fields_as_tab_values'), 10, 2 );
240
241 // Profile Pagination
242 add_action( 'uwp_profile_pagination', array($instance, 'get_profile_pagination'));
243
244 // Users
245 add_action( 'uwp_users_search', array($instance, 'uwp_users_search'));
246 add_action( 'uwp_users_list', array($instance, 'uwp_users_list'));
247 add_action( 'uwp_users_extra', array($instance, 'get_users_extra'));
248 add_action( 'uwp_profile_bio', array($instance, 'get_profile_side_extra'));
249 add_action( 'wpdiscuz_profile_url', array($instance, 'uwp_wpdiscuz_profile_url'), 10, 2);
250
251 // User, allow subscribers to upload profile and banner pictures
252 add_filter( 'plupload_default_params', array($instance, 'add_uwp_plupload_param'), 10, 1 );
253 add_filter( 'user_has_cap', array($instance, 'allow_all_users_profile_uploads'), 10, 4 );
254 }
255
256 public function load_shortcodes_actions_and_filters($instance) {
257 add_shortcode( 'uwp_profile', array($instance, 'profile'));
258 }
259
260 public function load_tables_actions_and_filters($instance) {
261 add_filter( 'wpmu_drop_tables', array($instance, 'drop_tables_on_delete_blog'));
262 }
263
264 public function load_templates_actions_and_filters($instance) {
265
266 add_action( 'template_redirect', array($instance, 'change_default_password_redirect') );
267 add_action( 'uwp_template_fields', array($instance, 'uwp_template_fields'), 10, 1 );
268 add_action( 'uwp_template_fields', array($instance, 'uwp_template_extra_fields'), 10, 1 );
269 add_action( 'uwp_account_form_display', array($instance, 'uwp_account_edit_form_display'), 10, 1 );
270 add_action( 'wp_logout', array($instance, 'logout_redirect'));
271 add_action( 'init', array($instance, 'wp_login_redirect'));
272 add_action( 'admin_init', array($instance, 'uwp_activation_redirect'));
273 // Redirect functions
274 add_action( 'template_redirect', array($instance, 'profile_redirect'), 10);
275 add_action( 'template_redirect', array($instance, 'access_checks'), 20);
276 // Admin user edit page
277 add_action( 'edit_user_profile', array($instance, 'get_profile_extra_admin_edit'), 10, 1 );
278 add_action( 'show_user_profile', array($instance, 'get_profile_extra_admin_edit'), 10, 1 );
279
280
281 add_filter( 'wp_setup_nav_menu_item', array($instance, 'uwp_setup_nav_menu_item'), 10, 1 );
282 add_filter( 'the_content', array($instance, 'uwp_author_page_content'), 10, 1 );
283 add_filter( 'body_class', array($instance, 'uwp_add_body_class'), 10, 1 );
284
285 // filter the login and register url
286 add_filter( 'login_url', array($instance, 'wp_login_url'), 10, 3 );
287 add_filter( 'register_url', array($instance, 'wp_register_url'), 10, 1 );
288 }
289
290 public function load_tools_actions_and_filters($instance) {
291 add_action('uwp_admin_sub_menus', array($instance, 'uwp_add_admin_tools_sub_menu'), 100, 1);
292 add_action('uwp_tools_settings_main_tab_content', array($instance, 'uwp_tools_main_tab_content'));
293 add_action('wp_ajax_uwp_process_diagnosis', array($instance, 'uwp_process_diagnosis_ajax'));
294 }
295
296 public function load_notifications_actions_and_filters($instance){
297 add_action('uwp_account_form_display', array($instance, 'uwp_user_notifications_form_front'), 10, 1);
298 add_action('init', array($instance, 'uwp_notification_submit_handler'));
299 }
300
301 public function load_status_actions_and_filters($instance){
302 add_action('uwp_admin_sub_menus', array($instance, 'uwp_add_admin_status_sub_menu'), 100, 1);
303 add_action('uwp_status_settings_main_tab_content', array($instance, 'uwp_status_main_tab_content'));
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 // filters for which is_public not required
346 add_filter('uwp_builder_is_public_password',array($instance, 'uwp_return_empty_string'),10,4);
347 }
348
349 public function load_menus_actions_and_filters($instance) {
350 add_action( 'load-nav-menus.php', array($instance, 'users_wp_admin_menu_metabox') );
351 }
352
353 public function load_admin_actions_and_filters($instance) {
354 add_action( 'admin_enqueue_scripts', array($instance, 'enqueue_styles') );
355 add_action( 'admin_enqueue_scripts', array($instance, 'enqueue_scripts') );
356 add_action( 'admin_menu', array($instance, 'setup_admin_menus') );
357 add_action('admin_head', array($instance, 'uwp_admin_only_css'));
358 }
359
360 public function load_admin_settings_actions_and_filters($instance) {
361 $instance->init_settings();
362
363 add_action( 'admin_init', array($instance, 'uwp_register_settings') );
364 //register settings
365 add_action( 'userswp_settings_main_tab_content', array($instance, 'get_general_content') );
366 add_action( 'userswp_settings_register_tab_content', array($instance, 'generic_display_form') );
367 add_action( 'userswp_settings_login_tab_content', array($instance, 'generic_display_form') );
368 add_action( 'userswp_settings_account_tab_content', array($instance, 'generic_display_form') );
369 add_action( 'userswp_settings_profile_tab_content', array($instance, 'generic_display_form') );
370 add_action( 'userswp_settings_users_tab_content', array($instance, 'generic_display_form') );
371 add_action( 'userswp_settings_change_tab_content', array($instance, 'generic_display_form') );
372 add_action( 'userswp_settings_uninstall_tab_content', array($instance, 'generic_display_form') );
373
374 add_action( 'uwp_form_builder_settings_main_tab_content_before', array($instance, 'get_form_builder_tabs') );
375 add_action( 'uwp_form_builder_settings_main_tab_content', array($instance, 'get_form_builder_content') );
376 add_filter( 'uwp_display_form_title', array($instance, 'display_form_title'), 10, 3 );
377 add_action( 'uwp_notifications_settings_main_tab_content', array($instance, 'get_notifications_content') );
378 add_action( 'uwp_notifications_settings_admin_tab_content', array($instance, 'generic_display_form') );
379 }
380
381 public function uwp_register_widgets(){
382 register_widget("UWP_Register_Widget");
383 register_widget("UWP_Forgot_Widget");
384 register_widget("UWP_Login_Widget");
385 register_widget("UWP_Change_Widget");
386 register_widget("UWP_Reset_Widget");
387 register_widget("UWP_Users_Widget");
388 register_widget("UWP_Account_Widget");
389 }
390
391 /**
392 * The name of the plugin used to uniquely identify it within the context of
393 * WordPress and to define internationalization functionality.
394 *
395 * @since 1.0.0
396 * @return string The name of the plugin.
397 */
398 public function get_plugin_name() {
399 return $this->plugin_name;
400 }
401
402 /**
403 * Retrieve the version number of the plugin.
404 *
405 * @since 1.0.0
406 * @return string The version number of the plugin.
407 */
408 public function get_version() {
409 return $this->version;
410 }
411
412 /**
413 * Load the required dependencies for this plugin.
414 *
415 * @since 1.0.0
416 * @access private
417 */
418 private function load_dependencies() {
419 if ( ! function_exists( 'is_plugin_active' ) ) {
420 /**
421 * Load all plugin functions from WordPress.
422 */
423 require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
424 }
425
426 /**
427 * The class responsible for defining internationalization functionality
428 * of the plugin.
429 */
430 require_once dirname(dirname( __FILE__ )) . '/includes/class-i18n.php';
431
432 /**
433 * The class responsible for activation functionality
434 * of the plugin.
435 */
436 require_once dirname(dirname( __FILE__ )) . '/includes/class-activator.php';
437
438 /**
439 * The class responsible for deactivation functionality
440 * of the plugin.
441 */
442 require_once dirname(dirname( __FILE__ )) . '/includes/class-deactivator.php';
443
444 /**
445 * The class responsible for sending emails
446 * of the plugin.
447 */
448 require_once dirname(dirname( __FILE__ )) . '/includes/class-emails.php';
449
450 /**
451 * The class responsible for reading and updating meta
452 * of the plugin.
453 */
454 require_once dirname(dirname( __FILE__ )) . '/includes/class-meta.php';
455
456 /**
457 * The class responsible for userswp dates
458 * of the plugin.
459 */
460 require_once dirname(dirname( __FILE__ )) . '/includes/class-date.php';
461
462 /**
463 * The class responsible for userswp pages
464 * of the plugin.
465 */
466 require_once dirname(dirname( __FILE__ )) . '/includes/class-pages.php';
467
468 /**
469 * The class responsible for uploading files
470 * of the plugin.
471 */
472 require_once dirname(dirname( __FILE__ )) . '/includes/class-files.php';
473
474 /**
475 * The class responsible for defining form handler functionality
476 * of the plugin.
477 */
478 require_once dirname(dirname( __FILE__ )) . '/includes/class-forms.php';
479
480 /**
481 * The class responsible for form validation
482 * of the plugin.
483 */
484 require_once dirname(dirname( __FILE__ )) . '/includes/class-validation.php';
485
486 /**
487 * Country helpers
488 */
489 require_once dirname(dirname( __FILE__ )) . '/includes/class-countries.php';
490
491 /**
492 * The class responsible for defining ajax handler functionality
493 * of the plugin.
494 */
495 require_once dirname(dirname( __FILE__ )) . '/includes/class-ajax.php';
496
497 /**
498 * The class responsible for defining all shortcodes
499 */
500 require_once dirname(dirname( __FILE__ )) . '/includes/class-templates.php';
501
502 /**
503 * The class responsible for defining profile content
504 */
505 require_once dirname(dirname( __FILE__ )) . '/includes/class-profile.php';
506
507 /**
508 * The class responsible for defining all shortcodes
509 */
510 require_once dirname(dirname( __FILE__ )) . '/includes/class-shortcodes.php';
511
512 /**
513 * The class responsible for defining all menus items.
514 */
515 require_once dirname(dirname( __FILE__ )) . '/admin/menus/class-checklist.php';
516
517 /**
518 * The class responsible for defining all menus in the admin area.
519 */
520 require_once dirname(dirname( __FILE__ )) . '/admin/menus/class-menus.php';
521
522 /**
523 * The class responsible for defining all actions that occur in the admin area.
524 */
525 require_once dirname(dirname( __FILE__ )) . '/admin/class-admin.php';
526
527 /**
528 * The class responsible for defining all admin area settings.
529 */
530 require_once dirname(dirname( __FILE__ )) . '/admin/settings/class-settings.php';
531
532 /**
533 * The class responsible for defining all actions that occur in the public-facing
534 * side of the site.
535 */
536 require_once dirname(dirname( __FILE__ )) . '/public/class-public.php';
537
538 /**
539 * The class responsible for table functions
540 */
541 require_once dirname(dirname( __FILE__ )) . '/includes/class-tables.php';
542
543 /**
544 * The class responsible for adding fields in forms
545 */
546 require_once dirname(dirname( __FILE__ )) . '/admin/settings/class-formbuilder.php';
547
548 /**
549 * The class responsible for setting field callbacks
550 */
551 require_once dirname(dirname( __FILE__ )) . '/includes/class-callback.php';
552
553 /**
554 * The class responsible for adding tools functions
555 */
556 require_once dirname(dirname( __FILE__ )) . '/includes/class-tools.php';
557
558 /**
559 * The class responsible for displaying notices
560 */
561 require_once dirname(dirname( __FILE__ )) . '/includes/class-notices.php';
562
563 /**
564 * The libraries required.
565 */
566 require_once dirname(dirname( __FILE__ )) . '/vendor/autoload.php';
567
568 /**
569 * contents helpers files and functions.
570 */
571 require_once( dirname(dirname( __FILE__ )) .'/includes/helpers.php' );
572
573 /**
574 * The class for login widget.
575 */
576 require_once( dirname(dirname( __FILE__ )) .'/widgets/login.php' );
577
578 /**
579 * The class for register widget.
580 */
581 require_once( dirname(dirname( __FILE__ )) .'/widgets/register.php' );
582
583 /**
584 * The class for forgot password widget.
585 */
586 require_once( dirname(dirname( __FILE__ )) .'/widgets/forgot.php' );
587
588 /**
589 * The class for reset password widget.
590 */
591 require_once( dirname(dirname( __FILE__ )) .'/widgets/reset.php' );
592
593 /**
594 * The class for change password widget.
595 */
596 require_once( dirname(dirname( __FILE__ )) .'/widgets/change.php' );
597
598 /**
599 * The class for users widget.
600 */
601 require_once( dirname(dirname( __FILE__ )) .'/widgets/users.php' );
602
603 /**
604 * The class for account widget.
605 */
606 require_once( dirname(dirname( __FILE__ )) .'/widgets/account.php' );
607
608 /**
609 * The class responsible for displaying notices
610 */
611 require_once dirname(dirname( __FILE__ )) . '/includes/class-import-export.php';
612
613 /**
614 * The class responsible for displaying notices
615 */
616 require_once dirname(dirname( __FILE__ )) . '/includes/class-user-notifications.php';
617
618 /**
619 * The class responsible for adding tools functions
620 */
621 require_once dirname(dirname( __FILE__ )) . '/includes/class-status.php';
622
623 /**
624 * The class responsible for privacy policy functions
625 */
626 require_once dirname(dirname( __FILE__ )) . '/includes/abstract-uwp-privacy.php';
627 require_once dirname(dirname( __FILE__ )) . '/includes/class-uwp-privacy.php';
628
629 if ( is_plugin_active( 'uwp_geodirectory/uwp_geodirectory.php' ) ) {
630 deactivate_plugins( 'uwp_geodirectory/uwp_geodirectory.php' );
631 }
632
633 if ( is_plugin_active( 'geodirectory/geodirectory.php' ) || class_exists('GeoDirectory') ) {
634 /**
635 * The class responsible for displaying notices
636 *
637 * @since 1.0.12
638 */
639 require_once dirname(dirname( __FILE__ )) . '/includes/libraries/class-geodirectory-plugin.php';
640 }
641
642 if ( class_exists('WPInv_Invoice') ) {
643 /**
644 * The class responsible for displaying notices
645 *
646 * @since 1.0.12
647 */
648 require_once dirname(dirname( __FILE__ )) . '/includes/libraries/class-invoicing-plugin.php';
649 }
650 }
651
652 }