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();
}
Esempio n. 2
0
function um_submit_form_errors_hook_logincheck($args)
{
    global $ultimatemember;
    // Logout if logged in
    if (is_user_logged_in()) {
        wp_logout();
    }
    $user_id = isset($ultimatemember->login->auth_id) ? $ultimatemember->login->auth_id : '';
    um_fetch_user($user_id);
    $status = um_user('account_status');
    // account status
    switch ($status) {
        // If user can't login to site...
        case 'inactive':
        case 'awaiting_admin_review':
        case 'awaiting_email_confirmation':
        case 'rejected':
            um_reset_user();
            exit(wp_redirect(add_query_arg('err', esc_attr($status), $ultimatemember->permalinks->get_current_url())));
            break;
    }
    if (isset($args['form_id']) && $args['form_id'] == $ultimatemember->shortcodes->core_login_form() && $ultimatemember->form->errors && !isset($_POST[$ultimatemember->honeypot])) {
        exit(wp_redirect(um_get_core_page('login')));
    }
}
/**
 * Overrides password changed notification
 * 
 */
function um_send_password_change_email($args)
{
    global $ultimatemember;
    um_fetch_user($user_id);
    $ultimatemember->user->password_changed();
    um_reset_user();
    return false;
}
Esempio n. 4
0
function um_dynamic_user_profile_pagetitle($title, $sep = '')
{
    global $paged, $page, $ultimatemember;
    $profile_title = um_get_option('profile_title');
    if (um_is_core_page('user') && um_get_requested_user()) {
        um_fetch_user(um_get_requested_user());
        $profile_title = $ultimatemember->mail->convert_tags($profile_title);
        $title = $profile_title;
        um_reset_user();
    }
    return $title;
}
function um_add_custom_message_to_menu($items, $args)
{
    global $ultimatemember;
    // this feature required logged in user
    if (!is_user_logged_in()) {
        return $items;
    }
    um_fetch_user(get_current_user_id());
    $items = $ultimatemember->shortcodes->convert_user_tags($items);
    um_reset_user();
    return $items;
}
Esempio n. 6
0
 function listen_to_password_reset_uri()
 {
     global $ultimatemember;
     if (isset($_REQUEST['act']) && $_REQUEST['act'] == 'reset_password' && isset($_REQUEST['hash']) && strlen($_REQUEST['hash']) == 40 && isset($_REQUEST['user_id']) && is_numeric($_REQUEST['user_id'])) {
         um_fetch_user($_REQUEST['user_id']);
         if ($_REQUEST['hash'] != um_user('reset_pass_hash')) {
             wp_die(__('This is not a valid hash, or it has expired.', 'ultimatemember'));
         }
         $ultimatemember->user->profile['reset_pass_hash_token'] = current_time('timestamp');
         $ultimatemember->user->update_usermeta_info('reset_pass_hash_token');
         $this->change_password = true;
         um_reset_user();
     }
 }
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;
}
Esempio n. 9
0
 function activate_account_via_email_link()
 {
     global $ultimatemember;
     if (isset($_REQUEST['act']) && $_REQUEST['act'] == 'activate_via_email' && isset($_REQUEST['hash']) && strlen($_REQUEST['hash']) == 40 && isset($_REQUEST['user_id']) && is_numeric($_REQUEST['user_id'])) {
         // valid token
         um_fetch_user($_REQUEST['user_id']);
         if (um_user('account_status') != 'awaiting_email_confirmation') {
             wp_die('The activation link you used is invalid or has expired.');
         }
         if ($_REQUEST['hash'] != um_user('account_secret_hash')) {
             wp_die('The secret key provided does not match this one for the user.');
         }
         $ultimatemember->user->approve();
         $redirect = um_user('url_email_activate') ? um_user('url_email_activate') : um_get_core_page('login', 'account_active');
         um_reset_user();
         exit(wp_redirect($redirect));
     }
 }
