PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.2.47
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.2.47
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 / public / class-public.php

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

125 lines 4.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The public-facing functionality of the plugin.
4 *
5 * @link http://wpgeodirectory.com
6 * @since 1.0.0
7 *
8 * @package userswp
9 * @subpackage userswp/public
10 */
11
12 /**
13 * The public-facing functionality of the plugin.
14 *
15 * Defines the plugin name, version, and two examples hooks for how to
16 * enqueue the admin-specific stylesheet and JavaScript.
17 *
18 * @package userswp
19 * @subpackage userswp/public
20 * @author GeoDirectory Team <info@wpgeodirectory.com>
21 */
22 class UsersWP_Public {
23
24 /**
25 * Register the stylesheets for the public-facing side of the site.
26 *
27 * @since 1.0.0
28 */
29 public function enqueue_styles() {
30 // Scripts if user on own profile page.
31 if ( is_uwp_current_user_profile_page() ) {
32 // Include only profile pages
33 wp_enqueue_style( 'jcrop' );
34
35 if ( is_user_logged_in() ) {
36 wp_enqueue_media();
37 }
38 }
39
40 wp_register_style( 'jquery-ui', USERSWP_PLUGIN_URL . 'assets/css/jquery-ui.css' );
41
42 // maybe add bootstrap
43 if ( empty( uwp_get_option("design_style", "bootstrap" ) ) ) {
44 wp_enqueue_style( USERSWP_NAME, USERSWP_PLUGIN_URL . 'assets/css/users-wp.css', array(), USERSWP_VERSION, 'all' );
45 wp_register_style( 'uwp-authorbox', USERSWP_PLUGIN_URL . 'assets/css/authorbox.css', array(), USERSWP_VERSION, 'all' );
46 } else {
47 //@todo this is not actually being used yet, enable when if it is.
48 //wp_enqueue_style( "uwp", USERSWP_PLUGIN_URL . 'assets/css/bootstrap/uwp.css', array(), USERSWP_VERSION, 'all' );
49 }
50 }
51
52 /**
53 * Register the JavaScript for the public-facing side of the site.
54 *
55 * @since 1.0.0
56 */
57 public function enqueue_scripts() {
58 $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
59 $in_footer = apply_filters( 'uwp_enqueue_scripts_in_footer', false );
60
61 // Core UWP JS
62 wp_enqueue_script( USERSWP_NAME, USERSWP_PLUGIN_URL . 'assets/js/users-wp' . $suffix . '.js', array( 'jquery' ), USERSWP_VERSION, $in_footer );
63
64 // localize
65 $uwp_localize_data = uwp_get_localize_data();
66 wp_localize_script( USERSWP_NAME, 'uwp_localize_data', $uwp_localize_data );
67
68 wp_register_script( "uwp_timepicker", USERSWP_PLUGIN_URL . 'assets/js/jquery.ui.timepicker.min.js', array( 'jquery', 'jquery-ui-datepicker', 'jquery-ui-core' ), USERSWP_VERSION, true );
69
70 $enable_timepicker_fields = false;
71 $enable_country_fields = false;
72 $fields = $this->get_all_form_fields();
73
74 if ( ! empty( $fields ) ) {
75 foreach ( $fields as $field ) {
76 if ( isset( $field->field_type ) && ( $field->field_type == 'time' || $field->field_type == 'datepicker' ) ) {
77 $enable_timepicker_fields = true;
78 }
79
80 if ( isset($field->field_type_key ) && ( $field->field_type_key == 'uwp_country' || $field->field_type_key == 'country' ) ) {
81 $enable_country_fields = true;
82 }
83 }
84 }
85
86 if ( $enable_timepicker_fields ) {
87 wp_enqueue_style( 'jquery-ui' );
88 wp_enqueue_script( "uwp_timepicker" );
89 }
90
91 if ( $enable_country_fields ) {
92 //@todo lets find a better solution for this and put it in AUI, maybe SVG files?
93 wp_enqueue_style( "uwp-country-select", USERSWP_PLUGIN_URL . 'assets/css/countryselect.css', array(), USERSWP_VERSION, 'all' );
94 wp_enqueue_script( "country-select", USERSWP_PLUGIN_URL . 'assets/js/countrySelect' . $suffix . '.js', array( 'jquery' ), USERSWP_VERSION, $in_footer );
95 $country_data = uwp_get_country_data();
96 wp_localize_script( 'country-select', 'uwp_country_data', $country_data );
97 }
98 }
99
100 function get_all_form_fields( $htmlvar_name = '' ) {
101 global $wpdb;
102
103 $table_name = uwp_get_table_prefix() . 'uwp_form_fields';
104 $register_forms = uwp_get_option( 'multiple_registration_forms' );
105 $custom_fields = array();
106
107 if ( ! empty( $register_forms ) && is_array( $register_forms ) ) {
108 $form_ids = array();
109
110 foreach ( $register_forms as $key => $register_form ) {
111 $form_ids[] = (int) $register_form['id'];
112 }
113
114 if ( ! empty( $form_ids ) && count( $form_ids ) > 0 ) {
115 $form_ids_placeholder = array_fill( 0, count( $form_ids ), '%d' );
116 $form_ids_placeholder = implode( ', ', $form_ids_placeholder );
117 $query = $wpdb->prepare( "SELECT id,field_type,field_type_key FROM " . $table_name . " WHERE form_type = 'account' AND form_id IN (" . $form_ids_placeholder . ") AND (field_type = 'time' OR field_type = 'datepicker' OR field_type_key = 'uwp_country' OR field_type_key = 'country') ORDER BY sort_order ASC", $form_ids );
118 $custom_fields = $wpdb->get_results( $query );
119 }
120 }
121
122 return $custom_fields;
123 }
124
125 }