function um_get_avatar($avatar = '', $id_or_email = '', $size = '96', $avatar_class = '', $default = '', $alt = '') { if (is_numeric($id_or_email)) { $user_id = (int) $id_or_email; } elseif (is_string($id_or_email) && ($user = get_user_by('email', $id_or_email))) { $user_id = $user->ID; } elseif (is_object($id_or_email) && !empty($id_or_email->user_id)) { $user_id = (int) $id_or_email->user_id; } if (empty($user_id)) { return $avatar; } um_fetch_user($user_id); $avatar = um_user('profile_photo', $size); if (!um_profile('profile_photo') && um_get_option('use_gravatars')) { if (is_ssl()) { $protocol = 'https://'; } else { $protocol = 'http://'; } $default = get_option('avatar_default', 'mystery'); if ($default == 'gravatar_default') { $default = ''; } $rating = get_option('avatar_rating'); if (!empty($rating)) { $rating = "&r={$rating}"; } $avatar = '<img src="' . $protocol . 'gravatar.com/avatar/' . md5(um_user('user_email')) . '?d=' . $default . '&s=' . $size . $rating . '" class="gravatar avatar avatar-' . $size . ' um-avatar" width="' . $size . '" height="' . $size . '" alt="" />'; } return $avatar; }
function um_admin_user_actions_hook($actions) { $actions = null; if (!um_user('super_admin')) { if (um_user('account_status') == 'awaiting_admin_review') { $actions['um_approve_membership'] = array('label' => __('Approve Membership', 'ultimatemember')); $actions['um_reject_membership'] = array('label' => __('Reject Membership', 'ultimatemember')); } if (um_user('account_status') == 'rejected') { $actions['um_approve_membership'] = array('label' => __('Approve Membership', 'ultimatemember')); } if (um_user('account_status') == 'approved') { $actions['um_put_as_pending'] = array('label' => __('Put as Pending Review', 'ultimatemember')); } if (um_user('account_status') == 'awaiting_email_confirmation') { $actions['um_resend_activation'] = array('label' => __('Resend Activation E-mail', 'ultimatemember')); } if (um_user('account_status') != 'inactive') { $actions['um_deactivate'] = array('label' => __('Deactivate this account', 'ultimatemember')); } if (um_user('account_status') == 'inactive') { $actions['um_reenable'] = array('label' => __('Reactivate this account', 'ultimatemember')); } if (um_current_user_can('delete', um_profile_id())) { $actions['um_delete'] = array('label' => __('Delete this user', 'ultimatemember')); } } if (current_user_can('delete_users')) { $actions['um_switch_user'] = array('label' => __('Login as this user', 'ultimatemember')); } um_fetch_user(um_profile_id()); return $actions; }
function um_after_changing_user_password($user_id) { global $ultimatemember; um_fetch_user($user_id); $ultimatemember->mail->send(um_user('user_email'), 'changedpw_email'); um_reset_user(); }
function um_control_admin_bar($content) { if (um_user('can_not_see_adminbar')) { return false; } return $content; }
function custom_update_profile($user_id) { global $ultimatemember; um_fetch_user($user_id); $profilefirstname = um_user('first_name'); update_user_meta($user_id, 'billing_first_name', $profilefirstname); update_user_meta($user_id, 'shipping_first_name', $profilefirstname); $profilelastname = um_user('last_name'); update_user_meta($user_id, 'billing_last_name', $profilelastname); update_user_meta($user_id, 'shipping_last_name', $profilelastname); $profileaddress1 = um_user('street_address'); update_user_meta($user_id, 'billing_address_1', $profileaddress1); update_user_meta($user_id, 'shipping_address_1', $profileaddress1); $profileaddress2 = um_user('address2'); update_user_meta($user_id, 'billing_address_2', $address2); update_user_meta($user_id, 'shipping_address_2', $address2); $profilecity = um_user('city'); update_user_meta($user_id, 'billing_city', $profilecity); update_user_meta($user_id, 'shipping_city', $profilecity); $profilezip_code = um_user('zip_code'); update_user_meta($user_id, 'billing_postcode', $profilezip_code); update_user_meta($user_id, 'shipping_postcode', $profilezip_code); $profileemail = um_user('user_email'); update_user_meta($user_id, 'billing_email', $profileemail); $profilephone = um_user('phone_number'); update_user_meta($user_id, 'billing_phone', $profilephone); return $user_id; }
function um_get_avatar($avatar = '', $id_or_email = '', $size = '96', $avatar_class = '', $default = '', $alt = '') { if (is_numeric($id_or_email)) { $user_id = (int) $id_or_email; } elseif (is_string($id_or_email) && ($user = get_user_by('email', $id_or_email))) { $user_id = $user->ID; } elseif (is_object($id_or_email) && !empty($id_or_email->user_id)) { $user_id = (int) $id_or_email->user_id; } if (empty($user_id)) { return $avatar; } um_fetch_user($user_id); $avatar = um_user('profile_photo', $size); if (!$avatar && um_get_option('use_gravatars')) { $default = get_option('avatar_default', 'mystery'); if ($default == 'gravatar_default') { $default = ''; } $rating = get_option('avatar_rating'); if (!empty($rating)) { $rating = "&r={$rating}"; } $avatar_url = um_get_domain_protocol() . 'gravatar.com/avatar/' . um_user('synced_gravatar_hashed_id'); $avatar = '<img src="' . $avatar_url . '?d=' . $default . '&s=' . $size . $rating . '" class="func-um_get_avatar gravatar avatar avatar-' . $size . ' um-avatar" width="' . $size . '" height="' . $size . '" alt="" />'; } else { if (empty($avatar)) { $default_avatar_uri = um_get_default_avatar_uri(); $avatar = '<img src="' . $default_avatar_uri . '" class="gravatar avatar avatar-' . $size . ' um-avatar" width="' . $size . '" height="' . $size . '" alt="" />'; } } return $avatar; }
function um_admin_user_actions_hook($actions) { $actions = null; if (!um_user('super_admin')) { if (um_user('account_status') == 'awaiting_admin_review') { $actions['um_approve_membership'] = array('label' => __('Утвердить Пользователя', 'ultimatemember')); $actions['um_reject_membership'] = array('label' => __('Отклонить Пользователя', 'ultimatemember')); } if (um_user('account_status') == 'rejected') { $actions['um_approve_membership'] = array('label' => __('Одобрить Пользователя', 'ultimatemember')); } if (um_user('account_status') == 'approved') { $actions['um_put_as_pending'] = array('label' => __('Положите в ожидании пересмотра', 'ultimatemember')); } if (um_user('account_status') == 'awaiting_email_confirmation') { $actions['um_resend_activation'] = array('label' => __('Отправить повторно письмо для активации', 'ultimatemember')); } if (um_user('account_status') != 'inactive') { $actions['um_deactivate'] = array('label' => __('Отключить эту учетную запись', 'ultimatemember')); } if (um_user('account_status') == 'inactive') { $actions['um_reenable'] = array('label' => __('Активируйте эту учетную запись', 'ultimatemember')); } if (um_current_user_can('delete', um_profile_id())) { $actions['um_delete'] = array('label' => __('Удалить этого пользователя', 'ultimatemember')); } } if (current_user_can('delete_users')) { $actions['um_switch_user'] = array('label' => __('Войдите в систему как этот пользователь', 'ultimatemember')); } um_fetch_user(um_profile_id()); return $actions; }
function um_profile_content_edudash_default($args) { // Admin Role Check if (um_user('role_name') == 'EM Faculty') { get_template_part('edudash'); } else { echo "Sorry but you need to have educator access to view this tab."; } }
function reset_url() { global $ultimatemember; if (!um_user('reset_pass_hash')) { return false; } $url = add_query_arg('act', 'reset_password', um_get_core_page('password-reset')); $url = add_query_arg('hash', esc_attr(um_user('reset_pass_hash')), $url); $url = add_query_arg('user_id', esc_attr(um_user('ID')), $url); return $url; }
function um_control_admin_bar() { if (um_user('can_not_see_adminbar')) { return false; } if (!is_admin() && !um_user('can_access_wpadmin')) { return false; } else { um_fetch_user(get_current_user_id()); return true; } }
function um_comment_link_to_profile($return) { global $comment, $ultimatemember; if (isset($comment->user_id) && !empty($comment->user_id)) { if (isset($ultimatemember->user->cached_user[$comment->user_id]) && $ultimatemember->user->cached_user[$comment->user_id]) { $return = '<a href="' . $ultimatemember->user->cached_user[$comment->user_id]['url'] . '">' . $ultimatemember->user->cached_user[$comment->user_id]['name'] . '</a>'; } else { um_fetch_user($comment->user_id); $ultimatemember->user->cached_user[$comment->user_id] = array('url' => um_user_profile_url(), 'name' => um_user('display_name')); $return = '<a href="' . $ultimatemember->user->cached_user[$comment->user_id]['url'] . '">' . $ultimatemember->user->cached_user[$comment->user_id]['name'] . '</a>'; um_reset_user(); } } return $return; }
function um_shortcode_args_filter($args) { global $ultimatemember; if ($ultimatemember->shortcodes->message_mode == true) { $args['template'] = 'message'; $ultimatemember->shortcodes->custom_message = um_user(um_user('status') . '_message'); um_reset_user(); } foreach ($args as $k => $v) { if ($ultimatemember->validation->is_serialized($args[$k])) { if (!empty($args[$k])) { $args[$k] = unserialize($args[$k]); } } } return $args; }
function um_account_page_default_tabs_hook($tabs) { global $ultimatemember; foreach ($tabs as $k => $arr) { foreach ($arr as $id => $info) { $output = $ultimatemember->account->get_tab_output($id); if (!$output) { unset($tabs[$k][$id]); } if ($id == 'delete') { if (!um_user('can_delete_profile') && !um_user('can_delete_everyone')) { unset($tabs[$k][$id]); } } } } return $tabs; }
function um_conditional_nav_menu($items, $menu, $args) { $hide_children_of = array(); foreach ($items as $key => $item) { $mode = get_post_meta($item->ID, 'menu-item-um_nav_public', true); $roles = get_post_meta($item->ID, 'menu-item-um_nav_roles', true); $visible = true; // hide any item that is the child of a hidden item if (in_array($item->menu_item_parent, $hide_children_of)) { $visible = false; $hide_children_of[] = $item->ID; // for nested menus } if (isset($mode) && $visible) { switch ($mode) { case 2: if (is_user_logged_in() && isset($roles) && !empty($roles)) { if (in_array(um_user('role'), (array) $roles)) { $visible = true; } else { $visible = false; } } else { $visible = is_user_logged_in() ? true : false; } break; case 1: $visible = !is_user_logged_in() ? true : false; break; } } // add filter to work with plugins that don't use traditional roles $visible = apply_filters('um_nav_menu_roles_item_visibility', $visible, $item); // unset non-visible item if (!$visible) { $hide_children_of[] = $item->ID; // store ID of item unset($items[$key]); } } return $items; }
function logout_page() { if (um_is_core_page('logout')) { if (is_user_logged_in()) { if (isset($_REQUEST['redirect_to']) && $_REQUEST['redirect_to'] !== '') { $redirect_to = $_REQUEST['redirect_to']; } else { if (um_user('after_logout') == 'redirect_home') { $redirect_to = home_url(); } else { $redirect_to = um_user('logout_redirect_url'); } } wp_logout(); exit(wp_redirect($redirect_to)); } else { um_redirect_home(); } } }
function um_update_profile_full_name($changes) { global $ultimatemember; if (isset($changes['first_name']) && isset($changes['last_name'])) { if ($changes['first_name'] && $changes['last_name'] && um_get_option('display_name') != 'public_name') { wp_update_user(array('ID' => $ultimatemember->user->id, 'display_name' => $changes['first_name'] . ' ' . $changes['last_name'])); $full_name = $changes['first_name'] . '.' . $changes['last_name']; } else { $full_name = $ultimatemember->user->profile['display_name']; } $full_name = $ultimatemember->validation->safe_name_in_url($full_name); /* duplicate or not */ if ($ultimatemember->user->user_has_metadata('full_name', $full_name)) { $duplicates = $ultimatemember->user->user_has_metadata('full_name', $full_name); if (!get_option("um_duplicate_name_{$full_name}")) { update_option("um_duplicate_name_{$full_name}", $duplicates); $full_name = $full_name . '.' . $duplicates; } else { if (um_user('_duplicate_id')) { $duplicates = um_user('_duplicate_id'); } else { $duplicates = get_option("um_duplicate_name_{$full_name}") + 1; update_option("um_duplicate_name_{$full_name}", $duplicates); update_user_meta($ultimatemember->user->id, '_duplicate_id', $duplicates); } $full_name = $full_name . '.' . $duplicates; } } else { if (um_user('_duplicate_id') && $full_name != str_replace('.' . um_user('_duplicate_id'), '', um_user('full_name'))) { $duplicates = um_user('_duplicate_id'); $full_name = str_replace('.' . um_user('_duplicate_id'), '', $full_name); } } update_user_meta($ultimatemember->user->id, 'full_name', $full_name); } if (um_get_option('display_name') === 'public_name') { update_user_meta($ultimatemember->user->id, 'display_name', $changes['display_name']); } }
function um_wp_form_errors_hook_logincheck($user, $username, $password) { remove_filter('authenticate', 'wp_authenticate_username_password', 20, 3); if (isset($user->ID)) { um_fetch_user($user->ID); $status = um_user('account_status'); switch ($status) { case 'inactive': return new WP_Error($status, __('Ваш аккаунт был отключен.', 'ultimatemember')); break; case 'awaiting_admin_review': return new WP_Error($status, __('Ваш аккаунт не был одобрен еще.', 'ultimatemember')); break; case 'awaiting_email_confirmation': return new WP_Error($status, __('Ваша учетная запись ожидает проверки электронной почты.', 'ultimatemember')); break; case 'rejected': return new WP_Error($status, __('Ваш запрос на вступление была отклонена.', 'ultimatemember')); break; } } return wp_authenticate_username_password(null, $username, $password); }
function um_wp_form_errors_hook_logincheck($user, $username, $password) { remove_filter('authenticate', 'wp_authenticate_username_password', 20, 3); if (isset($user->ID)) { um_fetch_user($user->ID); $status = um_user('account_status'); switch ($status) { case 'inactive': return new WP_Error($status, __('Your account has been disabled.', 'ultimatemember')); break; case 'awaiting_admin_review': return new WP_Error($status, __('Your account has not been approved yet.', 'ultimatemember')); break; case 'awaiting_email_confirmation': return new WP_Error($status, __('Your account is awaiting e-mail verification.', 'ultimatemember')); break; case 'rejected': return new WP_Error($status, __('Your membership request has been rejected.', 'ultimatemember')); break; } } return wp_authenticate_username_password($user, $username, $password); }
function logout_page() { if (um_is_core_page('logout')) { if (is_user_logged_in()) { if (isset($_REQUEST['redirect_to']) && $_REQUEST['redirect_to'] !== '') { wp_logout(); session_unset(); exit(wp_redirect($_REQUEST['redirect_to'])); } else { if (um_user('after_logout') == 'redirect_home') { wp_logout(); session_unset(); um_redirect_home(); } else { wp_logout(); session_unset(); exit(wp_redirect(um_user('logout_redirect_url'))); } } } else { um_redirect_home(); } } }
<div class="um <?php echo $this->get_class($mode); ?> um-<?php echo $form_id; ?> um-role-<?php echo um_user('role'); ?> "> <div class="um-form"> <?php do_action('um_profile_before_header', $args); ?> <?php if (um_is_on_edit_profile()) { ?> <form method="post" action=""><?php } ?> <?php do_action('um_profile_header_cover_area', $args); ?> <?php do_action('um_profile_header', $args); ?>
function um_access_post_settings() { global $post, $ultimatemember; // woo commerce shop ID if (function_exists('is_shop') && is_shop()) { $post_id = get_option('woocommerce_shop_page_id'); } else { if (is_archive() || is_front_page() || is_search() || in_the_loop()) { return; } else { if (!get_post_type() || !isset($post->ID)) { return; } } } if (!isset($post_id)) { $post_id = $post->ID; } $args = $ultimatemember->access->get_meta($post_id); extract($args); if (!isset($args['custom_access_settings']) || $args['custom_access_settings'] == 0) { $post_id = apply_filters('um_access_control_for_parent_posts', $post_id); $args = $ultimatemember->access->get_meta($post_id); extract($args); if (!isset($args['custom_access_settings']) || $args['custom_access_settings'] == 0) { return; } } $redirect_to = null; if (!isset($accessible)) { return; } switch ($accessible) { case 0: $ultimatemember->access->allow_access = true; $ultimatemember->access->redirect_handler = false; // open to everyone break; case 1: if (is_user_logged_in()) { $redirect_to = $access_redirect2; } if (!is_user_logged_in()) { $ultimatemember->access->allow_access = true; } break; case 2: if (!is_user_logged_in()) { if (!$access_redirect) { $access_redirect = um_get_core_page('login'); } $redirect_to = $access_redirect; } if (is_user_logged_in() && isset($access_roles) && !empty($access_roles)) { if (!in_array(um_user('role'), unserialize($access_roles))) { if (!$access_redirect) { if (is_user_logged_in()) { $access_redirect = home_url(); } else { $access_redirect = um_get_core_page('login'); } } $redirect_to = $access_redirect; } } break; } if ($redirect_to) { if (is_feed()) { } else { $ultimatemember->access->allow_access = false; $ultimatemember->access->redirect_handler = $redirect_to; } } }
function admin_act_url($action, $subaction) { $url = $this->get_current_url(); $url = add_query_arg('um_adm_action', $action, $url); $url = add_query_arg('sub', $subaction, $url); $url = add_query_arg('user_id', um_user('ID'), $url); return $url; }
function um_post_registration($user_id, $args) { global $ultimatemember; unset($args['user_id']); extract($args); $status = um_user('status'); do_action("um_post_registration_global_hook", $user_id, $args); do_action("um_post_registration_{$status}_hook", $user_id, $args); if (!is_admin()) { do_action("track_{$status}_user_registration"); // Priority redirect if (isset($args['redirect_to'])) { exit(wp_redirect(urldecode($args['redirect_to']))); } if ($status == 'approved') { $ultimatemember->user->auto_login($user_id); do_action('um_registration_after_auto_login', $user_id); if (um_user('auto_approve_act') == 'redirect_url' && um_user('auto_approve_url') !== '') { exit(wp_redirect(um_user('auto_approve_url'))); } if (um_user('auto_approve_act') == 'redirect_profile') { exit(wp_redirect(um_user_profile_url())); } } if ($status != 'approved') { if (um_user($status . '_action') == 'redirect_url' && um_user($status . '_url') != '') { exit(wp_redirect(um_user($status . '_url'))); } if (um_user($status . '_action') == 'show_message' && um_user($status . '_message') != '') { $url = $ultimatemember->permalinks->get_current_url(); $url = add_query_arg('message', esc_attr($status), $url); $url = add_query_arg('uid', esc_attr(um_user('ID')), $url); exit(wp_redirect($url)); } } } }
function um_admin_do_action__duplicate_form($action) { global $ultimatemember; if (!is_admin() || !current_user_can('manage_options')) { die; } if (!isset($_REQUEST['post_id']) || !is_numeric($_REQUEST['post_id'])) { die; } $post_id = $_REQUEST['post_id']; $n = array('post_type' => 'um_form', 'post_title' => sprintf(__('Duplicate of %s', 'ultimatemember'), get_the_title($post_id)), 'post_status' => 'publish', 'post_author' => um_user('ID')); $n_id = wp_insert_post($n); $n_fields = get_post_custom($post_id); foreach ($n_fields as $key => $value) { if ($key == '_um_custom_fields') { $the_value = unserialize($value[0]); } else { $the_value = $value[0]; } update_post_meta($n_id, $key, $the_value); } delete_post_meta($n_id, '_um_core'); $url = admin_url('edit.php?post_type=um_form'); $url = add_query_arg('update', 'form_duplicated', $url); exit(wp_redirect($url)); }
function edit_field($key, $data, $rule = false) { global $ultimatemember; $output = null; // get whole field data if (isset($data) && is_array($data)) { $data = $this->get_field($key); extract($data); } if (!isset($data['type'])) { return; } if (isset($data['in_group']) && $data['in_group'] != '' && $rule != 'group') { return; } if ($visibility == 'view') { return; } if (!um_can_view_field($data)) { return; } if (!um_can_edit_field($data)) { return; } // fields that need to be disabled in edit mode (profile) if (in_array($key, array('user_email', 'username', 'user_login', 'user_password')) && $this->editing == true && $this->set_mode == 'profile') { return; } // forbidden in edit mode? if (isset($data['edit_forbidden'])) { return; } // required option if (isset($data['required_opt'])) { $opt = $data['required_opt']; if (um_get_option($opt[0]) != $opt[1]) { return; } } // required user permission if (isset($data['required_perm'])) { if (!um_user($data['required_perm'])) { return; } } // do not show passwords if (isset($ultimatemember->user->preview) && $ultimatemember->user->preview) { if ($data['type'] == 'password') { return; } } /* Begin by field type */ switch ($type) { /* Default: Integration */ default: $mode = isset($this->set_mode) ? $this->set_mode : 'no_mode'; $output .= apply_filters("um_edit_field_{$mode}_{$type}", $output, $data); break; /* Other fields */ /* Other fields */ case 'googlemap': case 'youtube_video': case 'vimeo_video': case 'soundcloud_track': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && isset($this->field_icons) && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input ' . $disabled . ' class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . htmlspecialchars($this->field_value($key, $default, $data)) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Text */ /* Text */ case 'text': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && isset($this->field_icons) && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input ' . $disabled . ' class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . htmlspecialchars($this->field_value($key, $default, $data)) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Password */ /* Password */ case 'password': $original_key = $key; if ($key == 'single_user_password') { $key = $original_key; $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; } else { if ($this->set_mode == 'account' && um_is_core_page('account')) { $key = 'current_' . $original_key; $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label(__('Current Password', 'ultimatemember'), $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; } $key = $original_key; $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if ($this->set_mode == 'account' && um_is_core_page('account') || $this->set_mode == 'password' && um_is_core_page('password-reset')) { $output .= $this->field_label(__('New Password', 'ultimatemember'), $key, $data); } else { if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; if ($this->set_mode != 'login' && isset($data['force_confirm_pass']) && $data['force_confirm_pass'] == 1) { $key = 'confirm_' . $original_key; $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label(sprintf(__('Confirm %s', 'ultimatemember'), $data['label']), $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; } } break; /* URL */ /* URL */ case 'url': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && isset($this->field_icons) && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Date */ /* Date */ case 'date': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && isset($this->field_icons) && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" data-range="' . $range . '" data-years="' . $years . '" data-years_x="' . $years_x . '" data-disabled_weekdays="' . $disabled_weekdays . '" data-date_min="' . $date_min . '" data-date_max="' . $date_max . '" data-format="' . $js_format . '" data-value="' . $this->field_value($key, $default, $data) . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Time */ /* Time */ case 'time': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; if (isset($icon) && $icon && $this->field_icons == 'field') { $output .= '<div class="um-field-icon"><i class="' . $icon . '"></i></div>'; } $output .= '<input class="' . $this->get_class($key, $data) . '" type="' . $input . '" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" placeholder="' . $placeholder . '" data-validate="' . $validate . '" data-key="' . $key . '" data-format="' . $js_format . '" data-intervals="' . $intervals . '" data-value="' . $this->field_value($key, $default, $data) . '" /> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Row */ /* Row */ case 'row': $output .= ''; break; /* Textarea */ /* Textarea */ case 'textarea': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; $output .= '<textarea style="height: ' . $height . ';" class="' . $this->get_class($key, $data) . '" name="' . $key . '" id="' . $key . '" placeholder="' . $placeholder . '">' . $this->field_value($key, $default, $data) . '</textarea> </div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Rating */ /* Rating */ case 'rating': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; $output .= '<div class="um-rating um-raty" id="' . $key . '" data-key="' . $key . '" data-number="' . $data['number'] . '" data-score="' . $this->field_value($key, $default, $data) . '"></div>'; $output .= '</div>'; $output .= '</div>'; break; /* Gap/Space */ /* Gap/Space */ case 'spacing': $output .= '<div class="um-field um-field-spacing' . $classes . '"' . $conditional . ' style="height: ' . $spacing . '"></div>'; break; /* A line divider */ /* A line divider */ case 'divider': $output .= '<div class="um-field um-field-divider' . $classes . '"' . $conditional . ' style="border-bottom: ' . $borderwidth . 'px ' . $borderstyle . ' ' . $bordercolor . '">'; if ($divider_text) { $output .= '<div class="um-field-divider-text"><span>' . $divider_text . '</span></div>'; } $output .= '</div>'; break; /* Single Image Upload */ /* Single Image Upload */ case 'image': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (in_array($key, array('profile_photo', 'cover_photo'))) { $field_value = ''; } else { $field_value = $this->field_value($key, $default, $data); } $output .= '<input type="hidden" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $field_value . '" />'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $modal_label = isset($data['label']) ? $data['label'] : __('Upload Photo', 'ultimatemember'); $output .= '<div class="um-field-area" style="text-align: center">'; if ($this->field_value($key, $default, $data)) { if (!in_array($key, array('profile_photo', 'cover_photo'))) { if (isset($this->set_mode) && $this->set_mode == 'register') { $imgValue = $this->field_value($key, $default, $data); } else { $imgValue = um_user_uploads_uri() . $this->field_value($key, $default, $data); } $img = '<img src="' . $imgValue . '" alt="" />'; } else { $img = ''; } $output .= '<div class="um-single-image-preview show ' . $crop_class . '" data-crop="' . $crop_data . '" data-key="' . $key . '"> <a href="#" class="cancel"><i class="um-icon-close"></i></a>' . $img . ' </div><a href="#" data-modal="um_upload_single" data-modal-size="' . $modal_size . '" data-modal-copy="1" class="um-button um-btn-auto-width">' . __('Change photo', 'ultimatemember') . '</a>'; } else { $output .= '<div class="um-single-image-preview ' . $crop_class . '" data-crop="' . $crop_data . '" data-key="' . $key . '"> <a href="#" class="cancel"><i class="um-icon-close"></i></a> <img src="" alt="" /> </div><a href="#" data-modal="um_upload_single" data-modal-size="' . $modal_size . '" data-modal-copy="1" class="um-button um-btn-auto-width">' . $button_text . '</a>'; } $output .= '</div>'; /* modal hidden */ $output .= '<div class="um-modal-hidden-content">'; $output .= '<div class="um-modal-header"> ' . $modal_label . '</div>'; $output .= '<div class="um-modal-body">'; if (isset($this->set_id)) { $set_id = $this->set_id; $set_mode = $this->set_mode; } else { $set_id = 0; $set_mode = ''; } $output .= '<div class="um-single-image-preview ' . $crop_class . '" data-crop="' . $crop_data . '" data-ratio="' . $ratio . '" data-min_width="' . $min_width . '" data-min_height="' . $min_height . '" data-coord=""><a href="#" class="cancel"><i class="um-icon-close"></i></a><img src="" alt="" /></div>'; $output .= '<div class="um-single-image-upload" data-icon="' . $icon . '" data-set_id="' . $set_id . '" data-set_mode="' . $set_mode . '" data-type="' . $type . '" data-key="' . $key . '" data-max_size="' . $max_size . '" data-max_size_error="' . $max_size_error . '" data-min_size_error="' . $min_size_error . '" data-extension_error="' . $extension_error . '" data-allowed_types="' . $allowed_types . '" data-upload_text="' . $upload_text . '" data-max_files_error="' . $max_files_error . '" data-upload_help_text="' . $upload_help_text . '">' . $button_text . '</div>'; $output .= '<div class="um-modal-footer"> <div class="um-modal-right"> <a href="#" class="um-modal-btn um-finish-upload image disabled" data-key="' . $key . '" data-change="' . __('Change photo', 'ultimatemember') . '" data-processing="' . __('Processing...', 'ultimatemember') . '"> ' . __('Apply', 'ultimatemember') . '</a> <a href="#" class="um-modal-btn alt" data-action="um_remove_modal"> ' . __('Cancel', 'ultimatemember') . '</a> </div> <div class="um-clear"></div> </div>'; $output .= '</div>'; $output .= '</div>'; /* end */ if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Single File Upload */ /* Single File Upload */ case 'file': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; $output .= '<input type="hidden" name="' . $key . $ultimatemember->form->form_suffix . '" id="' . $key . $ultimatemember->form->form_suffix . '" value="' . $this->field_value($key, $default, $data) . '" />'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $modal_label = isset($data['label']) ? $data['label'] : __('Upload Photo', 'ultimatemember'); $output .= '<div class="um-field-area" style="text-align: center">'; if ($this->field_value($key, $default, $data)) { $extension = pathinfo($this->field_value($key, $default, $data), PATHINFO_EXTENSION); $output .= '<div class="um-single-file-preview show" data-key="' . $key . '"> <a href="#" class="cancel"><i class="um-icon-close"></i></a> <div class="um-single-fileinfo"> <a href="' . um_user_uploads_uri() . $this->field_value($key, $default, $data) . '" target="_blank"> <span class="icon" style="background:' . $ultimatemember->files->get_fonticon_bg_by_ext($extension) . '"><i class="' . $ultimatemember->files->get_fonticon_by_ext($extension) . '"></i></span> <span class="filename">' . $this->field_value($key, $default, $data) . '</span> </a> </div> </div><a href="#" data-modal="um_upload_single" data-modal-size="' . $modal_size . '" data-modal-copy="1" class="um-button um-btn-auto-width">' . __('Change file', 'ultimatemember') . '</a>'; } else { $output .= '<div class="um-single-file-preview" data-key="' . $key . '"> </div><a href="#" data-modal="um_upload_single" data-modal-size="' . $modal_size . '" data-modal-copy="1" class="um-button um-btn-auto-width">' . $button_text . '</a>'; } $output .= '</div>'; /* modal hidden */ $output .= '<div class="um-modal-hidden-content">'; $output .= '<div class="um-modal-header"> ' . $modal_label . '</div>'; $output .= '<div class="um-modal-body">'; if (isset($this->set_id)) { $set_id = $this->set_id; $set_mode = $this->set_mode; } else { $set_id = 0; $set_mode = ''; } $output .= '<div class="um-single-file-preview"> <a href="#" class="cancel"><i class="um-icon-close"></i></a> <div class="um-single-fileinfo"> <a href="" target="_blank"> <span class="icon"><i></i></span> <span class="filename"></span> </a> </div> </div>'; $output .= '<div class="um-single-file-upload" data-icon="' . $icon . '" data-set_id="' . $set_id . '" data-set_mode="' . $set_mode . '" data-type="' . $type . '" data-key="' . $key . '" data-max_size="' . $max_size . '" data-max_size_error="' . $max_size_error . '" data-min_size_error="' . $min_size_error . '" data-extension_error="' . $extension_error . '" data-allowed_types="' . $allowed_types . '" data-upload_text="' . $upload_text . '" data-max_files_error="' . $max_files_error . '" data-upload_help_text="' . $upload_help_text . '">' . $button_text . '</div>'; $output .= '<div class="um-modal-footer"> <div class="um-modal-right"> <a href="#" class="um-modal-btn um-finish-upload file disabled" data-key="' . $key . '" data-change="' . __('Change file') . '" data-processing="' . __('Processing...', 'ultimatemember') . '"> ' . __('Save', 'ultimatemember') . '</a> <a href="#" class="um-modal-btn alt" data-action="um_remove_modal"> ' . __('Cancel', 'ultimatemember') . '</a> </div> <div class="um-clear"></div> </div>'; $output .= '</div>'; $output .= '</div>'; /* end */ if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Select dropdown */ /* Select dropdown */ case 'select': $form_key = str_replace('role_select', 'role', $key); $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['allowclear']) && $data['allowclear'] == 0) { $class = 'um-s2'; } else { $class = 'um-s1'; } if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; $output .= '<select name="' . $form_key . '" id="' . $form_key . '" data-validate="' . $validate . '" data-key="' . $key . '" class="' . $this->get_class($key, $data, $class) . '" style="width: 100%" data-placeholder="' . $placeholder . '">'; if (isset($options) && $options == 'builtin') { $options = $ultimatemember->builtin->get($filter); } if (!isset($options)) { $options = $ultimatemember->builtin->get('countries'); } // role field if ($form_key == 'role') { global $wpdb; foreach ($options as $key => $val) { $val = (string) $val; $val = trim($val); $post_id = $wpdb->get_var("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'publish' AND post_type = 'um_role' AND post_title = '{$val}'"); $_role = get_post($post_id); $new_roles[$_role->post_name] = $_role->post_title; wp_reset_postdata(); } $options = $new_roles; } // add an empty option! $output .= '<option value=""></option>'; // add options foreach ($options as $k => $v) { $v = rtrim($v); if (!is_numeric($k) && in_array($form_key, array('role'))) { $option_value = $k; } else { $option_value = $v; } if (isset($options_pair)) { $option_value = $k; } $output .= '<option value="' . $option_value . '" '; if ($this->is_selected($form_key, $option_value, $data)) { $output .= 'selected'; } $output .= '>' . $v . '</option>'; } $output .= '</select>'; $output .= '</div>'; if ($this->is_error($form_key)) { $output .= $this->field_error($this->show_error($form_key)); } $output .= '</div>'; break; /* Multi-Select dropdown */ /* Multi-Select dropdown */ case 'multiselect': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['allowclear']) && $data['allowclear'] == 0) { $class = 'um-s2'; } else { $class = 'um-s1'; } if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; $output .= '<select multiple="multiple" name="' . $key . '[]" id="' . $key . '" data-validate="' . $validate . '" data-key="' . $key . '" class="' . $this->get_class($key, $data, $class) . '" style="width: 100%" data-placeholder="' . $placeholder . '">'; if (isset($options) && $options == 'builtin') { $options = $ultimatemember->builtin->get($filter); } if (!isset($options)) { $options = $ultimatemember->builtin->get('countries'); } // add an empty option! $output .= '<option value=""></option>'; // add options foreach ($options as $k => $v) { $v = rtrim($v); $output .= '<option value="' . $v . '" '; if ($this->is_selected($key, $v, $data)) { $output .= 'selected'; } $output .= '>' . $v . '</option>'; } $output .= '</select>'; $output .= '</div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* Radio */ /* Radio */ case 'radio': $form_key = str_replace('role_radio', 'role', $key); $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; // role field if ($form_key == 'role') { global $wpdb; foreach ($options as $key => $val) { $val = (string) $val; $val = trim($val); $post_id = $wpdb->get_var("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'publish' AND post_type = 'um_role' AND post_title = '{$val}'"); $_role = get_post($post_id); $new_roles[$_role->post_name] = $_role->post_title; wp_reset_postdata(); } $options = $new_roles; } // add options $i = 0; foreach ($options as $k => $v) { $v = rtrim($v); if (!is_numeric($k) && in_array($form_key, array('role'))) { $option_value = $k; } else { $option_value = $v; } $i++; if ($i % 2 == 0) { $col_class = 'right'; } else { $col_class = ''; } if ($this->is_radio_checked($key, $option_value, $data)) { $active = 'active'; $class = "um-icon-android-radio-button-on"; } else { $active = ''; $class = "um-icon-android-radio-button-off"; } $output .= '<label class="um-field-radio ' . $active . ' um-field-half ' . $col_class . '">'; $output .= '<input type="radio" name="' . $form_key . '" value="' . $option_value . '" '; if ($this->is_radio_checked($key, $option_value, $data)) { $output .= 'checked'; } $output .= ' />'; $output .= '<span class="um-field-radio-state"><i class="' . $class . '"></i></span>'; $output .= '<span class="um-field-radio-option">' . $v . '</span>'; $output .= '</label>'; if ($i % 2 == 0) { $output .= '<div class="um-clear"></div>'; } } $output .= '<div class="um-clear"></div>'; $output .= '</div>'; if ($this->is_error($form_key)) { $output .= $this->field_error($this->show_error($form_key)); } $output .= '</div>'; break; /* Checkbox */ /* Checkbox */ case 'checkbox': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '">'; if (isset($data['label'])) { $output .= $this->field_label($label, $key, $data); } $output .= '<div class="um-field-area">'; // add options $i = 0; foreach ($options as $k => $v) { $v = rtrim($v); $i++; if ($i % 2 == 0) { $col_class = 'right'; } else { $col_class = ''; } if ($this->is_selected($key, $v, $data)) { $active = 'active'; $class = "um-icon-android-checkbox-outline"; } else { $active = ''; $class = "um-icon-android-checkbox-outline-blank"; } $output .= '<label class="um-field-checkbox ' . $active . ' um-field-half ' . $col_class . '">'; $output .= '<input type="checkbox" name="' . $key . '[]" value="' . strip_tags($v) . '" '; if ($this->is_selected($key, $v, $data)) { $output .= 'checked'; } $output .= ' />'; $output .= '<span class="um-field-checkbox-state"><i class="' . $class . '"></i></span>'; $output .= '<span class="um-field-checkbox-option">' . $v . '</span>'; $output .= '</label>'; if ($i % 2 == 0) { $output .= '<div class="um-clear"></div>'; } } $output .= '<div class="um-clear"></div>'; $output .= '</div>'; if ($this->is_error($key)) { $output .= $this->field_error($this->show_error($key)); } $output .= '</div>'; break; /* HTML */ /* HTML */ case 'block': $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '"> <div class="um-field-block">' . $content . '</div> </div>'; break; /* Shortcode */ /* Shortcode */ case 'shortcode': $content = str_replace('{profile_id}', um_profile_id(), $content); $output .= '<div class="um-field' . $classes . '"' . $conditional . ' data-key="' . $key . '"> <div class="um-field-shortcode">' . do_shortcode($content) . '</div> </div>'; break; /* Unlimited Group */ /* Unlimited Group */ case 'group': $fields = $this->get_fields_in_group($key); if (!empty($fields)) { $output .= '<div class="um-field-group" data-max_entries="' . $max_entries . '"> <div class="um-field-group-head"><i class="um-icon-plus"></i>' . $label . '</div>'; $output .= '<div class="um-field-group-body"><a href="#" class="um-field-group-cancel"><i class="um-icon-close"></i></a>'; foreach ($fields as $subkey => $subdata) { $output .= $this->edit_field($subkey, $subdata, 'group'); } $output .= '</div>'; $output .= '</div>'; } break; } // Custom filter for field output if (isset($this->set_mode)) { $output = apply_filters("um_{$key}_form_edit_field", $output, $this->set_mode); } return $output; }
function um_members_directory_display($args) { global $ultimatemember; extract($args); if (isset($args['search']) && $args['search'] == 1 && isset($args['must_search']) && $args['must_search'] == 1 && !isset($_REQUEST['um_search'])) { return; } if (um_members('no_users')) { ?> <div class="um-members-none"> <p><?php echo $args['no_users']; ?> </p> </div> <?php } if (um_members('users_per_page')) { ?> <div class="um-members"> <div class="um-gutter-sizer"></div> <?php $i = 0; foreach (um_members('users_per_page') as $member) { $i++; um_fetch_user($member); ?> <div class="um-member <?php echo um_user('account_status'); ?> <?php if ($cover_photos) { echo 'with-cover'; } ?> "> <span class="um-member-status <?php echo um_user('account_status'); ?> "><?php echo um_user('account_status_name'); ?> </span> <?php if ($cover_photos) { if ($ultimatemember->mobile->isTablet()) { $cover_size = 600; } else { $cover_size = 300; } ?> <div class="um-member-cover" data-ratio="<?php echo um_get_option('profile_cover_ratio'); ?> "> <div class="um-member-cover-e"><?php echo um_user('cover_photo', $cover_size); ?> </div> </div> <?php } ?> <?php if ($profile_photo) { $default_size = str_replace('px', '', um_get_option('profile_photosize')); $corner = um_get_option('profile_photocorner'); ?> <div class="um-member-photo radius-<?php echo $corner; ?> "><a href="<?php echo um_user_profile_url(); ?> " title="<?php echo um_user('display_name'); ?> "><?php echo get_avatar(um_user('ID'), $default_size); ?> </a></div> <?php } ?> <div class="um-member-card <?php if (!$profile_photo) { echo 'no-photo'; } ?> "> <?php if ($show_name) { ?> <div class="um-member-name"><a href="<?php echo um_user_profile_url(); ?> " title="<?php echo um_user('display_name'); ?> "><?php echo um_user('display_name', 'html'); ?> </a></div> <?php } ?> <?php do_action('um_members_just_after_name', um_user('ID'), $args); ?> <?php do_action('um_members_after_user_name', um_user('ID'), $args); ?> <?php if ($show_tagline && is_array($tagline_fields)) { foreach ($tagline_fields as $key) { if ($key && um_filtered_value($key)) { $value = um_filtered_value($key); ?> <div class="um-member-tagline"><?php echo $value; ?> </div> <?php } } } ?> <?php if ($show_userinfo) { ?> <div class="um-member-meta-main"> <?php if ($userinfo_animate) { ?> <div class="um-member-more"><a href="#"><i class="um-faicon-angle-down"></i></a></div> <?php } ?> <div class="um-member-meta <?php if (!$userinfo_animate) { echo 'no-animate'; } ?> "> <?php foreach ($reveal_fields as $key) { if ($key && um_filtered_value($key)) { $value = um_filtered_value($key); ?> <div class="um-member-metaline um-member-metaline-<?php echo $key; ?> "><span><strong><?php echo $ultimatemember->fields->get_label($key); ?> :</strong> <?php echo $value; ?> </span></div> <?php } } ?> <?php if ($show_social) { ?> <div class="um-member-connect"> <?php $ultimatemember->fields->show_social_urls(); ?> </div> <?php } ?> </div> <div class="um-member-less"><a href="#"><i class="um-faicon-angle-up"></i></a></div> </div> <?php } ?> </div> </div> <?php um_reset_user_clean(); } // end foreach um_reset_user(); ?> <div class="um-clear"></div> </div> <?php } }
function um_user($data, $attrs = null) { global $ultimatemember; switch ($data) { default: $value = um_profile($data); if ($ultimatemember->validation->is_serialized($value)) { $value = unserialize($value); } if ($data == 'role') { return strtolower($value); } return $value; break; case 'full_name': if (um_user('first_name') && um_user('last_name')) { $full_name = um_user('first_name') . ' ' . um_user('last_name'); } else { $full_name = um_user('display_name'); } $full_name = $ultimatemember->validation->safe_name_in_url($full_name); // update full_name changed if (um_profile($data) !== $full_name) { update_user_meta(um_user('ID'), 'full_name', $full_name); } return $full_name; break; case 'display_name': $op = um_get_option('display_name'); $name = ''; if ($op == 'default') { $name = um_profile('display_name'); } if ($op == 'nickname') { $name = um_profile('nickname'); } if ($op == 'full_name') { if (um_user('first_name') && um_user('last_name')) { $name = um_user('first_name') . ' ' . um_user('last_name'); } else { $name = um_profile($data); } if (!$name) { $name = um_user('user_login'); } } if ($op == 'sur_name') { if (um_user('first_name') && um_user('last_name')) { $name = um_user('last_name') . ' ' . um_user('first_name'); } else { $name = um_profile($data); } } if ($op == 'first_name') { if (um_user('first_name')) { $name = um_user('first_name'); } else { $name = um_profile($data); } } if ($op == 'username') { $name = um_user('user_login'); } if ($op == 'initial_name') { if (um_user('first_name') && um_user('last_name')) { $initial = um_user('last_name'); $name = um_user('first_name') . ' ' . $initial[0]; } else { $name = um_profile($data); } } if ($op == 'initial_name_f') { if (um_user('first_name') && um_user('last_name')) { $initial = um_user('first_name'); $name = $initial[0] . ' ' . um_user('last_name'); } else { $name = um_profile($data); } } if ($op == 'field' && um_get_option('display_name_field') != '') { $fields = array_filter(preg_split('/[,\\s]+/', um_get_option('display_name_field'))); $name = ''; foreach ($fields as $field) { $name .= um_profile($field) . ' '; } } return apply_filters('um_user_display_name_filter', $name, um_user('ID'), $attrs == 'html' ? 1 : 0); break; case 'role_select': case 'role_radio': return $ultimatemember->user->get_role_name(um_user('role')); break; case 'submitted': $array = um_profile($data); if (empty($array)) { return ''; } $array = unserialize($array); return $array; break; case 'password_reset_link': return $ultimatemember->password->reset_url(); break; case 'account_activation_link': return $ultimatemember->permalinks->activate_url(); break; case 'profile_photo': $has_profile_photo = false; if (um_profile('profile_photo')) { $avatar_uri = um_get_avatar_uri(um_profile('profile_photo'), $attrs); $has_profile_photo = true; } else { $avatar_uri = um_get_default_avatar_uri(um_user('ID')); } $avatar_uri = apply_filters('um_user_avatar_url_filter', $avatar_uri, um_user('ID')); if ($avatar_uri) { if (um_get_option('use_gravatars') && !um_user('synced_profile_photo') && !$has_profile_photo) { $avatar_uri = um_get_domain_protocol() . 'gravatar.com/avatar/' . um_user('synced_gravatar_hashed_id'); $avatar_uri = add_query_arg('s', 400, $avatar_uri); if (um_get_option('use_um_gravatar_default_image')) { $avatar_uri = add_query_arg('d', um_get_default_avatar_uri(), $avatar_uri); } } } return '<img src="' . $avatar_uri . '" class="func-um_user gravatar avatar avatar-' . $attrs . ' um-avatar" width="' . $attrs . '" height="' . $attrs . '" alt="" />'; if (!$avatar_uri) { return ''; } break; case 'cover_photo': if (um_profile('cover_photo')) { $cover_uri = um_get_cover_uri(um_profile('cover_photo'), $attrs); } else { $cover_uri = um_get_default_cover_uri(); } if ($cover_uri) { return '<img src="' . $cover_uri . '" alt="" />'; } if (!$cover_uri) { return ''; } break; } }
/** * Fetches title from special fields, like other plugins with special queries. * Used before and has priority over custom fields. * Front end only. * * @since 2.5.2 * * @return string $title Title from Special Field. */ public function title_from_special_fields() { $title = ''; if (false === $this->is_admin()) { if ($this->is_ultimate_member_user_page() && um_is_core_page('user') && um_get_requested_user()) { $title = um_user('display_name'); } } return $title; }
function um_post_registration($user_id, $args) { global $ultimatemember; extract($args); $status = um_user('status'); do_action("um_post_registration_global_hook", $user_id, $args); do_action("um_post_registration_{$status}_hook", $user_id, $args); if (!is_admin()) { do_action("track_{$status}_user_registration"); if ($status == 'approved') { $ultimatemember->user->auto_login($user_id); if (um_user('auto_approve_act') == 'redirect_url' && um_user('auto_approve_url') !== '') { exit(wp_redirect(um_user('auto_approve_url'))); } if (um_user('auto_approve_act') == 'redirect_profile') { exit(wp_redirect(um_user_profile_url())); } } if ($status != 'approved') { if (um_user($status . '_action') == 'redirect_url' && um_user($status . '_url') != '') { exit(wp_redirect(um_user($status . '_url'))); } if (um_user($status . '_action') == 'show_message' && um_user($status . '_message') != '') { $url = um_get_core_page('register'); $url = add_query_arg('message', $status, $url); $url = add_query_arg('uid', um_user('ID'), $url); exit(wp_redirect($url)); } } } }
function um_user($data, $attrs = null) { global $ultimatemember; switch ($data) { default: $value = um_profile($data); if ($ultimatemember->validation->is_serialized($value)) { $value = unserialize($value); } return $value; break; case 'full_name': if (!um_profile($data)) { if (um_user('first_name') && um_user('last_name')) { $full_name = um_user('first_name') . '.' . um_user('last_name'); } else { $full_name = um_user('display_name'); } $full_name = $ultimatemember->validation->safe_name_in_url($full_name); update_user_meta(um_user('ID'), 'full_name', $full_name); return $full_name; } else { return um_profile($data); } break; case 'display_name': $op = um_get_option('display_name'); if ($op == 'full_name') { if (um_user('first_name') && um_user('last_name')) { $name = um_user('first_name') . ' ' . um_user('last_name'); } else { $name = um_profile($data); } } if ($op == 'sur_name') { if (um_user('first_name') && um_user('last_name')) { $name = um_user('last_name') . ', ' . um_user('first_name'); } else { $name = um_profile($data); } } if ($op == 'first_name') { if (um_user('first_name')) { $name = um_user('first_name'); } else { $name = um_profile($data); } } if ($op == 'username') { $name = um_user('user_login'); } if ($op == 'initial_name') { if (um_user('first_name') && um_user('last_name')) { $initial = um_user('last_name'); $name = um_user('first_name') . ' ' . $initial[0]; } else { $name = um_profile($data); } } if ($op == 'initial_name_f') { if (um_user('first_name') && um_user('last_name')) { $initial = um_user('first_name'); $name = $initial[0] . ' ' . um_user('last_name'); } else { $name = um_profile($data); } } if ($op == 'public_name') { $name = um_profile($data); } if ($op == 'field' && um_get_option('display_name_field') != '') { $fields = array_filter(preg_split('/[,\\s]+/', um_get_option('display_name_field'))); $name = ''; foreach ($fields as $field) { $name .= um_profile($field) . ' '; } } return apply_filters('um_user_display_name_filter', $name, um_user('ID'), $attrs == 'html' ? 1 : 0); break; case 'role_select': case 'role_radio': return $ultimatemember->user->get_role_name(um_user('role')); break; case 'submitted': $array = um_profile($data); if (empty($array)) { return ''; } $array = unserialize($array); return $array; break; case 'password_reset_link': return $ultimatemember->password->reset_url(); break; case 'account_activation_link': return $ultimatemember->permalinks->activate_url(); break; case 'profile_photo': if (um_profile('profile_photo')) { $avatar_uri = um_get_avatar_uri(um_profile('profile_photo'), $attrs); } else { $avatar_uri = um_get_default_avatar_uri(); } $avatar_uri = apply_filters('um_user_avatar_url_filter', $avatar_uri, um_user('ID')); if ($avatar_uri) { return '<img src="' . $avatar_uri . '" class="gravatar avatar avatar-' . $attrs . ' um-avatar" width="' . $attrs . '" height="' . $attrs . '" alt="" />'; } if (!$avatar_uri) { return ''; } break; case 'cover_photo': if (um_profile('cover_photo')) { $cover_uri = um_get_cover_uri(um_profile('cover_photo'), $attrs); } else { $cover_uri = um_get_default_cover_uri(); } if ($cover_uri) { return '<img src="' . $cover_uri . '" alt="" />'; } if (!$cover_uri) { return ''; } break; } }