Esempio n. 10
0
 function activate_account_via_email_link()
 {
     global $ultimatemember;
     if (isset($_REQUEST['act']) && $_REQUEST['act'] == 'activate_via_email' && isset($_REQUEST['hash']) && strlen($_REQUEST['hash']) == 40 && isset($_REQUEST['user_id']) && is_numeric($_REQUEST['user_id'])) {
         // valid token
         $user_id = absint($_REQUEST['user_id']);
         delete_option("um_cache_userdata_{$user_id}");
         um_fetch_user($user_id);
         if (um_user('account_status') != 'awaiting_email_confirmation') {
             wp_die('The activation link you used is invalid or has expired.');
         }
         if (strtolower($_REQUEST['hash']) !== strtolower(um_user('account_secret_hash'))) {
             wp_die('The secret key provided does not match this one for the user.');
         }
         $ultimatemember->user->approve();
         $redirect = um_user('url_email_activate') ? um_user('url_email_activate') : um_get_core_page('login', 'account_active');
         $login = (bool) um_user('login_email_activate');
         // log in automatically
         if (!is_user_logged_in() && $login) {
             $user = get_userdata($user_id);
             $user_id = $user->ID;
             // update wp user
             wp_set_current_user($user_id, $user_login);
             wp_set_auth_cookie($user_id);
             ob_start();
             do_action('wp_login', $user_login);
             ob_end_clean();
         }
         um_reset_user();
         do_action('um_after_email_confirmation', $user_id);
         exit(wp_redirect($redirect));
     }
 }
 function load($args)
 {
     global $ultimatemember;
     ob_start();
     $defaults = array();
     $args = wp_parse_args($args, $defaults);
     // when to not continue
     $this->form_id = isset($args['form_id']) ? $args['form_id'] : null;
     if (!$this->form_id) {
         return;
     }
     $this->form_status = get_post_status($this->form_id);
     if ($this->form_status != 'publish') {
         return;
     }
     // get data into one global array
     $post_data = $ultimatemember->query->post_data($this->form_id);
     $args = apply_filters('um_pre_args_setup', $post_data);
     if (!isset($args['template'])) {
         $args['template'] = '';
     }
     if (isset($post_data['template']) && $post_data['template'] != $args['template']) {
         $args['template'] = $post_data['template'];
     }
     if (!$this->template_exists($args['template'])) {
         $args['template'] = $post_data['mode'];
     }
     if (!isset($post_data['template'])) {
         $post_data['template'] = $post_data['mode'];
     }
     $args = array_merge($post_data, $args);
     if (isset($args['use_globals']) && $args['use_globals'] == 1) {
         $args = array_merge($args, $this->get_css_args($args));
     } else {
         $args = array_merge($this->get_css_args($args), $args);
     }
     // filter for arguments
     $args = apply_filters('um_shortcode_args_filter', $args);
     extract($args, EXTR_SKIP);
     // for profiles only
     if ($mode == 'profile' && um_profile_id() && isset($args['role']) && $args['role'] && $args['role'] != $ultimatemember->query->get_role_by_userid(um_profile_id())) {
         return;
     }
     // start loading the template here
     do_action("um_pre_{$mode}_shortcode", $args);
     do_action("um_before_form_is_loaded", $args);
     do_action("um_before_{$mode}_form_is_loaded", $args);
     $this->template_load($template, $args);
     $this->dynamic_css($args);
     if (um_get_requested_user() || $mode == 'logout') {
         um_reset_user();
     }
     do_action('um_after_everything_output');
     $output = ob_get_contents();
     ob_end_clean();
     return $output;
 }
Esempio n. 12
0
function um_force_admin_bar()
{
    um_reset_user();
}
Esempio n. 13
0
								</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>
Esempio n. 14
0
function um_get_display_name($user_id)
{
    um_fetch_user($user_id);
    $name = um_user('display_name');
    um_reset_user();
    return $name;
}
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 
    }
}
Esempio n. 16
0
function um_admin_do_action__user_action($action)
{
    global $ultimatemember;
    if (!is_admin() || !current_user_can('edit_users')) {
        die;
    }
    if (!isset($_REQUEST['sub'])) {
        die;
    }
    if (!isset($_REQUEST['user_id'])) {
        die;
    }
    um_fetch_user($_REQUEST['user_id']);
    $subaction = $_REQUEST['sub'];
    do_action("um_admin_user_action_hook", $subaction);
    do_action("um_admin_user_action_{$subaction}_hook");
    um_reset_user();
    wp_redirect(add_query_arg('update', 'user_updated', admin_url('?page=ultimatemember')));
    exit;
}
function um_submit_form_errors_hook_logincheck($args)
{
    global $ultimatemember;
    // Logout if logged in
    if (is_user_logged_in()) {
        wp_logout();
    }
    $user_id = isset($ultimatemember->login->auth_id) ? $ultimatemember->login->auth_id : '';
    um_fetch_user($user_id);
    $status = um_user('account_status');
    // account status
    switch ($status) {
        // If user can't login to site...
        case 'inactive':
        case 'awaiting_admin_review':
        case 'awaiting_email_confirmation':
        case 'rejected':
            um_reset_user();
            exit(wp_redirect(add_query_arg('err', $status, $ultimatemember->permalinks->get_current_url())));
            break;
    }
}
Esempio n. 18
0
 public function get_author_name($comment)
 {
     if (class_exists('UM_API') && isset($comment->user_id) && $comment->user_id) {
         um_fetch_user($comment->user_id);
         $author_name = um_user('display_name');
         um_reset_user();
     } else {
         if (isset($comment->user_id) && $comment->user_id) {
             $author_name = get_the_author_meta('display_name', $comment->user_id);
             $author_name = $author_name ? $author_name : get_the_author_meta('user_login', $comment->user_id);
         } else {
             $author_name = $comment->comment_author ? $comment->comment_author : __('Anonymous', WC_Core::$TEXT_DOMAIN);
         }
     }
     return $author_name;
 }
function um_access_profile($user_id)
{
    if (!um_is_myprofile() && um_is_core_page('user') && !current_user_can('edit_users')) {
        um_fetch_user($user_id);
        if (!in_array(um_user('account_status'), array('approved'))) {
            um_redirect_home();
        }
        um_reset_user();
    }
}
function um_profile_dynamic_meta_desc()
{
    global $ultimatemember;
    if (um_is_core_page('user') && um_get_requested_user()) {
        um_fetch_user(um_get_requested_user());
        $content = um_convert_tags(um_get_option('profile_desc'));
        $user_id = um_user('ID');
        $url = um_user_profile_url();
        if (um_profile('profile_photo')) {
            $avatar = um_user_uploads_uri() . um_profile('profile_photo');
        } else {
            $avatar = um_get_default_avatar_uri();
        }
        um_reset_user();
        ?>

			<meta name="description" content="<?php 
        echo $content;
        ?>
">

			<meta property="og:title" content="<?php 
        echo um_get_display_name($user_id);
        ?>
" />
			<meta property="og:type" content="article" />
			<meta property="og:image" content="<?php 
        echo $avatar;
        ?>
" />
			<meta property="og:url" content="<?php 
        echo $url;
        ?>
" />
			<meta property="og:description" content="<?php 
        echo $content;
        ?>
" />

		<?php 
    }
}