From e36c3ca8418648224b54ef1c37d719468677be22 Mon Sep 17 00:00:00 2001 From: nikitozzzzzzz Date: Mon, 11 Dec 2017 09:53:38 +0200 Subject: [PATCH] - settings optimization; --- includes/admin/class-admin.php | 81 ++--- includes/admin/core/class-admin-columns.php | 26 +- .../admin/core/class-admin-forms-settings.php | 48 +++ includes/admin/core/class-admin-forms.php | 76 ++--- includes/admin/core/class-admin-menu.php | 8 +- includes/admin/core/class-admin-metabox.php | 4 +- includes/admin/core/class-admin-settings.php | 295 +++++------------- .../core/list-tables/emails-list-table.php | 4 +- includes/admin/core/packages/2.0-beta1.php | 80 ++--- includes/class-config.php | 2 +- includes/class-functions.php | 21 +- includes/class-init.php | 27 ++ includes/core/class-access.php | 32 +- includes/core/class-account.php | 6 +- includes/core/class-builtin.php | 12 +- includes/core/class-common.php | 2 +- includes/core/class-enqueue.php | 4 +- includes/core/class-fields.php | 8 +- includes/core/class-files.php | 8 +- includes/core/class-form.php | 6 +- includes/core/class-mail.php | 12 +- includes/core/class-members.php | 2 +- includes/core/class-options.php | 94 ++++++ includes/core/class-permalinks.php | 18 +- includes/core/class-plugin-updater.php | 2 +- includes/core/class-profile.php | 12 +- includes/core/class-rewrite.php | 10 +- includes/core/class-tracking.php | 2 +- includes/core/class-user.php | 10 +- includes/core/um-actions-account.php | 6 +- includes/core/um-actions-form.php | 12 +- includes/core/um-actions-login.php | 2 +- includes/core/um-actions-password.php | 18 +- includes/core/um-actions-profile.php | 20 +- includes/core/um-actions-register.php | 7 +- includes/core/um-actions-save-profile.php | 2 +- includes/core/um-actions-wpadmin.php | 94 ------ includes/core/um-filters-account.php | 2 +- includes/core/um-filters-avatars.php | 14 +- includes/core/um-filters-fields.php | 8 +- includes/core/um-filters-language.php | 2 +- includes/core/um-filters-login.php | 2 +- includes/core/um-filters-members.php | 4 +- includes/core/um-filters-profile.php | 2 +- includes/core/um-filters-user.php | 4 +- includes/core/um-navmenu.php | 2 +- includes/lib/upload/um-image-upload.php | 2 +- includes/um-short-functions.php | 36 +-- templates/account.php | 8 +- templates/members-grid.php | 8 +- uninstall.php | 4 +- 51 files changed, 540 insertions(+), 631 deletions(-) create mode 100644 includes/admin/core/class-admin-forms-settings.php create mode 100644 includes/core/class-options.php diff --git a/includes/admin/class-admin.php b/includes/admin/class-admin.php index 5c9dfacf..93533b09 100644 --- a/includes/admin/class-admin.php +++ b/includes/admin/class-admin.php @@ -6,58 +6,59 @@ if ( ! defined( 'ABSPATH' ) ) exit; if ( ! class_exists( 'Admin' ) ) { - class Admin { - var $templates_path; + class Admin { + var $templates_path; - function __construct() { - $this->templates_path = um_path . 'includes/admin/templates/'; + /** + * Admin constructor. + */ + function __construct() { + $this->templates_path = um_path . 'includes/admin/templates/'; - add_action( 'admin_init', array( &$this, 'admin_init' ), 0 ); + add_action( 'admin_init', array( &$this, 'admin_init' ), 0 ); - add_action( 'admin_notices', array( $this, 'check_wrong_install_folder' ), 3 ); - - } + add_action( 'admin_notices', array( $this, 'check_wrong_install_folder' ), 3 ); + } + /** + * Check if plugin is installed with correct folder + */ + function check_wrong_install_folder() { + $invalid_folder = false; - function check_wrong_install_folder() { - $invalid_folder = false; + $slug_array = explode( '/', um_plugin ); + if ( $slug_array[0] != 'ultimate-member' ) + $invalid_folder = true; - $slug_array = explode( '/', um_plugin ); - if ( $slug_array[0] != 'ultimate-member' ) - $invalid_folder = true; + if ( $invalid_folder ) { ?> - if ( $invalid_folder ) { ?> +
+

+ %s with wrong folder name. Correct folder name is "ultimate-member".', 'ultimate-member' ), ultimatemember_plugin_name ) ?> +

+
-
-

- %s with wrong folder name. Correct folder name is "ultimate-member".', 'ultimate-member' ), ultimatemember_plugin_name ) ?> -

-
- - config()->core_pages as $page_key => $page_value ) { + $page_id = UM()->options()->get( apply_filters( 'um_core_page_id_filter', 'core_' . $page_key ) ); - foreach ( UM()->config()->core_pages as $page_key => $page_value ) { + if ( $page_id == $post->ID ) { + $post_states['um_core_page_' . $page_key] = sprintf( 'UM %s', $page_value['title'] ); + } + } - $page_id = UM()->um_get_option( apply_filters( 'um_core_page_id_filter', 'core_' . $page_key ) ); - - if ( $page_id == $post->ID ) - $post_states['um_core_page_' . $page_key] = sprintf('UM %s', $page_value['title'] ) ; - } - - return $post_states; - } + return $post_states; + } } } \ No newline at end of file diff --git a/includes/admin/core/class-admin-forms-settings.php b/includes/admin/core/class-admin-forms-settings.php new file mode 100644 index 00000000..18db32e0 --- /dev/null +++ b/includes/admin/core/class-admin-forms-settings.php @@ -0,0 +1,48 @@ +options()->get_default( $field_data['id'] ); + + if ( $field_data['type'] == 'checkbox' || $field_data['type'] == 'multi_checkbox' ) { + if ( isset( $field_data['value'] ) ) { + return $field_data['value']; + } else { + $value = UM()->options()->get( $field_data['id'] ); + return '' !== $value ? $value : $default; + } + } else { + if ( isset( $field_data['value'] ) ) { + return $field_data['value']; + } else { + $value = UM()->options()->get( $field_data['id'] ); + return isset( $value ) ? $value : $default; + } + } + } + + } +} \ No newline at end of file diff --git a/includes/admin/core/class-admin-forms.php b/includes/admin/core/class-admin-forms.php index eff767ed..7221e616 100644 --- a/includes/admin/core/class-admin-forms.php +++ b/includes/admin/core/class-admin-forms.php @@ -281,8 +281,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $value_attr = ' value="' . $value . '" '; $html = ""; @@ -318,8 +317,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $value_attr = ' value="' . $value . '" '; $html = ""; @@ -356,8 +354,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $value_attr = ' value="' . $value . '" '; $html = ""; @@ -378,8 +375,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $value_attr = ' value="' . $value . '" '; $html = '' . __( 'Choose Icon', 'ultimate-member' ) . ' @@ -432,8 +428,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $value_attr = ' value="' . $value . '" '; $html = ""; @@ -515,8 +510,8 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); + $html = ""; return $html; @@ -545,8 +540,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = $field_data['id']; $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); ob_start(); wp_editor( $value, @@ -593,11 +587,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = ( isset( $field_data['value'] ) && '' !== $field_data['value'] ) ? $field_data['value'] : $default; - /*$value = isset( $field_data['value'] ) ? $field_data['value'] : $default; - $value = ! empty( $field_data['value'] ) ? $field_data['value'] : 0; - */ + $value = $this->get_field_value( $field_data ); $html = " "; @@ -632,11 +622,11 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = $field_data['id']; $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; + $hidden_name_attr = ' name="' . $name . '" '; $name = $name . ( ! empty( $field_data['multi'] ) ? '[]' : '' ); $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $value = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $value = $this->get_field_value( $field_data ); $options = ''; foreach ( $field_data['options'] as $key=>$option ) { @@ -651,7 +641,11 @@ if ( ! class_exists( 'Admin_Forms' ) ) { } } - $html = ""; + $hidden = ''; + if ( ! empty( $multiple ) ) { + $hidden = ""; + } + $html = "$hidden"; return $html; } @@ -683,8 +677,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = "{$name}[]"; $name_attr = ' name="' . $name . '" '; - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $values = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $values = $this->get_field_value( $field_data ); $options = ''; foreach ( $field_data['options'] as $key=>$option ) { @@ -746,8 +739,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = $field_data['id']; $name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name; - $default = isset( $field_data['default'] ) ? $field_data['default'] : array(); - $values = ( isset( $field_data['value'] ) && '' !== $field_data['value'] ) ? $field_data['value'] : $default; + $values = $this->get_field_value( $field_data ); $i = 0; $html = ''; @@ -804,10 +796,7 @@ if ( ! class_exists( 'Admin_Forms' ) ) { $name = "{$name}[]"; $name_attr = ' name="' . $name . '" '; - //$values = ! empty( $field_data['value'] ) ? $field_data['value'] : ( ! empty( $field_data['default'] ) ? $field_data['default'] : '' ); - - $default = isset( $field_data['default'] ) ? $field_data['default'] : ''; - $values = isset( $field_data['value'] ) ? $field_data['value'] : $default; + $values = $this->get_field_value( $field_data ); $html = ""; $html .= "