mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-06-05 15:09:37 +09:00
Update 1.0.76
This commit is contained in:
@@ -0,0 +1,108 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
class UM_ADDON_bp_avatar_transfer {
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
|
||||||
|
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
||||||
|
|
||||||
|
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
||||||
|
|
||||||
|
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @extends the admin menu
|
||||||
|
***/
|
||||||
|
function admin_menu() {
|
||||||
|
|
||||||
|
global $ultimatemember;
|
||||||
|
$this->addon = $ultimatemember->addons['bp_avatar_transfer'];
|
||||||
|
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'bp_avatar_transfer', array(&$this, 'content') );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @Runs a custom hook
|
||||||
|
***/
|
||||||
|
function um_admin_addon_hook( $hook ) {
|
||||||
|
global $ultimatemember;
|
||||||
|
switch( $hook ) {
|
||||||
|
case 'bp_avatar_transfer':
|
||||||
|
if ( class_exists('BuddyPress') ) {
|
||||||
|
|
||||||
|
$path = bp_core_avatar_upload_path() . '/avatars';
|
||||||
|
|
||||||
|
$files = glob( $path . '/*');
|
||||||
|
$i = 0;
|
||||||
|
foreach( $files as $key ) {
|
||||||
|
$q = (count(glob("$key/*")) === 0) ? 0 : 1;
|
||||||
|
if ( $q == 1 ) {
|
||||||
|
$photo = glob( $key . '/*');
|
||||||
|
foreach( $photo as $file ) {
|
||||||
|
if ( strstr( $file, 'bpfull' ) ) {
|
||||||
|
$get_user_id = explode('/', $file);
|
||||||
|
array_pop($get_user_id);
|
||||||
|
$user_id = end($get_user_id);
|
||||||
|
if ( !file_exists( $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' ) ) {
|
||||||
|
$ultimatemember->files->new_user( $user_id );
|
||||||
|
copy( $file, $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' );
|
||||||
|
update_user_meta($user_id, 'profile_photo', 'profile_photo.jpg');
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->content = '<p><strong>Done. Process completed!</p>';
|
||||||
|
$this->content .= $i . ' user(s) changed.</strong></p>';
|
||||||
|
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @Change admin content
|
||||||
|
***/
|
||||||
|
function admin_init() {
|
||||||
|
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
||||||
|
$hook = $_REQUEST['um-addon-hook'];
|
||||||
|
do_action("um_admin_addon_hook", $hook);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function content() {
|
||||||
|
|
||||||
|
$this->process_link = add_query_arg('um-addon-hook','bp_avatar_transfer');
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="wrap">
|
||||||
|
|
||||||
|
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
||||||
|
|
||||||
|
<h3><?php echo $this->addon[0]; ?></h3>
|
||||||
|
|
||||||
|
<?php if ( isset( $this->content ) ) {
|
||||||
|
echo $this->content;
|
||||||
|
} else { ?>
|
||||||
|
|
||||||
|
<p>This tool allows you to move all custom user photos/avatars from BuddyPress to Ultimate Member platform. This can help you If you are switching from BuddyPress.</p>
|
||||||
|
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
|
||||||
|
|
||||||
|
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start transferring avatars</a></p>
|
||||||
|
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
</div><div class="clear"></div>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$UM_ADDON_bp_avatar_transfer = new UM_ADDON_bp_avatar_transfer();
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.active a, .admin-color-fresh .redux-sidebar .redux-group-menu li.activeChild a {
|
.redux-sidebar .redux-group-menu li.active a, .admin-color-fresh .redux-sidebar .redux-group-menu li.activeChild a {
|
||||||
color: #3ba1da !important;
|
color: #3ba1da !important;
|
||||||
|
background: #e5e5e5;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
|
||||||
@@ -47,6 +48,9 @@
|
|||||||
|
|
||||||
.redux-main {
|
.redux-main {
|
||||||
background: none !important;
|
background: none !important;
|
||||||
|
box-shadow: none !important;
|
||||||
|
border-left: 0 !important;
|
||||||
|
padding: 0 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-container-sortable .checkbox-container input {
|
.redux-container-sortable .checkbox-container input {
|
||||||
@@ -54,29 +58,34 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#redux-header {
|
#redux-header {
|
||||||
background: #3ba1da !important;
|
background: transparent !important;
|
||||||
border-color: #3ba1da !important;
|
border: none !important;
|
||||||
border-radius: 0 !important;
|
padding: 0 !important;
|
||||||
padding: 0 0 0 20px !important;
|
}
|
||||||
border-bottom: 0 !important;
|
|
||||||
|
.redux-container #redux-header .display_header {
|
||||||
|
margin: 0 0 10px 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
#redux-header .display_header span {
|
#redux-header .display_header span {
|
||||||
color: #fff !important;
|
font-size: 15px;
|
||||||
font-size: 14px;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
top: -10px;
|
top: -8px;
|
||||||
font-weight: 600;
|
left: -3px;
|
||||||
padding-left: 4px;
|
padding-left: 4px;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 29px;
|
||||||
|
color: #222 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
#redux-header h2 {
|
#redux-header h2 {
|
||||||
color: #fff;
|
color: #222;
|
||||||
font-size: 24px !important;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
-moz-osx-font-smoothing: grayscale;
|
-moz-osx-font-smoothing: grayscale;
|
||||||
background: url(../img/logo-header.png) no-repeat left 8px;
|
font-size: 23px;
|
||||||
padding: 10px 10px 10px 80px;
|
font-weight: 400;
|
||||||
|
padding: 2px 15px 4px 0px;
|
||||||
|
line-height: 29px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#redux-share {margin-top: 11px !important}
|
#redux-share {margin-top: 11px !important}
|
||||||
@@ -118,15 +127,16 @@
|
|||||||
|
|
||||||
.redux-sidebar .redux-group-tab-link-a i {
|
.redux-sidebar .redux-group-tab-link-a i {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
font-size: 1.5em;
|
font-size: 1.2em;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 20px;
|
width: 20px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
top: 8px;
|
top: 6px;
|
||||||
|
color: #888;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-menu-warning i, .redux-sidebar .redux-menu-error i, .redux-sidebar .hasSubSections .extraIconSubsections i {
|
.redux-sidebar .redux-menu-warning i, .redux-sidebar .redux-menu-error i, .redux-sidebar .hasSubSections .extraIconSubsections i {
|
||||||
top: 14px;
|
top: 11px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-container ul.data-full{padding:0!important;margin:0!important}
|
.redux-container ul.data-full{padding:0!important;margin:0!important}
|
||||||
@@ -140,38 +150,51 @@
|
|||||||
|
|
||||||
.redux-container-switch {font-size: 13px}
|
.redux-container-switch {font-size: 13px}
|
||||||
|
|
||||||
|
.redux-sidebar .redux-group-menu li {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li a {
|
.redux-sidebar .redux-group-menu li a {
|
||||||
color: #555;
|
color: #555;
|
||||||
opacity: 1 !important;
|
opacity: 1 !important;
|
||||||
padding: 10px 4px 10px 14px;
|
padding: 6px 4px 6px 14px;
|
||||||
|
border-radius: 3px;
|
||||||
|
border: none;
|
||||||
|
transition: all .2s linear !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li a:hover {
|
.redux-sidebar .redux-group-menu li a:hover {
|
||||||
background: #ddd;
|
background: #e5e5e5;
|
||||||
color: #555;
|
color: #333;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a {
|
||||||
background: #3ba1da !important;
|
background: #3ba1da !important;
|
||||||
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections a i {color: #fff !important}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active {
|
||||||
border-right: 0;
|
border-right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li {
|
||||||
border-right: 1px solid #DEDEDE;
|
border-right: 0;
|
||||||
|
margin-top: 4px;
|
||||||
|
padding-left: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a {
|
||||||
background: transparent !important;
|
background: transparent !important;
|
||||||
color: #555 !important;
|
color: #555 !important;
|
||||||
border-bottom: 1px solid #E7E7E7;
|
border-bottom: 0;
|
||||||
padding: 10px 4px 10px 14px !important;
|
padding: 6px 4px 6px 14px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a:hover {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li a:hover {
|
||||||
background: #ddd !important;
|
background: #e5e5e5 !important;
|
||||||
|
color: #333 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active a {
|
.redux-sidebar .redux-group-menu li.activeChild.hasSubSections ul.subsection li.active a {
|
||||||
|
|||||||
@@ -179,7 +179,7 @@
|
|||||||
|
|
||||||
update_option('um_tracking_notice', 1 );
|
update_option('um_tracking_notice', 1 );
|
||||||
|
|
||||||
$tracking = new UM_Admin_Tracking();
|
$tracking = new UM_Tracking();
|
||||||
$tracking->send_checkin(true);
|
$tracking->send_checkin(true);
|
||||||
|
|
||||||
exit( wp_redirect( remove_query_arg('um_adm_action') ) );
|
exit( wp_redirect( remove_query_arg('um_adm_action') ) );
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ class UM_Admin_Dashboard {
|
|||||||
function admin_page() {
|
function admin_page() {
|
||||||
|
|
||||||
$page = $_REQUEST['page'];
|
$page = $_REQUEST['page'];
|
||||||
if ( $page == 'ultimatemember' ) {
|
if ( $page == 'ultimatemember' && !isset($_REQUEST['um-addon']) ) {
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|||||||
@@ -428,15 +428,15 @@ class UM_Admin_Metabox {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// needed on forms only
|
// needed on forms only
|
||||||
if ( isset( $screen->id ) && strstr( $screen->id, 'um_form' ) ) {
|
if ( !isset( $this->is_loaded ) && isset( $screen->id ) && strstr( $screen->id, 'um_form' ) ) {
|
||||||
|
|
||||||
$settings['textarea_rows'] = 8;
|
$settings['textarea_rows'] = 8;
|
||||||
|
|
||||||
echo '<div class="um-hidden-editor-edit" style="display: none">';
|
echo '<div class="um-hidden-editor-edit" style="display:none;">';
|
||||||
wp_editor( '', 'um_editor_edit', $settings );
|
wp_editor( '', 'um_editor_edit', $settings );
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
echo '<div class="um-hidden-editor-new" style="display: none">';
|
echo '<div class="um-hidden-editor-new" style="display:none;">';
|
||||||
wp_editor( '', 'um_editor_new', $settings );
|
wp_editor( '', 'um_editor_new', $settings );
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@
|
|||||||
|
|
||||||
$this->args = array(
|
$this->args = array(
|
||||||
'opt_name' => 'um_options', // This is where your data is stored in the database and also becomes your global variable name.
|
'opt_name' => 'um_options', // This is where your data is stored in the database and also becomes your global variable name.
|
||||||
'display_name' => __('Settings', 'ultimatemember'), // Name that appears at the top of your panel
|
'display_name' => __('Ultimate Member', 'ultimatemember'), // Name that appears at the top of your panel
|
||||||
'display_version' => ultimatemember_version, // Version that appears at the top of your panel
|
'display_version' => ultimatemember_version, // Version that appears at the top of your panel
|
||||||
'menu_type' => 'submenu', //Specify if the admin menu should appear or not. Options: menu or submenu (Under appearance only)
|
'menu_type' => 'submenu', //Specify if the admin menu should appear or not. Options: menu or submenu (Under appearance only)
|
||||||
'allow_sub_menu' => false, // Show the sections below the admin menu item or not
|
'allow_sub_menu' => false, // Show the sections below the admin menu item or not
|
||||||
|
|||||||
@@ -39,8 +39,7 @@ class UM_Admin_API {
|
|||||||
require_once um_path . 'admin/core/um-admin-roles.php';
|
require_once um_path . 'admin/core/um-admin-roles.php';
|
||||||
require_once um_path . 'admin/core/um-admin-builder.php';
|
require_once um_path . 'admin/core/um-admin-builder.php';
|
||||||
require_once um_path . 'admin/core/um-admin-dragdrop.php';
|
require_once um_path . 'admin/core/um-admin-dragdrop.php';
|
||||||
require_once um_path . 'admin/core/um-admin-tracking.php';
|
|
||||||
|
|
||||||
require_once um_path . 'admin/core/um-admin-actions-user.php';
|
require_once um_path . 'admin/core/um-admin-actions-user.php';
|
||||||
require_once um_path . 'admin/core/um-admin-actions-modal.php';
|
require_once um_path . 'admin/core/um-admin-actions-modal.php';
|
||||||
require_once um_path . 'admin/core/um-admin-actions-fields.php';
|
require_once um_path . 'admin/core/um-admin-actions-fields.php';
|
||||||
@@ -60,8 +59,7 @@ class UM_Admin_API {
|
|||||||
$this->access = new UM_Admin_Access();
|
$this->access = new UM_Admin_Access();
|
||||||
$this->builder = new UM_Admin_Builder();
|
$this->builder = new UM_Admin_Builder();
|
||||||
$this->dragdrop = new UM_Admin_DragDrop();
|
$this->dragdrop = new UM_Admin_DragDrop();
|
||||||
$this->tracking = new UM_Admin_Tracking();
|
|
||||||
|
|
||||||
if ( is_admin() &&
|
if ( is_admin() &&
|
||||||
current_user_can('manage_options') &&
|
current_user_can('manage_options') &&
|
||||||
isset($_REQUEST['um_adm_action']) &&
|
isset($_REQUEST['um_adm_action']) &&
|
||||||
|
|||||||
@@ -85,7 +85,7 @@
|
|||||||
line-height: 2em;
|
line-height: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-account-name a:hover {color: #3ba1da !important}
|
.um-account-name a:hover {color: #3ba1da}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
- Account nav
|
- Account nav
|
||||||
@@ -105,7 +105,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.um-account-nav a.current{
|
.um-account-nav a.current{
|
||||||
color: #3ba1da !important;
|
color: #3ba1da;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -220,7 +220,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.um-member-name a:hover {
|
.um-member-name a:hover {
|
||||||
color: #3ba1da !important;
|
color: #3ba1da;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-member-tagline {
|
.um-member-tagline {
|
||||||
@@ -320,7 +320,7 @@
|
|||||||
|
|
||||||
.um-members-pagi span.current,
|
.um-members-pagi span.current,
|
||||||
.um-members-pagi span.current:hover {
|
.um-members-pagi span.current:hover {
|
||||||
background: #3ba1da !important;
|
background: #3ba1da;
|
||||||
color: #fff !important;
|
color: #fff !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -345,5 +345,5 @@
|
|||||||
|
|
||||||
.um-members-pagi a:hover {
|
.um-members-pagi a:hover {
|
||||||
text-decoration: none !important;
|
text-decoration: none !important;
|
||||||
color: #3ba1da !important;
|
color: #3ba1da;
|
||||||
}
|
}
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-cover-add:hover { color: #3ba1da !important }
|
.um-cover-add:hover { color: #3ba1da }
|
||||||
|
|
||||||
.um-cover-e {
|
.um-cover-e {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -348,7 +348,7 @@ font-weight: normal;
|
|||||||
}
|
}
|
||||||
|
|
||||||
.um-profile-nav-item.active a {
|
.um-profile-nav-item.active a {
|
||||||
background: #3BA1DA !important;
|
background: #3ba1da;
|
||||||
color: #FFF!important;
|
color: #FFF!important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -398,7 +398,7 @@ font-weight: normal;
|
|||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
margin: 0 20px;
|
margin: 0 20px;
|
||||||
}
|
}
|
||||||
.um-profile-subnav a.active {color: #3BA1DA !important}
|
.um-profile-subnav a.active {color: #3ba1da}
|
||||||
.um-profile-subnav a:hover {color: #333}
|
.um-profile-subnav a:hover {color: #333}
|
||||||
|
|
||||||
.um-profile-subnav span {
|
.um-profile-subnav span {
|
||||||
@@ -466,7 +466,7 @@ font-weight: normal;
|
|||||||
content: "•";
|
content: "•";
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-item-meta a {font-weight: bold;border-bottom: 1px solid #E0E0E0;color: #3BA1DA}
|
.um-item-meta a {font-weight: bold;border-bottom: 1px solid #E0E0E0;color: #3ba1da}
|
||||||
.um-item-meta a:hover {border-bottom-color: #bbb}
|
.um-item-meta a:hover {border-bottom-color: #bbb}
|
||||||
|
|
||||||
.um-load-items {
|
.um-load-items {
|
||||||
|
|||||||
@@ -234,21 +234,6 @@ div.uimob340 .um-account-main {
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.uimob340 .um-account-main .um-provider {
|
|
||||||
padding: 15px 0 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob340 .um-account-main .um-left {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob340 .um-account-main .um-right {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob340 .um-account-tab {
|
div.uimob340 .um-account-tab {
|
||||||
padding-bottom: 20px;
|
padding-bottom: 20px;
|
||||||
border-bottom: 1px solid #eee;
|
border-bottom: 1px solid #eee;
|
||||||
@@ -471,21 +456,6 @@ div.uimob500 .um-account-main {
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.uimob500 .um-account-main .um-provider {
|
|
||||||
padding: 15px 0 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob500 .um-account-main .um-left {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob500 .um-account-main .um-right {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob500 .um-account-tab {
|
div.uimob500 .um-account-tab {
|
||||||
padding-bottom: 20px;
|
padding-bottom: 20px;
|
||||||
border-bottom: 1px solid #eee;
|
border-bottom: 1px solid #eee;
|
||||||
@@ -533,21 +503,6 @@ div.uimob800 .um-account-main {
|
|||||||
max-width: 450px;
|
max-width: 450px;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.uimob800 .um-account-main .um-provider {
|
|
||||||
padding: 15px 0 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob800 .um-account-main .um-left {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob800 .um-account-main .um-right {
|
|
||||||
float: none;
|
|
||||||
display: block;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.uimob800 .um-account-side {
|
div.uimob800 .um-account-side {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
width: 10%;
|
width: 10%;
|
||||||
@@ -594,7 +549,7 @@ div.uimob800 .um-account-side li a span.um-account-icontip i {
|
|||||||
|
|
||||||
div.uimob800 .um-account-side li a.current,
|
div.uimob800 .um-account-side li a.current,
|
||||||
div.uimob800 .um-account-side li a.current:hover {
|
div.uimob800 .um-account-side li a.current:hover {
|
||||||
background: #3ba1da !important;
|
background: #3ba1da;
|
||||||
color: #fff !important;
|
color: #fff !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
@@ -12,7 +12,7 @@ print ".um-$form_id .um-member {
|
|||||||
if ( isset( $css_card_thickness ) ) {
|
if ( isset( $css_card_thickness ) ) {
|
||||||
|
|
||||||
print ".um-$form_id .um-member {
|
print ".um-$form_id .um-member {
|
||||||
border-width: $css_card_thickness !important;
|
border-width: $css_card_thickness;
|
||||||
}";
|
}";
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -20,7 +20,7 @@ print ".um-$form_id .um-member {
|
|||||||
if ($css_profile_card_text) {
|
if ($css_profile_card_text) {
|
||||||
|
|
||||||
print ".um-$form_id .um-member-card * {
|
print ".um-$form_id .um-member-card * {
|
||||||
color: $css_profile_card_text!important;
|
color: $css_profile_card_text;
|
||||||
}";
|
}";
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -28,7 +28,7 @@ print ".um-$form_id .um-member-card * {
|
|||||||
if ($css_card_bordercolor) {
|
if ($css_card_bordercolor) {
|
||||||
|
|
||||||
print ".um-$form_id .um-member {
|
print ".um-$form_id .um-member {
|
||||||
border-color: $css_card_bordercolor!important;
|
border-color: $css_card_bordercolor;
|
||||||
}";
|
}";
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -36,7 +36,7 @@ print ".um-$form_id .um-member {
|
|||||||
if ($css_img_bordercolor) {
|
if ($css_img_bordercolor) {
|
||||||
|
|
||||||
print ".um-$form_id .um-member-photo img {
|
print ".um-$form_id .um-member-photo img {
|
||||||
border-color: $css_img_bordercolor!important;
|
border-color: $css_img_bordercolor;
|
||||||
}";
|
}";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,46 +63,46 @@ print ".um-$form_id.um {
|
|||||||
|
|
||||||
if ( $primary_btn_color ) {
|
if ( $primary_btn_color ) {
|
||||||
print ".um-$form_id.um input[type=submit]:disabled:hover {
|
print ".um-$form_id.um input[type=submit]:disabled:hover {
|
||||||
background: $primary_btn_color !important;
|
background: $primary_btn_color;
|
||||||
}";
|
}";
|
||||||
print ".um-$form_id.um input[type=submit].um-button,
|
print ".um-$form_id.um input[type=submit].um-button,
|
||||||
.um-$form_id.um input[type=submit].um-button:focus,
|
.um-$form_id.um input[type=submit].um-button:focus,
|
||||||
.um-$form_id.um a.um-button {
|
.um-$form_id.um a.um-button {
|
||||||
background: $primary_btn_color !important;
|
background: $primary_btn_color;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $primary_btn_hover ) {
|
if ( $primary_btn_hover ) {
|
||||||
print ".um-$form_id.um input[type=submit].um-button:hover,
|
print ".um-$form_id.um input[type=submit].um-button:hover,
|
||||||
.um-$form_id.um a.um-button:hover {
|
.um-$form_id.um a.um-button:hover {
|
||||||
background-color: $primary_btn_hover !important;
|
background-color: $primary_btn_hover;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $primary_btn_text ) {
|
if ( $primary_btn_text ) {
|
||||||
print ".um-$form_id.um .um-button {
|
print ".um-$form_id.um .um-button {
|
||||||
color: $primary_btn_text !important;
|
color: $primary_btn_text;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $secondary_btn_color ) {
|
if ( $secondary_btn_color ) {
|
||||||
print ".um-$form_id.um .um-button.um-alt,
|
print ".um-$form_id.um .um-button.um-alt,
|
||||||
.um-$form_id.um input[type=submit].um-button.um-alt {
|
.um-$form_id.um input[type=submit].um-button.um-alt {
|
||||||
background: $secondary_btn_color !important;
|
background: $secondary_btn_color;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $secondary_btn_hover ) {
|
if ( $secondary_btn_hover ) {
|
||||||
print ".um-$form_id.um .um-button.um-alt:hover,
|
print ".um-$form_id.um .um-button.um-alt:hover,
|
||||||
.um-$form_id.um input[type=submit].um-button.um-alt:hover{
|
.um-$form_id.um input[type=submit].um-button.um-alt:hover{
|
||||||
background: $secondary_btn_hover !important;
|
background: $secondary_btn_hover;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $secondary_btn_text ) {
|
if ( $secondary_btn_text ) {
|
||||||
print ".um-$form_id.um .um-button.um-alt,
|
print ".um-$form_id.um .um-button.um-alt,
|
||||||
.um-$form_id.um input[type=submit].um-button.um-alt {
|
.um-$form_id.um input[type=submit].um-button.um-alt {
|
||||||
color: $secondary_btn_text !important;
|
color: $secondary_btn_text;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,7 +134,7 @@ print "
|
|||||||
.select2-container .select2-choice,
|
.select2-container .select2-choice,
|
||||||
.select2-container-multi .select2-choices
|
.select2-container-multi .select2-choices
|
||||||
{
|
{
|
||||||
background-color: $form_bg_color !important;
|
background-color: $form_bg_color;
|
||||||
}
|
}
|
||||||
";
|
";
|
||||||
}
|
}
|
||||||
@@ -144,25 +144,25 @@ print "
|
|||||||
|
|
||||||
.um-$form_id.um .um-form ::-webkit-input-placeholder
|
.um-$form_id.um .um-form ::-webkit-input-placeholder
|
||||||
{
|
{
|
||||||
color: $form_placeholder !important;
|
color: $form_placeholder;
|
||||||
opacity: 1 !important;
|
opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-$form_id.um .um-form ::-moz-placeholder
|
.um-$form_id.um .um-form ::-moz-placeholder
|
||||||
{
|
{
|
||||||
color: $form_placeholder !important;
|
color: $form_placeholder;
|
||||||
opacity: 1 !important;
|
opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-$form_id.um .um-form ::-moz-placeholder
|
.um-$form_id.um .um-form ::-moz-placeholder
|
||||||
{
|
{
|
||||||
color: $form_placeholder !important;
|
color: $form_placeholder;
|
||||||
opacity: 1 !important;
|
opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.um-$form_id.um .um-form ::-ms-input-placeholder
|
.um-$form_id.um .um-form ::-ms-input-placeholder
|
||||||
{
|
{
|
||||||
color: $form_placeholder !important;
|
color: $form_placeholder;
|
||||||
opacity: 1 !important;
|
opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,7 +170,7 @@ print "
|
|||||||
.select2-default *,
|
.select2-default *,
|
||||||
.select2-container-multi .select2-choices .select2-search-field input
|
.select2-container-multi .select2-choices .select2-search-field input
|
||||||
{
|
{
|
||||||
color: $form_placeholder !important;
|
color: $form_placeholder;
|
||||||
}
|
}
|
||||||
|
|
||||||
";
|
";
|
||||||
@@ -183,7 +183,7 @@ print "
|
|||||||
.select2-search:before,
|
.select2-search:before,
|
||||||
.select2-search-choice-close:before
|
.select2-search-choice-close:before
|
||||||
{
|
{
|
||||||
color: $form_icon_color !important;
|
color: $form_icon_color;
|
||||||
}
|
}
|
||||||
";
|
";
|
||||||
}
|
}
|
||||||
@@ -192,7 +192,7 @@ if ( $form_asterisk_color ) {
|
|||||||
print "
|
print "
|
||||||
.um-$form_id.um span.um-req
|
.um-$form_id.um span.um-req
|
||||||
{
|
{
|
||||||
color: $form_asterisk_color !important;
|
color: $form_asterisk_color;
|
||||||
}
|
}
|
||||||
";
|
";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ print "
|
|||||||
|
|
||||||
if ( $main_bg ) {
|
if ( $main_bg ) {
|
||||||
print ".um-$form_id.um-profile {
|
print ".um-$form_id.um-profile {
|
||||||
background-color: $main_bg !important;
|
background-color: $main_bg;
|
||||||
}";
|
}";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ function um_conditional(){
|
|||||||
if ( action0 == 'show' && field0 == live_field ) {
|
if ( action0 == 'show' && field0 == live_field ) {
|
||||||
|
|
||||||
if ( operator0 == 'empty' ) {
|
if ( operator0 == 'empty' ) {
|
||||||
if ( live_value == '' ) {
|
if ( !live_value || live_value == '' ) {
|
||||||
jQuery(this).fadeIn();
|
jQuery(this).fadeIn();
|
||||||
} else {
|
} else {
|
||||||
jQuery(this).hide();
|
jQuery(this).hide();
|
||||||
@@ -23,7 +23,7 @@ function um_conditional(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ( operator0 == 'not empty' ) {
|
if ( operator0 == 'not empty' ) {
|
||||||
if ( live_value != '' ) {
|
if ( live_value && live_value != '' ) {
|
||||||
jQuery(this).fadeIn();
|
jQuery(this).fadeIn();
|
||||||
} else {
|
} else {
|
||||||
jQuery(this).hide();
|
jQuery(this).hide();
|
||||||
@@ -77,7 +77,7 @@ function um_conditional(){
|
|||||||
if ( action0 == 'hide' && field0 == live_field ) {
|
if ( action0 == 'hide' && field0 == live_field ) {
|
||||||
|
|
||||||
if ( operator0 == 'empty' ) {
|
if ( operator0 == 'empty' ) {
|
||||||
if ( live_value == '' ) {
|
if ( !live_value || live_value == '' ) {
|
||||||
jQuery(this).hide();
|
jQuery(this).hide();
|
||||||
} else {
|
} else {
|
||||||
jQuery(this).fadeIn();
|
jQuery(this).fadeIn();
|
||||||
@@ -85,7 +85,7 @@ function um_conditional(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ( operator0 == 'not empty' ) {
|
if ( operator0 == 'not empty' ) {
|
||||||
if ( live_value != '' ) {
|
if ( live_value && live_value != '' ) {
|
||||||
jQuery(this).hide();
|
jQuery(this).hide();
|
||||||
} else {
|
} else {
|
||||||
jQuery(this).fadeIn();
|
jQuery(this).fadeIn();
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+15
-15
@@ -162,6 +162,8 @@
|
|||||||
|
|
||||||
<?php echo $output; ?>
|
<?php echo $output; ?>
|
||||||
|
|
||||||
|
<?php do_action('um_after_account_delete'); ?>
|
||||||
|
|
||||||
<div class="um-col-alt um-col-alt-b">
|
<div class="um-col-alt um-col-alt-b">
|
||||||
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Delete Account','ultimatemember'); ?>" class="um-button" /></div>
|
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Delete Account','ultimatemember'); ?>" class="um-button" /></div>
|
||||||
<?php do_action('um_after_account_delete_button'); ?>
|
<?php do_action('um_after_account_delete_button'); ?>
|
||||||
@@ -171,9 +173,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('um_after_account_delete');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -192,6 +192,8 @@
|
|||||||
|
|
||||||
<?php echo $output; ?>
|
<?php echo $output; ?>
|
||||||
|
|
||||||
|
<?php do_action('um_after_account_privacy'); ?>
|
||||||
|
|
||||||
<div class="um-col-alt um-col-alt-b">
|
<div class="um-col-alt um-col-alt-b">
|
||||||
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Privacy','ultimatemember'); ?>" class="um-button" /></div>
|
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Privacy','ultimatemember'); ?>" class="um-button" /></div>
|
||||||
<?php do_action('um_after_account_privacy_button'); ?>
|
<?php do_action('um_after_account_privacy_button'); ?>
|
||||||
@@ -201,9 +203,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('um_after_account_privacy');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -222,6 +222,8 @@
|
|||||||
|
|
||||||
<?php echo $output; ?>
|
<?php echo $output; ?>
|
||||||
|
|
||||||
|
<?php do_action('um_after_account_general'); ?>
|
||||||
|
|
||||||
<div class="um-col-alt um-col-alt-b">
|
<div class="um-col-alt um-col-alt-b">
|
||||||
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Account','ultimatemember'); ?>" class="um-button" /></div>
|
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Account','ultimatemember'); ?>" class="um-button" /></div>
|
||||||
<?php do_action('um_after_account_general_button'); ?>
|
<?php do_action('um_after_account_general_button'); ?>
|
||||||
@@ -231,9 +233,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('um_after_account_general');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -252,6 +252,8 @@
|
|||||||
|
|
||||||
<?php echo $output; ?>
|
<?php echo $output; ?>
|
||||||
|
|
||||||
|
<?php do_action('um_after_account_password'); ?>
|
||||||
|
|
||||||
<div class="um-col-alt um-col-alt-b">
|
<div class="um-col-alt um-col-alt-b">
|
||||||
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Password','ultimatemember'); ?>" class="um-button" /></div>
|
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Password','ultimatemember'); ?>" class="um-button" /></div>
|
||||||
<?php do_action('um_after_account_password_button'); ?>
|
<?php do_action('um_after_account_password_button'); ?>
|
||||||
@@ -261,9 +263,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('um_after_account_password');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -282,6 +282,8 @@
|
|||||||
|
|
||||||
<?php echo $output; ?>
|
<?php echo $output; ?>
|
||||||
|
|
||||||
|
<?php do_action('um_after_account_notifications'); ?>
|
||||||
|
|
||||||
<div class="um-col-alt um-col-alt-b">
|
<div class="um-col-alt um-col-alt-b">
|
||||||
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Notifications','ultimatemember'); ?>" class="um-button" /></div>
|
<div class="um-left"><input type="submit" name="um_account_submit" id="um_account_submit" value="<?php _e('Update Notifications','ultimatemember'); ?>" class="um-button" /></div>
|
||||||
<?php do_action('um_after_account_notifications_button'); ?>
|
<?php do_action('um_after_account_notifications_button'); ?>
|
||||||
@@ -291,9 +293,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('um_after_account_notifications');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
|
|||||||
@@ -228,6 +228,12 @@
|
|||||||
|
|
||||||
switch( $array['validate'] ) {
|
switch( $array['validate'] ) {
|
||||||
|
|
||||||
|
case 'numeric':
|
||||||
|
if ( $args[$key] && !is_numeric( $args[$key] ) ) {
|
||||||
|
$ultimatemember->form->add_error($key, __('Please enter numbers only in this field','ultimatemember') );
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 'phone_number':
|
case 'phone_number':
|
||||||
if ( !$ultimatemember->validation->is_phone_number( $args[$key] ) ) {
|
if ( !$ultimatemember->validation->is_phone_number( $args[$key] ) ) {
|
||||||
$ultimatemember->form->add_error($key, __('Please enter a valid phone number','ultimatemember') );
|
$ultimatemember->form->add_error($key, __('Please enter a valid phone number','ultimatemember') );
|
||||||
|
|||||||
@@ -76,10 +76,10 @@
|
|||||||
$form_timestamp = trim($_POST['timestamp']);
|
$form_timestamp = trim($_POST['timestamp']);
|
||||||
$live_timestamp = current_time( 'timestamp' );
|
$live_timestamp = current_time( 'timestamp' );
|
||||||
|
|
||||||
if ( $form_timestamp == '' )
|
if ( $form_timestamp == '' && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Hello, spam bot!') );
|
wp_die( __('Hello, spam bot!') );
|
||||||
|
|
||||||
if ( $live_timestamp - $form_timestamp < 3 )
|
if ( $live_timestamp - $form_timestamp < 3 && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
||||||
|
|
||||||
if ( strlen(trim( $_POST['username_b'] ) ) == 0 ) {
|
if ( strlen(trim( $_POST['username_b'] ) ) == 0 ) {
|
||||||
@@ -107,10 +107,10 @@
|
|||||||
$form_timestamp = trim($_POST['timestamp']);
|
$form_timestamp = trim($_POST['timestamp']);
|
||||||
$live_timestamp = current_time( 'timestamp' );
|
$live_timestamp = current_time( 'timestamp' );
|
||||||
|
|
||||||
if ( $form_timestamp == '' )
|
if ( $form_timestamp == '' && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Hello, spam bot!') );
|
wp_die( __('Hello, spam bot!') );
|
||||||
|
|
||||||
if ( $live_timestamp - $form_timestamp < 3 )
|
if ( $live_timestamp - $form_timestamp < 3 && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
||||||
|
|
||||||
if ( !$args['user_password'] ) {
|
if ( !$args['user_password'] ) {
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ class UM_Cron {
|
|||||||
public function schedule_Events() {
|
public function schedule_Events() {
|
||||||
$this->weekly_events();
|
$this->weekly_events();
|
||||||
$this->daily_events();
|
$this->daily_events();
|
||||||
|
$this->twicedaily_events();
|
||||||
$this->hourly_events();
|
$this->hourly_events();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,6 +37,12 @@ class UM_Cron {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function twicedaily_events() {
|
||||||
|
if ( ! wp_next_scheduled( 'um_twicedaily_scheduled_events' ) ) {
|
||||||
|
wp_schedule_event( current_time( 'timestamp' ), 'twicedaily', 'um_twicedaily_scheduled_events' );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private function hourly_events() {
|
private function hourly_events() {
|
||||||
if ( ! wp_next_scheduled( 'um_hourly_scheduled_events' ) ) {
|
if ( ! wp_next_scheduled( 'um_hourly_scheduled_events' ) ) {
|
||||||
wp_schedule_event( current_time( 'timestamp' ), 'hourly', 'um_hourly_scheduled_events' );
|
wp_schedule_event( current_time( 'timestamp' ), 'hourly', 'um_hourly_scheduled_events' );
|
||||||
|
|||||||
+17
-5
@@ -378,6 +378,8 @@ class UM_Files {
|
|||||||
|
|
||||||
delete_user_meta( $user_id, $type );
|
delete_user_meta( $user_id, $type );
|
||||||
|
|
||||||
|
do_action("um_after_remove_{$type}", $user_id);
|
||||||
|
|
||||||
$dir = $this->upload_basedir . $user_id . '/';
|
$dir = $this->upload_basedir . $user_id . '/';
|
||||||
$prefix = $type;
|
$prefix = $type;
|
||||||
chdir($dir);
|
chdir($dir);
|
||||||
@@ -417,16 +419,23 @@ class UM_Files {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
*** @new user upload
|
*** @make a user folder for uploads
|
||||||
***/
|
***/
|
||||||
function new_user_upload( $user_id, $source, $key ) {
|
function new_user( $user_id ) {
|
||||||
|
|
||||||
// if he does not have uploads dir yet
|
|
||||||
if ( !file_exists( $this->upload_basedir . $user_id . '/' ) ) {
|
if ( !file_exists( $this->upload_basedir . $user_id . '/' ) ) {
|
||||||
$old = umask(0);
|
$old = umask(0);
|
||||||
@mkdir( $this->upload_basedir . $user_id . '/' , 0755, true);
|
@mkdir( $this->upload_basedir . $user_id . '/' , 0755, true);
|
||||||
umask($old);
|
umask($old);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @new user upload
|
||||||
|
***/
|
||||||
|
function new_user_upload( $user_id, $source, $key ) {
|
||||||
|
|
||||||
|
// if he does not have uploads dir yet
|
||||||
|
$this->new_user( $user_id );
|
||||||
|
|
||||||
// name and extension stuff
|
// name and extension stuff
|
||||||
$source_name = basename( $source );
|
$source_name = basename( $source );
|
||||||
@@ -443,7 +452,10 @@ class UM_Files {
|
|||||||
$name = str_replace( $ext, '', $source_name );
|
$name = str_replace( $ext, '', $source_name );
|
||||||
$filename = $name . $ext;
|
$filename = $name . $ext;
|
||||||
|
|
||||||
// copy file
|
// copy & overwrite file
|
||||||
|
if ( file_exists( $this->upload_basedir . $user_id . '/' . $filename ) ) {
|
||||||
|
unlink( $this->upload_basedir . $user_id . '/' . $filename );
|
||||||
|
}
|
||||||
copy( $source, $this->upload_basedir . $user_id . '/' . $filename );
|
copy( $source, $this->upload_basedir . $user_id . '/' . $filename );
|
||||||
|
|
||||||
// thumbs
|
// thumbs
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @add-ons panel
|
||||||
|
***/
|
||||||
|
add_filter("redux/options/um_options/sections", 'um_add_addons_settings_tab', 8 );
|
||||||
|
function um_add_addons_settings_tab($sections){
|
||||||
|
global $ultimatemember;
|
||||||
|
|
||||||
|
foreach( $ultimatemember->addons as $addon_id => $addon ) {
|
||||||
|
$array[] = array(
|
||||||
|
'id' => 'addon_' . $addon_id,
|
||||||
|
'type' => 'switch',
|
||||||
|
'title' => $addon[0],
|
||||||
|
'desc' => $addon[1],
|
||||||
|
'on' => __('Activated','ultimatemember'),
|
||||||
|
'off' => __('Deactivated','ultimatemember'),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
$array = apply_filters('um_builtin_addons_options', $array );
|
||||||
|
|
||||||
|
$sections[] = array(
|
||||||
|
|
||||||
|
'icon' => 'um-faicon-plug',
|
||||||
|
'title' => __( 'Add ons','ultimatemember'),
|
||||||
|
'fields' => $array
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
return $sections;
|
||||||
|
|
||||||
|
}
|
||||||
+2
-2
@@ -78,10 +78,10 @@ class UM_Form {
|
|||||||
$form_timestamp = trim($_POST['timestamp']);
|
$form_timestamp = trim($_POST['timestamp']);
|
||||||
$live_timestamp = current_time( 'timestamp' );
|
$live_timestamp = current_time( 'timestamp' );
|
||||||
|
|
||||||
if ( $form_timestamp == '' )
|
if ( $form_timestamp == '' && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Hello, spam bot!') );
|
wp_die( __('Hello, spam bot!') );
|
||||||
|
|
||||||
if ( $live_timestamp - $form_timestamp < 3 )
|
if ( $live_timestamp - $form_timestamp < 6 && um_get_option('enable_timebot') == 1 )
|
||||||
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
wp_die( __('Whoa, slow down! You\'re seeing this message because you tried to submit a form too fast and we think you might be a spam bot. If you are a real human being please wait a few seconds before submitting the form. Thanks!') );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ class UM_Permalinks {
|
|||||||
function activate_account_via_email_link(){
|
function activate_account_via_email_link(){
|
||||||
global $ultimatemember;
|
global $ultimatemember;
|
||||||
|
|
||||||
if ( isset($_REQUEST['act']) && $_REQUEST['act'] == 'activate_via_email' && isset($_REQUEST['hash']) && strlen($_REQUEST['hash']) == 30 &&
|
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
|
isset($_REQUEST['user_id']) && is_numeric($_REQUEST['user_id']) ) { // valid token
|
||||||
|
|
||||||
um_fetch_user( $_REQUEST['user_id'] );
|
um_fetch_user( $_REQUEST['user_id'] );
|
||||||
|
|||||||
@@ -4,6 +4,8 @@ class UM_Setup {
|
|||||||
|
|
||||||
function __construct() {
|
function __construct() {
|
||||||
|
|
||||||
|
add_action('init', array(&$this, 'install_basics'), 9);
|
||||||
|
|
||||||
add_action('init', array(&$this, 'install_default_forms'), 9);
|
add_action('init', array(&$this, 'install_default_forms'), 9);
|
||||||
|
|
||||||
add_action('init', array(&$this, 'install_default_roles'), 9);
|
add_action('init', array(&$this, 'install_default_roles'), 9);
|
||||||
@@ -226,6 +228,14 @@ class UM_Setup {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @Basics
|
||||||
|
***/
|
||||||
|
function install_basics() {
|
||||||
|
if ( !get_option('__ultimatemember_sitekey') )
|
||||||
|
update_option('__ultimatemember_sitekey', str_replace( array('http://','https://'), '', sanitize_user( get_bloginfo('url') ) ) . '-' . wp_generate_password( 20, false ) );
|
||||||
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
*** @Default Forms
|
*** @Default Forms
|
||||||
***/
|
***/
|
||||||
|
|||||||
@@ -252,7 +252,8 @@ class UM_Shortcodes {
|
|||||||
$pattern_array = array(
|
$pattern_array = array(
|
||||||
'{first_name}',
|
'{first_name}',
|
||||||
'{last_name}',
|
'{last_name}',
|
||||||
'{display_name}'
|
'{display_name}',
|
||||||
|
'{user_avatar_small}',
|
||||||
);
|
);
|
||||||
|
|
||||||
$pattern_array = apply_filters('um_allowed_user_tags_patterns', $pattern_array);
|
$pattern_array = apply_filters('um_allowed_user_tags_patterns', $pattern_array);
|
||||||
@@ -265,6 +266,11 @@ class UM_Shortcodes {
|
|||||||
$usermeta = str_replace('{','',$pattern);
|
$usermeta = str_replace('{','',$pattern);
|
||||||
$usermeta = str_replace('}','',$usermeta);
|
$usermeta = str_replace('}','',$usermeta);
|
||||||
|
|
||||||
|
if ( $usermeta == 'user_avatar_small' ) {
|
||||||
|
$value = um_user('profile_photo', 40);
|
||||||
|
$str = preg_replace('/'.$pattern.'/', $value , $str );
|
||||||
|
}
|
||||||
|
|
||||||
if ( um_user( $usermeta ) ){
|
if ( um_user( $usermeta ) ){
|
||||||
$str = preg_replace('/'.$pattern.'/', um_user($usermeta) , $str );
|
$str = preg_replace('/'.$pattern.'/', um_user($usermeta) , $str );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
class UM_Admin_Tracking {
|
class UM_Tracking {
|
||||||
|
|
||||||
private $data;
|
private $data;
|
||||||
|
|
||||||
@@ -17,6 +17,8 @@ class UM_Admin_Tracking {
|
|||||||
***/
|
***/
|
||||||
private function setup_data() {
|
private function setup_data() {
|
||||||
|
|
||||||
|
global $ultimatemember;
|
||||||
|
|
||||||
$data = array();
|
$data = array();
|
||||||
|
|
||||||
// Retrieve current theme info
|
// Retrieve current theme info
|
||||||
@@ -64,6 +66,12 @@ class UM_Admin_Tracking {
|
|||||||
|
|
||||||
$data['multisite'] = ( is_multisite() ) ? 1 : 0;
|
$data['multisite'] = ( is_multisite() ) ? 1 : 0;
|
||||||
|
|
||||||
|
if ( !get_option('__ultimatemember_sitekey') ) {
|
||||||
|
$ultimatemember->setup->install_basics();
|
||||||
|
}
|
||||||
|
|
||||||
|
$data['unique_sitekey'] = get_option('__ultimatemember_sitekey');
|
||||||
|
|
||||||
$this->data = $data;
|
$this->data = $data;
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -74,14 +82,6 @@ class UM_Admin_Tracking {
|
|||||||
private function tracking_allowed() {
|
private function tracking_allowed() {
|
||||||
if ( !um_get_option('allow_tracking') )
|
if ( !um_get_option('allow_tracking') )
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if( stristr( network_site_url( '/' ), 'dev' ) !== false ||
|
|
||||||
stristr( network_site_url( '/' ), 'localhost' ) !== false ||
|
|
||||||
stristr( network_site_url( '/' ), ':8888' ) !== false // This is common with MAMP on OS X
|
|
||||||
) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,9 +100,9 @@ class UM_Admin_Tracking {
|
|||||||
if( ! $this->tracking_allowed() && ! $override )
|
if( ! $this->tracking_allowed() && ! $override )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Send a maximum of once per week
|
// Send a maximum of once per period
|
||||||
$last_send = $this->get_last_send();
|
$last_send = $this->get_last_send();
|
||||||
if( $last_send && $last_send > strtotime( '-1 week' ) )
|
if( $last_send && $last_send > strtotime( '-1 day' ) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$this->setup_data();
|
$this->setup_data();
|
||||||
@@ -118,14 +118,13 @@ class UM_Admin_Tracking {
|
|||||||
) );
|
) );
|
||||||
|
|
||||||
update_option( 'um_tracking_last_send', time() );
|
update_option( 'um_tracking_last_send', time() );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
*** @run a scheduled report
|
*** @run a scheduled report
|
||||||
***/
|
***/
|
||||||
private function schedule_send() {
|
private function schedule_send() {
|
||||||
add_action( 'um_weekly_scheduled_events', array( $this, 'send_checkin' ) );
|
add_action( 'um_daily_scheduled_events', array( $this, 'send_checkin' ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
Plugin Name: Ultimate Member
|
Plugin Name: Ultimate Member
|
||||||
Plugin URI: http://ultimatemember.com/
|
Plugin URI: http://ultimatemember.com/
|
||||||
Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
|
Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
|
||||||
Version: 1.0.71
|
Version: 1.0.76
|
||||||
Author: Ultimate Member
|
Author: Ultimate Member
|
||||||
Author URI: http://ultimatemember.com/
|
Author URI: http://ultimatemember.com/
|
||||||
*/
|
*/
|
||||||
|
|||||||
+28
-1
@@ -7,7 +7,7 @@ Tags: access control, author, authors, author profile, comments, community, comm
|
|||||||
Requires at least: 4.1
|
Requires at least: 4.1
|
||||||
Tested up to: 4.1.1
|
Tested up to: 4.1.1
|
||||||
|
|
||||||
Stable Tag: 1.0.71
|
Stable Tag: 1.0.76
|
||||||
|
|
||||||
License: GNU Version 2 or Any Later Version
|
License: GNU Version 2 or Any Later Version
|
||||||
|
|
||||||
@@ -189,6 +189,33 @@ The plugin works with popular caching plugins by automatically excluding Ultimat
|
|||||||
|
|
||||||
== Changelog ==
|
== Changelog ==
|
||||||
|
|
||||||
|
= 1.0.76: March 7, 2015 =
|
||||||
|
|
||||||
|
* New: added {user_avatar_small} tag to display user photo in menu (requires extra css work)
|
||||||
|
* Tweak: Removed !important css rules from colors and backgrounds
|
||||||
|
* Fixed: issue with content block field
|
||||||
|
|
||||||
|
= 1.0.75: March 5, 2015 =
|
||||||
|
|
||||||
|
* New: improved & modern html e-mail templates
|
||||||
|
* New: addon to transfer BuddyPress profile photos to Ultimate Member (user request)
|
||||||
|
* New: added option to turn off time bot feature (fixes conflict with plugins)
|
||||||
|
* New: added built-in addons support
|
||||||
|
* Tweak: improved backend design and css
|
||||||
|
|
||||||
|
= 1.0.74: March 4, 2015 =
|
||||||
|
|
||||||
|
* Fixed: bug with numeric validation for a field
|
||||||
|
* Fixed: bug with conditional logic rules with checkbox
|
||||||
|
|
||||||
|
= 1.0.73: March 3, 2015 =
|
||||||
|
|
||||||
|
* Tweak: general code improvements
|
||||||
|
|
||||||
|
= 1.0.72: March 2, 2015 =
|
||||||
|
|
||||||
|
* Fixed: bug with e-mail activation since last update
|
||||||
|
|
||||||
= 1.0.71: March 2, 2015 =
|
= 1.0.71: March 2, 2015 =
|
||||||
|
|
||||||
* Fixed: issue with password reset link
|
* Fixed: issue with password reset link
|
||||||
|
|||||||
@@ -1,23 +1,23 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;"><span style="display: block;color:#333"><strong>Congratulations!</strong> Your {site_name} account has been approved!</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up!<span style="display: block;">Your account is now approved.</span></div>
|
||||||
|
|
||||||
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{login_url}" style="background: #3ba1da;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 1px;border: 4px double #fff;">Login to our site</a></div>
|
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{login_url}" style="background: #555555;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 0.3px;">Login to our site</a></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #eee;padding: 0 0 15px 0;background: #fcfcfc;border-radius: 0 0 3px 3px;">
|
<div style="padding: 0 0 15px 0;">
|
||||||
|
|
||||||
<div style="background: #eee;color: #444;padding: 12px 15px; border-radius: 3px 3px 0 0;font-weight: bold;font-size: 16px;">Account Information</div>
|
<div style="background: #eee;color: #444;padding: 12px 15px; border-radius: 3px;font-weight: bold;font-size: 16px;">Account Information</div>
|
||||||
|
|
||||||
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account e-mail:</span> <span style="font-weight:bold">{email}</span></div>
|
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account e-mail:</span> <span style="font-weight:bold">{email}</span></div>
|
||||||
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account username:</span> <span style="font-weight:bold">{username}</span></div>
|
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account username:</span> <span style="font-weight:bold">{username}</span></div>
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 20px;text-align: center;line-height: 32px;color: #333;">You recently changed the password associated with your {site_name} account.</div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">You recently changed the password associated with your account.</div>
|
||||||
|
|
||||||
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{password_reset_link}" style="background: #3ba1da;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 1px;border: 4px double #fff;">Go to your Account</a></div>
|
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{user_account_link}" style="background: #555555;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 0.3px;">Go to your Account</a></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you did not make this change and believe your account has been compromised, please <a href="mailto:{admin_email}" style="color: #3ba1da;">contact us</a> immediately.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you did not make this change and believe your account has been compromised, please <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none;">contact us</a> ASAP.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up with {site_name}!<span style="display: block;color:#333">Please click the following link to activate your account.</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up!<span style="display: block;">Please click the following link to activate your account.</span></div>
|
||||||
|
|
||||||
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{account_activation_link}" style="background: #3ba1da;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 1px;border: 4px double #fff;">Activate your Account</a></div>
|
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{account_activation_link}" style="background: #555555;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 0.3px;">Activate your Account</a></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Need help? <a href="mailto:{admin_email}" style="color: #3ba1da;">contact us</a> today.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Need help? <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none;">contact us</a> today.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,19 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;"><span style="display: block;color:#333">This is an automated email to let you know your account has been deleted.</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Your account is now removed.<span style="display: block;">All your personal details and uploads have been removed.</span></div>
|
||||||
|
|
||||||
<div style="padding: 0 0 30px 0; font-size: 16px;text-align: center;line-height: 28px;">All of your personal information has been permanently deleted and you will no longer be able to login to {site_name}.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If your account has been deleted by accident please <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none">contact us</a>.</div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If your account has been deleted by accident please <a href="mailto:{admin_email}" style="color: #3ba1da;">contact us</a> immediately.</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;"><span style="display: block;color:#333">This is an automated email to let you know your {site_name} account has been deactivated.</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Your account is now deactivated.</div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you would like your account to be re-activated please <a href="mailto:{admin_email}" style="color: #3ba1da;">contact us</a>.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you want your account to be re-activated, please <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none">contact us</a>.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 20px;text-align: center;line-height: 32px;color: #333;">Thank you for signing up with {site_name}! Your account has to be manually reviewed before you can login.</div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up!<span style="display: block;">Your account has to be manually reviewed.</span></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Please allow us some time to process your request and review your information.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Please allow us some time to process your request and review your information.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;"><span style="display: block;color:#333"><strong>We apologize.</strong> Your registration request on {site_name} has been rejected.</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Your registration request has been rejected.</div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Please feel free to apply at a future date or <a href="mailto:{admin_email}" style="color: #3ba1da;">contact us</a> If you want your information to be reviewed again.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">Please feel free to apply at a future date or <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none">contact us</a> If you want your information to be reviewed again.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 20px;text-align: center;line-height: 32px;color: #333;">We received a request to reset the password for your account. If you made this request, click the link below to change your password:</div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">We received a request to reset the password for your account. If you made this request, click the link below to change your password:</div>
|
||||||
|
|
||||||
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{password_reset_link}" style="background: #3ba1da;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 1px;border: 4px double #fff;">Reset your password</a></div>
|
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{password_reset_link}" style="background: #555555;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 0.3px;">Reset your password</a></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #ddd;padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you didn't make this request, you can ignore this email or <a href="mailto:{admin_email}" style="color: #3ba1da;">report it to us</a>.</div>
|
<div style="padding: 15px;background: #eee;border-radius: 3px;text-align: center;">If you didn't make this request, ignore this email or <a href="mailto:{admin_email}" style="color: #3ba1da;text-decoration: none;">report it to us</a>.</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,23 +1,23 @@
|
|||||||
<html>
|
<html>
|
||||||
<body>
|
<body style="background: #f2f2f2;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;">
|
||||||
|
|
||||||
<div style="max-width: 600px;margin:20px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
<div style="max-width: 560px;padding: 20px;background: #ffffff;border-radius: 5px;margin:40px auto;font-family: Open Sans,Helvetica,Arial;font-size: 15px;color: #666;">
|
||||||
|
|
||||||
<div style="background: #3ba1da;padding: 0 0 0 20px;color: #fff;font-weight: normal;border-radius: 5px">
|
<div style="color: #444444;font-weight: normal;">
|
||||||
<div style="float:left;padding: 20px 0;">{site_name}</div>
|
<div style="text-align: center;font-weight:600;font-size:26px;padding: 10px 0;border-bottom: solid 3px #eeeeee;">{site_name}</div>
|
||||||
<div style="float:right;padding: 12px 12px 0 0;"><a href="{user_profile_link}" style="text-decoration: none;vertical-align: middle;color: #fff;"><img src="{user_avatar_url}" width="32" height="32" alt="" style="border-radius: 3px;border: 2px solid #fff;background: #fff;vertical-align: middle;margin-right: 10px;" />{display_name}</a></div>
|
|
||||||
<div style="clear:both"></div>
|
<div style="clear:both"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 0 30px 30px 30px;border-bottom: 4px double #ccc;">
|
<div style="padding: 0 30px 30px 30px;border-bottom: 3px solid #eeeeee;">
|
||||||
|
|
||||||
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up with {site_name}!<span style="display: block;color:#333">Your account is now active.</span></div>
|
<div style="padding: 30px 0;font-size: 24px;text-align: center;line-height: 40px;">Thank you for signing up!<span style="display: block;">Your account is now active.</span></div>
|
||||||
|
|
||||||
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{login_url}" style="background: #3ba1da;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 1px;border: 4px double #fff;">Login to our site</a></div>
|
<div style="padding: 10px 0 50px 0;text-align: center;"><a href="{login_url}" style="background: #555555;color: #fff;padding: 12px 30px;text-decoration: none;border-radius: 3px;letter-spacing: 0.3px;">Login to our site</a></div>
|
||||||
|
|
||||||
<div style="border: 1px solid #eee;padding: 0 0 15px 0;background: #fcfcfc;border-radius: 0 0 3px 3px;">
|
<div style="padding: 0 0 15px 0;">
|
||||||
|
|
||||||
<div style="background: #eee;color: #444;padding: 12px 15px; border-radius: 3px 3px 0 0;font-weight: bold;font-size: 16px;">Account Information</div>
|
<div style="background: #eee;color: #444;padding: 12px 15px; border-radius: 3px;font-weight: bold;font-size: 16px;">Account Information</div>
|
||||||
|
|
||||||
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account e-mail:</span> <span style="font-weight:bold">{email}</span></div>
|
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account e-mail:</span> <span style="font-weight:bold">{email}</span></div>
|
||||||
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account username:</span> <span style="font-weight:bold">{username}</span></div>
|
<div style="padding: 10px 15px 0 15px;color: #333;"><span style="color:#999">Your account username:</span> <span style="font-weight:bold">{username}</span></div>
|
||||||
|
|||||||
@@ -1721,6 +1721,16 @@ $this->sections[] = array(
|
|||||||
'full_width' => true,
|
'full_width' => true,
|
||||||
),
|
),
|
||||||
|
|
||||||
|
array(
|
||||||
|
'id' => 'enable_timebot',
|
||||||
|
'type' => 'switch',
|
||||||
|
'title' => __( 'Enable Time Check Security','ultimatemember' ),
|
||||||
|
'default' => 1,
|
||||||
|
'desc' => __('Turn this option off if you have a conflict with other plugins causing a spam bot message to appear unexpectedly.','ultimatemember'),
|
||||||
|
'on' => __('On','ultimatemember'),
|
||||||
|
'off' => __('Off','ultimatemember'),
|
||||||
|
),
|
||||||
|
|
||||||
array(
|
array(
|
||||||
'id' => 'disable_minify',
|
'id' => 'disable_minify',
|
||||||
'type' => 'switch',
|
'type' => 'switch',
|
||||||
|
|||||||
+19
@@ -12,6 +12,8 @@ class UM_API {
|
|||||||
|
|
||||||
add_action('init', array(&$this, 'init'), 0);
|
add_action('init', array(&$this, 'init'), 0);
|
||||||
|
|
||||||
|
add_action('init', array(&$this, 'load_addons') );
|
||||||
|
|
||||||
$this->honeypot = 'request';
|
$this->honeypot = 'request';
|
||||||
|
|
||||||
$this->available_languages = array(
|
$this->available_languages = array(
|
||||||
@@ -26,6 +28,20 @@ class UM_API {
|
|||||||
'tr_TR' => 'Türkçe',
|
'tr_TR' => 'Türkçe',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$this->addons['bp_avatar_transfer'] = array( __( 'BuddyPress Avatar Transfer','ultimatemember' ), __('This tool enables you to migrate your custom user photos from BuddyPress to use with Ultimate Member.','ultimatemember') );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*** @Load add-ons
|
||||||
|
***/
|
||||||
|
function load_addons() {
|
||||||
|
global $ultimatemember;
|
||||||
|
if ( !is_admin() ) return;
|
||||||
|
foreach( $ultimatemember->addons as $addon => $name ) {
|
||||||
|
if ( um_get_option('addon_' . $addon ) == 1 )
|
||||||
|
include_once um_path . 'addons/'.$addon.'.php';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
@@ -67,6 +83,7 @@ class UM_API {
|
|||||||
require_once um_path . 'core/um-modal.php';
|
require_once um_path . 'core/um-modal.php';
|
||||||
require_once um_path . 'core/um-cron.php';
|
require_once um_path . 'core/um-cron.php';
|
||||||
require_once um_path . 'core/um-cache.php';
|
require_once um_path . 'core/um-cache.php';
|
||||||
|
require_once um_path . 'core/um-tracking.php';
|
||||||
|
|
||||||
require_once um_path . 'core/lib/mobiledetect/Mobile_Detect.php';
|
require_once um_path . 'core/lib/mobiledetect/Mobile_Detect.php';
|
||||||
|
|
||||||
@@ -101,6 +118,7 @@ class UM_API {
|
|||||||
require_once um_path . 'core/um-filters-profile.php';
|
require_once um_path . 'core/um-filters-profile.php';
|
||||||
require_once um_path . 'core/um-filters-account.php';
|
require_once um_path . 'core/um-filters-account.php';
|
||||||
require_once um_path . 'core/um-filters-misc.php';
|
require_once um_path . 'core/um-filters-misc.php';
|
||||||
|
require_once um_path . 'core/um-filters-addons.php';
|
||||||
|
|
||||||
/* initialize UM */
|
/* initialize UM */
|
||||||
$this->rewrite = new UM_Rewrite();
|
$this->rewrite = new UM_Rewrite();
|
||||||
@@ -134,6 +152,7 @@ class UM_API {
|
|||||||
$this->modal = new UM_Modal();
|
$this->modal = new UM_Modal();
|
||||||
$this->cron = new UM_Cron();
|
$this->cron = new UM_Cron();
|
||||||
$this->cache = new UM_Cache();
|
$this->cache = new UM_Cache();
|
||||||
|
$this->tracking = new UM_Tracking();
|
||||||
|
|
||||||
$this->mobile = new Mobile_Detect;
|
$this->mobile = new Mobile_Detect;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user