Recent Changes

This commit is contained in:
ultimatemember
2015-01-06 00:38:33 +02:00
parent 22880e5ae6
commit b0d42ad4c8
24 changed files with 424 additions and 288 deletions
+8 -14
View File
@@ -32,6 +32,7 @@
font-weight: 700;
font-size: 12px;
margin-left: 10px;
display: none;
}
.um-admin-dash-count.count-0 {background: #ddd !important}
.um-admin-dash-count.red {background:#C74A4A}
@@ -139,7 +140,7 @@
.um-admin-dash-main {
margin-left: 201px;
border-left: 1px solid #D8D8D8;
padding: 0 30px;
padding: 0 30px 30px 30px;
box-shadow: 0px 1px 0px #FFF inset;
min-height: 300px;
}
@@ -174,9 +175,10 @@
*/
.um-admin-dash-two-col .um-admin-dash-col {
float: left;
display: inline-block;
width: 42%;
margin-right: 4%;
vertical-align: top;
}
.um-admin-dash-col a:hover {text-decoration: underline}
@@ -210,25 +212,17 @@
.um-admin-dash-info {
display: inline-block;
width: 130px;
width: 110px;
margin-right: 10px;
}
.um-admin-dash-meta {
display: inline-block;
width: 120px;
width: 100px;
margin-right: 10px;
}
.um-admin-dash-more {
display: inline-block;
}
/*
- Colorful user status
*/
.um-status-awaiting_admin_review {color: #C74A4A}
.um-status-approved {color: #7ACF58}
.um-status-inactive {color: #888}
.um-status-rejected {color: #aaa}
color: #aaa;
}
-35
View File
@@ -47,41 +47,6 @@
.um-nav-mode {margin-top:10px}
.um-nav-roles {display: none;margin-top:5px}
/*
- Admin notice
*/
.um-admin-notice {
font-size: 14px !important;
color: #fff;
border-radius: 0;
margin: 40px 30px 0 0;
padding: 20px;
background: #3ba1da url(../img/logo-header.png) no-repeat 20px center;
border-radius: 5px;
}
.um-admin-notice div {
padding: 0 0 0 80px;
}
.um-admin-notice a {
text-decoration: none;
color: #3ba1da;
background: #fff;
margin: 0 0 0 10px;
border-radius: 5px;
display: inline-block;
padding: 8px 15px;
}
.um-admin-notice a:hover {color:#356e8e}
.um-admin-notice a.um-admin-notice-alt {
background: #356e8e;
color: #8bbbd5;
}
.um-admin-notice a.um-admin-notice-alt:hover {color: #fff}
/*
- jQuery Tooltips
*/
+10 -8
View File
@@ -23,6 +23,16 @@
background: #3ba1da url(../img/logo_small.png) no-repeat center 0px !important;
}
.um-about-wrap a.button-primary {
height: 46px;
line-height: 46px;
padding: 0 20px !important;
font-size: 14px;
border: none;
}
.um-about-wrap a {text-decoration: none}
/*
- General
*/
@@ -78,14 +88,6 @@ body.um-admin-modal-open {
color: #fff;
}
.um-admin a.button,
.um-admin input.button {
background: #f9f9f9 !important;
box-shadow: none !important;
color: #777;
border-radius: 2px;
}
.um-admin a.button i,
.um-admin a.button-primary i {
font-size: 15px !important;
-1
View File
@@ -35,7 +35,6 @@
.um-admin-modal {
border-radius: 3px;
background: #fff;
box-shadow: 0 4px 10px #111;
position: fixed;
top: 50% !important;
left: 50% !important;
+11
View File
@@ -1,5 +1,16 @@
<?php
/***
*** @Hide registration notice
***/
add_action('um_admin_do_action__um_can_register_notice', 'um_admin_do_action__um_can_register_notice');
function um_admin_do_action__um_can_register_notice( $action ){
global $ultimatemember;
if ( !is_admin() || !current_user_can('manage_options') ) die();
update_option( $action, 1 );
exit( wp_redirect( remove_query_arg('um_adm_action') ) );
}
/***
*** @Opt-in tracking
***/
+26 -7
View File
@@ -4,19 +4,38 @@ class UM_Admin_Notices {
function __construct() {
add_action('admin_notices', array(&$this, 'admin_notices'), 10);
add_action('admin_notices', array(&$this, 'main_notices'), 1);
add_action('admin_notices', array(&$this, 'show_update_messages'), 10);
}
/***
*** @For core admin notices
*** @show main notices
***/
function admin_notices(){
function main_notices(){
$hide_notice = get_option('um_can_register_notice');
if ( !get_option('users_can_register') && !$hide_notice ) {
echo '<div class="updated" style="border-color: #3ba1da;"><p>';
echo sprintf(__( 'Registration is disabled. Please go to the <a href="%s">general settings</a> page in the WordPress admin and select anyone can register. <a href="%s">Hide this notice</a>', 'ultimatemember' ), admin_url('options-general.php'), add_query_arg('um_adm_action', 'um_can_register_notice') );
echo '</p></div>';
}
}
/***
*** @updating users
***/
function show_update_messages(){
if ( !isset($_REQUEST['update']) ) return;
$update = $_REQUEST['update'];
switch($update) {
case 'user_updated':
@@ -36,9 +55,9 @@ class UM_Admin_Notices {
if ( !empty( $messages ) ) {
foreach( $messages as $message ) {
if ( isset($message['err_content'])) {
echo '<div id="message" class="error"><p>' . $message['err_content'] . '</p></div>';
echo '<div class="error"><p>' . $message['err_content'] . '</p></div>';
} else {
echo '<div id="message" class="updated"><p>' . $message['content'] . '</p></div>';
echo '<div class="updated" style="border-color: #3ba1da;"><p>' . $message['content'] . '</p></div>';
}
}
}
+1 -1
View File
@@ -146,7 +146,7 @@ class UM_Admin_Tracking {
$optin_url = add_query_arg( 'um_adm_action', 'opt_into_tracking' );
$optout_url = add_query_arg( 'um_adm_action', 'opt_out_of_tracking' );
echo '<div class="updated"><p>';
echo '<div class="updated" style="border-color: #3ba1da;"><p>';
echo __( 'Help us improve Ultimate Members compatibility with other plugins and themes by allowing us to track non-sensitive data on your site. Click <a href="http://ultimatemember.com/tracking/">here</a> to see what data we track.', 'ultimatemember' );
+3 -16
View File
@@ -1,5 +1,5 @@
<?php include_once um_path . 'admin/templates/about_header.php'; ?>
<?php global $ultimatemember; include_once um_path . 'admin/templates/about_header.php'; ?>
<div class="changelog headline-feature dfw">
<h2>Introducing Ultimate Member</h2>
@@ -68,20 +68,7 @@
</div>
</div>
<hr />
<div class="return-to-dashboard">
<a href="<?php echo admin_url('admin.php?page=ultimatemember'); ?>">Go to Plugin Dashboard &rarr;</a>
<div class="alignright">
<?php global $reduxConfig; foreach ( $reduxConfig->args['share_icons'] as $k => $arr ) { ?><a href="<?php echo $arr['url']; ?>" class="um-about-icon um-admin-tipsy-n" title="<?php echo $arr['title']; ?>" target="_blank"><i class="<?php echo $arr['icon']; ?>"></i></a><?php } ?>
</div>
</div>
</div>
</div>
<?php include_once um_path . 'admin/templates/about_footer.php'; ?>
+15
View File
@@ -0,0 +1,15 @@
<hr />
<div class="return-to-dashboard">
<a href="<?php echo admin_url('admin.php?page=ultimatemember'); ?>">Go to Plugin Dashboard &rarr;</a>
<div class="alignright">
<?php global $reduxConfig; foreach ( $reduxConfig->args['share_icons'] as $k => $arr ) { ?><a href="<?php echo $arr['url']; ?>" class="um-about-icon um-admin-tipsy-n" title="<?php echo $arr['title']; ?>" target="_blank"><i class="<?php echo $arr['icon']; ?>"></i></a><?php } ?>
</div>
</div>
</div>
+95 -8
View File
@@ -2,9 +2,9 @@
<div class="um-admin-dash-col">
<h3>Latest 5 Users</h3>
<h3>Recent Members</h3>
<?php foreach( $ultimatemember->query->get_recent_users() as $user_id ) { um_fetch_user( $user_id ); ?>
<?php foreach( $ultimatemember->query->get_users_by_status('approved') as $user_id ) { um_fetch_user( $user_id ); ?>
<div class="um-admin-dash-item">
@@ -17,11 +17,11 @@
</div>
<div class="um-admin-dash-meta">
<?php echo date( "j M Y", strtotime( um_user('user_registered') ) ); ?>
<?php echo date( "j M H:i", strtotime( um_user('user_registered') ) ); ?>
</div>
<div class="um-admin-dash-more um-status-<?php echo um_user('account_status'); ?>">
<?php echo um_user('account_status_name'); ?>
<div class="um-admin-dash-more">
</div>
</div>
@@ -32,8 +32,8 @@
<div class="um-admin-dash-col">
<?php $users = $ultimatemember->query->get_users_by_meta('awaiting_admin_review'); ?>
<h3>Users Awaiting Review<span class="um-admin-dash-count red count-<?php echo um_notify('awaiting_admin_review'); ?>"><?php echo um_notify('awaiting_admin_review'); ?></span></h3>
<?php $users = $ultimatemember->query->get_users_by_status('awaiting_admin_review'); ?>
<h3>Users Awaiting Review<span class="um-admin-dash-count red count-0">0</span></h3>
<?php foreach( $users as $user_id ) { um_fetch_user( $user_id ); ?>
@@ -65,7 +65,7 @@
</div>
<div class="um-admin-dash-more">
<a href="<?php echo $ultimatemember->permalinks->admin_act_url('user_action','um_approve_membership'); ?>" class="ok">Approve</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href="<?php echo $ultimatemember->permalinks->admin_act_url('user_action','um_reject_membership'); ?>" class="red">Reject</a>
</div>
</div>
@@ -78,4 +78,91 @@
</div>
</div>
<div class="um-admin-dash-two-col">
<div class="um-admin-dash-col">
<?php $users = $ultimatemember->query->get_users_by_status('awaiting_email_confirmation'); ?>
<h3>Pending e-mail confirmation<span class="um-admin-dash-count red count-0">0</span></h3>
<?php foreach( $users as $user_id ) { um_fetch_user( $user_id ); ?>
<div class="um-admin-dash-item">
<div class="um-admin-dash-thumb">
<a href="<?php echo um_user_profile_url(); ?>" target="_blank"><?php echo um_user('profile_photo', 30 ); ?></a>
</div>
<div class="um-admin-dash-info">
<a href="<?php echo um_user_profile_url(); ?>" target="_blank"><?php echo um_user('display_name'); ?></a>
</div>
<div class="um-admin-dash-meta">
<?php echo date( "j M Y", strtotime( um_user('user_registered') ) ); ?>
</div>
<div class="um-admin-dash-more">
</div>
</div>
<?php um_reset_user(); } ?>
<?php if ( !$users ) { ?>
<div class="um-admin-dash-item"><?php _e('No users are awaiting e-mail validation yet.','ultimatemember'); ?></div>
<?php } ?>
</div>
<div class="um-admin-dash-col">
<?php $users = $ultimatemember->query->get_users_by_status('inactive'); ?>
<h3>Recently Deactivated<span class="um-admin-dash-count red count-0">0</span></h3>
<?php foreach( $users as $user_id ) { um_fetch_user( $user_id ); ?>
<div class="um-admin-dash-item">
<div class="um-admin-dash-thumb">
<a href="<?php echo um_user_profile_url(); ?>" target="_blank"><?php echo um_user('profile_photo', 30 ); ?></a>
</div>
<div class="um-admin-dash-info">
<a href="<?php echo um_user_profile_url(); ?>" target="_blank"><?php echo um_user('display_name'); ?></a>
</div>
<div class="um-admin-dash-meta">
<?php
if ( um_user('submitted') ) {
echo '<a href="#" class="um-admin-tipsy-n" data-modal="UM_preview_registration" data-modal-size="smaller" data-dynamic-content="um_admin_review_registration" data-arg1="'.$user_id.'" data-arg2="edit_registration" title="Review/update registration info">Review details</a>';
} else {
echo '<em>No information available</em>';
}
?>
</div>
<div class="um-admin-dash-more">
</div>
</div>
<?php um_reset_user(); } ?>
<?php if ( !$users ) { ?>
<div class="um-admin-dash-item"><?php _e('No users have been deactivated recently.','ultimatemember'); ?></div>
<?php } ?>
</div>
</div>
+64 -2
View File
@@ -1,4 +1,66 @@
<?php include_once um_path . 'admin/templates/about_header.php'; ?>
<?php global $ultimatemember; include_once um_path . 'admin/templates/about_header.php'; ?>
</div>
<div class="changelog headline-feature dfw">
<h2>Getting Started</h2>
<div class="feature-section">
<p>Ultimate Member has been designed to be as easy to use as possible and you shouldnt run into any difficulties. However, the plugin contains lots of different elements so we have created the following page to help you get started with Ultimate Member.</p>
</div>
</div>
<hr />
<div class="changelog feature-list">
<div class="feature-section col two-col">
<div>
<h4>Automatically installed pages</h4>
<p>Upon activation the plugin will install 7 core pages. These pages are required for the plugin to function correctly and cannot be deleted.</p>
<p>
<ul>
<li><a href="<?php echo um_get_core_page('register'); ?>" target="_blank">Register</a></li>
<li><a href="<?php echo um_get_core_page('login'); ?>" target="_blank">Login</a></li>
<li><a href="<?php echo um_get_core_page('user'); ?>" target="_blank">User</a></li>
<li><a href="<?php echo um_get_core_page('members'); ?>" target="_blank">Members</a></li>
<li><a href="<?php echo um_get_core_page('account'); ?>" target="_blank">Account</a></li>
<li><a href="<?php echo admin_url('post.php?post=' . $ultimatemember->permalinks->core['logout'] . '&action=edit'); ?>" target="_blank">Logout</a></li>
<li><a href="<?php echo um_get_core_page('password-reset'); ?>" target="_blank">Password Reset</a></li>
</ul>
</p>
</div>
<div class="last-feature">
<h4>Getting started</h4>
<p>The plugin has several different elements in the WordPress admin that allow you to customize your community/membership site:</p>
<p>
<ul>
<li><a href="<?php echo admin_url('admin.php?page=ultimatemember'); ?>" target="_blank">Dashboard</a></li>
<li><a href="<?php echo admin_url('admin.php?page=um_options'); ?>" target="_blank">Settings</a></li>
<li><a href="<?php echo admin_url('edit.php?post_type=um_form'); ?>" target="_blank">Forms</a></li>
<li><a href="<?php echo admin_url('edit.php?post_type=um_role'); ?>" target="_blank">Member Levels</a></li>
<li><a href="<?php echo admin_url('edit.php?post_type=um_directory'); ?>" target="_blank">Member Directories</a></li>
</ul>
</p>
</div>
</div>
</div>
<hr />
<div class="changelog headline-feature dfw">
<h2>Need more help?</h2>
<div class="feature-section">
<p>If you want to learn more about Ultimate Member youll need to register on our website where you will be able to interact and get help from other Ultimate Member users via our community forum and also be able to access other useful resources including the plugins documentation.</p>
<p style="text-align:center"><a href="http://ultimatemember.com/community-forum/" target="_blank" class="button button-primary">Join the Ultimate Member Community</a></p>
</div>
</div>
<?php include_once um_path . 'admin/templates/about_footer.php'; ?>
+3 -3
View File
@@ -179,8 +179,8 @@
.um-member.with-cover .um-member-photo {padding-top: 0}
.um-member.with-cover .um-member-photo img {
width: 100px;
height: 100px;
width: 90px;
height: 90px;
position: relative;
top: -35px;
margin-bottom: -45px !important;
@@ -205,7 +205,7 @@
.um-member-name a {
font-size: 16px;
line-height: 26px;
color: #666;
color: #444;
font-weight: 700;
}
+3 -3
View File
@@ -170,7 +170,7 @@ div.uimob340 .um-search .um-search-submit .um-button {
}
div.uimob340 .um-member {width: 100%}
div.uimob340 .um-gutter-sizer {width: 0px}
div.uimob340 .um-gutter-sizer {width: 0px}
div.uimob340 .um-account-main {
float: none;
@@ -465,7 +465,7 @@ div.uimob800 .um-profile-photo-overlay
}
div.uimob800 .um-member {width: 48%}
div.uimob800 .um-gutter-sizer {width: 4%}
div.uimob800 .um-gutter-sizer {width: 4%}
/********************************************/
@@ -510,7 +510,7 @@ div.uimob960 .um-search .um-search-submit .um-button {
div.uimob960 .um-search .um-search-submit .um-button.um-alt {float: right}
div.uimob960 .um-member {width: 48%}
div.uimob960 .um-gutter-sizer {width: 4%}
div.uimob960 .um-gutter-sizer {width: 4%}
/************************************************/
-18
View File
@@ -88,24 +88,6 @@
.um-col-133 {float: right;width: 30%;min-height: 1px;height: auto;}
#wp-admin-bar-um_parent .ab-icon:before{
font-family: "dashicons" !important;
content: "\f110" !important;
top: 3px !important;
}
@media screen and (max-width: 782px) {
#wpadminbar li#wp-admin-bar-um_parent {
display: block;
}
}
@media screen and (max-width: 600px) {
#wpadminbar li#wp-admin-bar-um_parent {
display: none;
}
}
/*
- Font Icons
*/
+74 -15
View File
@@ -1,10 +1,71 @@
<?php
/***
*** @Error handling: blocklist
*** @Error handling: Registering
***/
add_action('um_submit_form_errors_hook__blacklist', 'um_submit_form_errors_hook__blacklist', 10);
function um_submit_form_errors_hook__blacklist($args){
add_action('um_submit_form_errors_hook__registration', 'um_submit_form_errors_hook__registration', 10);
function um_submit_form_errors_hook__registration($args){
global $ultimatemember;
$can_register = get_option('users_can_register');
if ( !$can_register ) {
exit( wp_redirect( add_query_arg('err', 'registration_disabled') ) );
}
}
/***
*** @Error handling: blocked emails
***/
add_action('um_submit_form_errors_hook__blockedemails', 'um_submit_form_errors_hook__blockedemails', 10);
function um_submit_form_errors_hook__blockedemails($args){
global $ultimatemember;
$emails = um_get_option('blocked_emails');
if ( !$emails )
return;
$emails = array_map("rtrim", explode("\n", $emails));
if ( isset( $args['user_email'] ) && is_email( $args['user_email'] ) ) {
if ( in_array( $args['user_email'], $emails ) )
exit( wp_redirect( add_query_arg('err', 'blocked_email') ) );
}
if ( isset( $args['username'] ) && is_email( $args['username'] ) ) {
if ( in_array( $args['username'], $emails ) )
exit( wp_redirect( add_query_arg('err', 'blocked_email') ) );
}
}
/***
*** @Error handling: blocked IPs
***/
add_action('um_submit_form_errors_hook__blockedips', 'um_submit_form_errors_hook__blockedips', 10);
function um_submit_form_errors_hook__blockedips($args){
global $ultimatemember;
$ips = um_get_option('blocked_ips');
if ( !$ips )
return;
$ips = array_map("rtrim", explode("\n", $ips));
$user_ip = $_SERVER['REMOTE_ADDR'];
foreach($ips as $ip) {
$ip = str_replace('*','',$ip);
if (strpos($user_ip, $ip) === 0) {
exit( wp_redirect( add_query_arg('err', 'blocked_ip') ) );
}
}
}
/***
*** @Error handling: blocked words during sign up
***/
add_action('um_submit_form_errors_hook__blockedwords', 'um_submit_form_errors_hook__blockedwords', 10);
function um_submit_form_errors_hook__blockedwords($args){
global $ultimatemember;
$form_id = $args['form_id'];
@@ -12,22 +73,15 @@
$fields = unserialize( $args['custom_fields'] );
$words = um_get_option('blocked_words');
if ( $words != '' ) {
$words = array_map("rtrim", explode("\n", $words));
foreach( $fields as $key => $array ) {
if ( isset($array['validate']) && in_array( $array['validate'], array('unique_username','unique_email','unique_username_or_email') ) ) {
if ( in_array( $args[$key], $words ) ) {
if ( preg_grep( "/".$args[$key]."/i" , $words ) ) {
$ultimatemember->form->add_error( $key, __('You are not allowed to use this word as your username.') );
}
}
}
}
@@ -47,17 +101,22 @@
$fields = unserialize( $args['custom_fields'] );
if ( $mode == 'login' ) {
if ( $mode == 'register' ){
do_action("um_submit_form_errors_hook__registration", $args );
}
do_action('um_submit_form_errors_hook_login', $args );
do_action("um_submit_form_errors_hook__blockedips", $args );
do_action("um_submit_form_errors_hook__blockedemails", $args );
if ( $mode == 'login' ) {
do_action('um_submit_form_errors_hook_login', $args );
do_action('um_submit_form_errors_hook_logincheck', $args );
} else {
do_action('um_submit_form_errors_hook_', $args );
do_action("um_submit_form_errors_hook__blacklist", $args );
do_action("um_submit_form_errors_hook__blockedwords", $args );
}
+14 -6
View File
@@ -190,9 +190,7 @@
}
if ( um_members('users_per_page') ) {
$default_size = str_replace( 'px', '', um_get_option('profile_photosize') );
?>
<div class="um-members">
@@ -205,13 +203,23 @@
<span class="um-member-status <?php echo um_user('account_status'); ?>"><?php echo um_user('account_status_name'); ?></span>
<?php if ($cover_photos) { ?>
<?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', 300); ?></div>
<div class="um-member-cover-e"><?php echo um_user('cover_photo', $cover_size); ?></div>
</div>
<?php } ?>
<?php if ($profile_photo) { ?>
<?php if ($profile_photo) { $default_size = str_replace( 'px', '', um_get_option('profile_photosize') ); ?>
<div class="um-member-photo"><a href="<?php echo um_user_profile_url(); ?>"><?php echo um_user('profile_photo', $default_size ); ?></a></div>
<?php } ?>
+19 -2
View File
@@ -50,8 +50,12 @@
global $ultimatemember;
extract($args);
$output = '';
if ( !get_option('users_can_register') && $mode == 'register' ) {
$err = __('Registration is currently disabled','ultimatemember');
}
if ( isset( $_REQUEST['updated'] ) && !empty( $_REQUEST['updated'] ) ) {
if ( isset( $_REQUEST['updated'] ) && !empty( $_REQUEST['updated'] ) && !$ultimatemember->form->errors ) {
switch( $_REQUEST['updated'] ) {
case 'password_changed':
$success = __('You have successfully changed your password.','ultimatemember');
@@ -59,8 +63,17 @@
}
}
if ( isset( $_REQUEST['err'] ) && !empty( $_REQUEST['err'] ) ) {
if ( isset( $_REQUEST['err'] ) && !empty( $_REQUEST['err'] ) && !$ultimatemember->form->errors ) {
switch( $_REQUEST['err'] ) {
case 'registration_disabled':
$err = __('Registration is currently disabled','ultimatemember');
break;
case 'blocked_email':
$err = __('This email address has been blocked.','ultimatemember');
break;
case 'blocked_ip':
$err = __('Your IP address has been blocked.','ultimatemember');
break;
case 'inactive':
$err = __('Your account has been disabled.','ultimatemember');
break;
@@ -80,6 +93,10 @@
$output .= '<p class="um-notice err">' . $err . '</p>';
}
if ( isset( $success ) ) {
$output .= '<p class="um-notice success">' . $success . '</p>';
}
echo $output;
}
+33 -13
View File
@@ -65,13 +65,17 @@
<?php
if ( $ultimatemember->fields->editing ) {
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-cover', 'click', array(
$items = array(
'<a href="#" class="um-manual-trigger" data-parent=".um-cover" data-child=".um-btn-auto-width">'.__('Change cover photo','ultimatemember').'</a>',
'<a href="#" class="um-reset-cover-photo" data-user_id="'.um_profile_id().'">'.__('Remove','ultimatemember').'</a>',
'<a href="#" class="um-dropdown-hide">'.__('Cancel','ultimatemember').'</a>',
) );
);
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-cover', 'click', $items );
}
?>
<?php $ultimatemember->fields->add_hidden_field( 'cover_photo' ); ?>
@@ -156,18 +160,22 @@
if ( !um_profile('profile_photo') ) { // has profile photo
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-photo', 'click', array(
$items = array(
'<a href="#" class="um-manual-trigger" data-parent=".um-profile-photo" data-child=".um-btn-auto-width">'.__('Upload photo','ultimatemember').'</a>',
'<a href="#" class="um-dropdown-hide">'.__('Cancel','ultimatemember').'</a>',
) );
);
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-photo', 'click', $items );
} else if ( $ultimatemember->fields->editing == true ) {
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-photo', 'click', array(
$items = array(
'<a href="#" class="um-manual-trigger" data-parent=".um-profile-photo" data-child=".um-btn-auto-width">'.__('Change photo','ultimatemember').'</a>',
'<a href="#" class="um-reset-profile-photo" data-user_id="'.um_profile_id().'" data-default_src="'.um_get_default_avatar_uri().'">'.__('Remove photo','ultimatemember').'</a>',
'<a href="#" class="um-dropdown-hide">'.__('Cancel','ultimatemember').'</a>',
) );
);
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-photo', 'click', $items );
}
@@ -261,7 +269,7 @@
if ( !is_user_logged_in() ) return; // not allowed for guests
if ( isset( $ultimatemember->user->cannot_edit ) && $ultimatemember->user->cannot_edit == 1 ) return;
if ( isset( $ultimatemember->user->cannot_edit ) && $ultimatemember->user->cannot_edit == 1 ) return; // do not proceed if user cannot edit
if ( $ultimatemember->fields->editing == true ) {
@@ -281,19 +289,31 @@
<?php
$menu_items = array(
'myaccount' => '<a href="'.um_get_core_page('account').'" class="real_url">'.__('My Account','ultimatemember').'</a>',
$items = array(
'editprofile' => '<a href="'.um_edit_my_profile_uri().'" class="real_url">'.__('Edit Profile','ultimatemember').'</a>',
'myaccount' => '<a href="'.um_get_core_page('account').'" class="real_url">'.__('My Account','ultimatemember').'</a>',
'cancel' => '<a href="#" class="um-dropdown-hide">'.__('Cancel','ultimatemember').'</a>',
);
$cancel = $items['cancel'];
if ( !um_is_myprofile() ) {
$actions = $ultimatemember->user->get_admin_actions();
unset($menu_items['myaccount']);
$menu_items = array_merge( $actions, $menu_items );
unset( $items['cancel'] );
$items = array_merge( $items, $actions );
$items['cancel'] = $cancel;
$items = apply_filters('um_profile_edit_menu_items', $items );
} else {
$items = apply_filters('um_myprofile_edit_menu_items', $items );
}
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-edit', 'click', $menu_items );
echo $ultimatemember->menu->new_ui( 'bc', 'div.um-profile-edit', 'click', $items );
?>
+1 -104
View File
@@ -21,107 +21,4 @@
return true;
}
}
add_filter( 'show_admin_bar' , 'um_control_admin_bar');
/***
*** @show admin bar menu for plugin
***/
add_action('admin_bar_menu', 'um_plugin_admin_bar', 99999999 );
function um_plugin_admin_bar() {
global $wp_admin_bar;
if( !is_super_admin() || !is_admin_bar_showing() || is_admin() ) return;
if ( !um_get_option('wpadmin_um_bar') ) return;
$args = array(
'id' => 'um_parent',
'title' => '<span class="ab-icon"></span><span class="ab-label">Ultimate Member</span>',
'href' => admin_url('admin.php?page=ultimatemember-about'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub1',
'title' => 'About this plugin',
'href' => admin_url('admin.php?page=ultimatemember-about'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub2',
'title' => 'Getting Started',
'href' => admin_url('admin.php?page=ultimatemember-start'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub3',
'title' => 'Dashboard',
'href' => admin_url('admin.php?page=ultimatemember'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub4',
'title' => 'Settings',
'href' => admin_url('admin.php?page=um_options'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub5',
'title' => 'Forms',
'href' => admin_url('edit.php?post_type=um_form'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub6',
'title' => 'Member Levels',
'href' => admin_url('edit.php?post_type=um_role'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub7',
'title' => 'Member Directories',
'href' => admin_url('edit.php?post_type=um_directory'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
$args = array(
'parent' => 'um_parent',
'id' => 'um_sub8',
'title' => 'Members',
'href' => admin_url('users.php'),
'meta' => array( )
);
$wp_admin_bar->add_node( $args );
}
add_filter( 'show_admin_bar' , 'um_control_admin_bar');
+39
View File
@@ -1,5 +1,44 @@
<?php
/***
*** @filter to customize errors
***/
add_filter('login_message', 'um_custom_wp_err_messages');
function um_custom_wp_err_messages( $message) {
if ( isset( $_REQUEST['err'] ) && !empty( $_REQUEST['err'] ) ) {
switch( $_REQUEST['err'] ) {
case 'blocked_email':
$err = __('This email address has been blocked.','ultimatemember');
break;
case 'blocked_ip':
$err = __('Your IP address has been blocked.','ultimatemember');
break;
}
}
if ( isset( $err ) ) {
$message = '<div class="login" id="login_error">'.$err.'</div>';
}
return $message;
}
/***
*** @check for blocked ip
***/
add_filter('authenticate', 'um_wp_form_errors_hook_ip_test', 10, 3);
function um_wp_form_errors_hook_ip_test( $user, $username, $password ) {
if (!empty($username)) {
do_action("um_submit_form_errors_hook__blockedips", $args=array() );
do_action("um_submit_form_errors_hook__blockedemails", $args=array('username' => $username ) );
}
return $user;
}
/***
*** @login checks thru the wordpress admin login
***/
+1 -1
View File
@@ -21,7 +21,7 @@ class UM_Query {
/***
*** @Get users by meta
***/
function get_users_by_meta($rule, $number = 5){
function get_users_by_status($rule, $number = 5){
global $wpdb;
$args = array( 'fields' => 'ID', 'number' => $number, 'orderby' => 'user_registered', 'order' => 'desc' );
-9
View File
@@ -42,15 +42,6 @@
return $value;
}
/***
*** @Get number of pending notifications for a meta
***/
function um_notify( $rule ) {
global $ultimatemember;
$results = $ultimatemember->query->get_users_by_meta( $rule, 100 );
return count($results);
}
/***
*** @profile user ID
***/
+2
View File
@@ -200,6 +200,8 @@ class UM_User {
$old_status = ( isset( $this->profile['account_status'] ) ) ? $this->profile['account_status'] : 'null';
if ( $status == $old_status ) return; // to prevent spam
do_action('um_before_user_status_is_changed', $old_status );
$this->profile['account_status'] = $status;
+2 -22
View File
@@ -12,16 +12,6 @@ $this->sections[] = array(
'title' => __( 'Registration'),
'fields' => array(
array(
'id' => 'registration',
'type' => 'switch',
'title' => __( 'Registration Status' ),
'default' => 1,
'desc' => 'Enable/disable new user registration globally on your site',
'on' => 'Enabled',
'off' => 'Disabled',
),
array(
'id' => 'default_role',
'type' => 'select',
@@ -248,16 +238,6 @@ $this->sections[] = array(
'title' => __( 'Backend'),
'fields' => array(
array(
'id' => 'wpadmin_um_bar',
'type' => 'switch',
'title' => __( 'Show Ultimate Member in admin bar when browsing the frontend?' ),
'default' => 1,
'desc' => 'Control whether to show or hide the Ultimate Member admin bar when you are browsing the frontend.',
'on' => __('Yes','ultimatemember'),
'off' => __('No','ultimatemember'),
),
array(
'id' => 'panic_key',
'type' => 'text',
@@ -350,7 +330,7 @@ $this->sections[] = array(
'type' => 'textarea',
'title' => __( 'Blocked IP Addresses' ),
'desc' => __( 'Enter one IP per line, you can also use wildcards to block a specific range e.g. 41.83.*.*' ),
'desc' => __('This will block these IPs from accessing the site, you can use full IP numbers or target specific range with a wildcard')
'desc' => __('This will block the listed IPs from signing up or signing in to the site, you can use full IP numbers or target specific range with a wildcard')
),
array(
@@ -880,7 +860,7 @@ $this->sections[] = array(
'width' => '150',
'height' => '150',
'title' => __('Default Profile Picture', 'ultimatemember'),
'desc' => __('You can change the default profile picture globally here. Please make sure photo is 300x300px.', 'ultimatemember'),
'desc' => __('You can change the default profile picture globally here. Please make sure that the photo is 300x300px.', 'ultimatemember'),
'default' => array(
'url' => um_url . 'assets/img/default_avatar.jpg',
),