Update 1.0.76

This commit is contained in:
ultimatemember
2015-03-07 13:07:49 +02:00
parent 6ff2da7672
commit 22d5c2d24a
41 changed files with 453 additions and 242 deletions
+1 -1
View File
@@ -179,7 +179,7 @@
update_option('um_tracking_notice', 1 );
$tracking = new UM_Admin_Tracking();
$tracking = new UM_Tracking();
$tracking->send_checkin(true);
exit( wp_redirect( remove_query_arg('um_adm_action') ) );
+1 -1
View File
@@ -154,7 +154,7 @@ class UM_Admin_Dashboard {
function admin_page() {
$page = $_REQUEST['page'];
if ( $page == 'ultimatemember' ) {
if ( $page == 'ultimatemember' && !isset($_REQUEST['um-addon']) ) {
?>
+3 -3
View File
@@ -428,15 +428,15 @@ class UM_Admin_Metabox {
}
// 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;
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 );
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 );
echo '</div>';
+1 -1
View File
@@ -52,7 +52,7 @@
$this->args = array(
'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
'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
-158
View File
@@ -1,158 +0,0 @@
<?php
class UM_Admin_Tracking {
private $data;
public function __construct() {
$this->schedule_send();
add_action( 'admin_notices', array( $this, 'admin_notices' ), 10 );
}
/***
*** @setup info array
***/
private function setup_data() {
$data = array();
// Retrieve current theme info
if ( get_bloginfo( 'version' ) < '3.4' ) {
$theme_data = get_theme_data( get_stylesheet_directory() . '/style.css' );
$theme = $theme_data['Name'];
$theme_ver = $theme_data['Version'];
} else {
$theme_data = wp_get_theme();
$theme = $theme_data->Name;
$theme_ver = $theme_data->Version;
}
$data['url'] = home_url();
$data['theme'] = $theme;
$data['theme_version'] = $theme_ver;
$data['wp_version'] = get_bloginfo( 'version' );
$data['version'] = ultimatemember_version;
$result = count_users();
$data['users_count'] = $result['total_users'];
// Retrieve current plugin information
if( ! function_exists( 'get_plugins' ) ) {
include ABSPATH . '/wp-admin/includes/plugin.php';
}
$plugins = array_keys( get_plugins() );
$active_plugins = get_option( 'active_plugins', array() );
foreach ( $plugins as $key => $plugin ) {
if ( in_array( $plugin, $active_plugins ) ) {
// Remove active plugins from list so we can show active and inactive separately
unset( $plugins[ $key ] );
}
}
$data['active_plugins'] = $active_plugins;
$data['inactive_plugins'] = $plugins;
$data['language'] = get_bloginfo('language');
$data['multisite'] = ( is_multisite() ) ? 1 : 0;
$this->data = $data;
}
/***
*** @check if tracking is allowed
***/
private function tracking_allowed() {
if ( !um_get_option('allow_tracking') )
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;
}
/***
*** @get last send time
***/
private function get_last_send() {
return get_option( 'um_tracking_last_send' );
}
/***
*** @send a report
***/
public function send_checkin( $override = false ) {
if( ! $this->tracking_allowed() && ! $override )
return;
// Send a maximum of once per week
$last_send = $this->get_last_send();
if( $last_send && $last_send > strtotime( '-1 week' ) )
return;
$this->setup_data();
$request = wp_remote_post( 'https://ultimatemember.com/?um_action=checkin', array(
'method' => 'POST',
'timeout' => 20,
'redirection' => 5,
'httpversion' => '1.0',
'blocking' => true,
'body' => $this->data,
'user-agent' => 'UM/' . ultimatemember_version . '; ' . get_bloginfo( 'url' ),
) );
update_option( 'um_tracking_last_send', time() );
}
/***
*** @run a scheduled report
***/
private function schedule_send() {
add_action( 'um_weekly_scheduled_events', array( $this, 'send_checkin' ) );
}
/***
*** @show admin notices
***/
public function admin_notices() {
if( ! current_user_can( 'manage_options' ) )
return;
$hide_notice = get_option('um_tracking_notice');
if ( $hide_notice )
return;
$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" 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="https://ultimatemember.com/tracking/" target="_blank">here</a> to see what data we track.', 'ultimatemember' );
echo '</p>';
echo '<p><a href="' . esc_url( $optin_url ) . '" class="button button-primary">' . __( 'Allow tracking', 'ultimatemember' ) . '</a>';
echo '&nbsp;<a href="' . esc_url( $optout_url ) . '" class="button-secondary">' . __( 'Do not allow tracking', 'ultimatemember' ) . '</a></p></div>';
}
}