mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-06-05 15:09:37 +09:00
- strict typing with UM settings;
- wpcs; - hookdocs;
This commit is contained in:
+99
-123
@@ -662,123 +662,85 @@ if ( ! class_exists( 'um\Config' ) ) {
|
||||
$this->permalinks = $this->get_core_pages();
|
||||
|
||||
$this->default_roles_metadata = array(
|
||||
/*
|
||||
* All caps map
|
||||
*
|
||||
* '_um_can_access_wpadmin' => 1,
|
||||
'_um_can_not_see_adminbar' => 0,
|
||||
'_um_can_edit_everyone' => 1,
|
||||
'_um_can_edit_roles' => '',
|
||||
'_um_can_delete_everyone' => 1,
|
||||
'_um_can_delete_roles' => '',
|
||||
'_um_after_delete' => '',
|
||||
'_um_delete_redirect_url' => '',
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_redirect_homepage' => '',
|
||||
'_um_after_login' => 'redirect_admin',
|
||||
'_um_login_redirect_url' => '',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_logout_redirect_url' => '',
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_view_roles' => '',
|
||||
'_um_can_make_private_profile' => 1,
|
||||
'_um_can_access_private_profile' => 1,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'_um_auto_approve_url' => '',
|
||||
'_um_login_email_activate' => '',
|
||||
'_um_checkmail_action' => '',
|
||||
'_um_checkmail_message' => '',
|
||||
'_um_checkmail_url' => '',
|
||||
'_um_url_email_activate' => '',
|
||||
'_um_pending_action' => '',
|
||||
'_um_pending_message' => '',
|
||||
'_um_pending_url' => '',
|
||||
*
|
||||
* */
|
||||
|
||||
|
||||
'subscriber' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'subscriber' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
),
|
||||
'author' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'author' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
),
|
||||
'contributor' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'contributor' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
),
|
||||
'editor' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'editor' => array(
|
||||
'_um_can_access_wpadmin' => 0,
|
||||
'_um_can_not_see_adminbar' => 1,
|
||||
'_um_can_edit_everyone' => 0,
|
||||
'_um_can_delete_everyone' => 0,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_after_login' => 'redirect_profile',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 0,
|
||||
'_um_can_access_private_profile' => 0,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
),
|
||||
'administrator' => array(
|
||||
'_um_can_access_wpadmin' => 1,
|
||||
'_um_can_not_see_adminbar' => 0,
|
||||
'_um_can_edit_everyone' => 1,
|
||||
'_um_can_delete_everyone' => 1,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_after_login' => 'redirect_admin',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 1,
|
||||
'_um_can_access_private_profile' => 1,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
'_um_can_access_wpadmin' => 1,
|
||||
'_um_can_not_see_adminbar' => 0,
|
||||
'_um_can_edit_everyone' => 1,
|
||||
'_um_can_delete_everyone' => 1,
|
||||
'_um_can_edit_profile' => 1,
|
||||
'_um_can_delete_profile' => 1,
|
||||
'_um_default_homepage' => 1,
|
||||
'_um_after_login' => 'redirect_admin',
|
||||
'_um_after_logout' => 'redirect_home',
|
||||
'_um_can_view_all' => 1,
|
||||
'_um_can_make_private_profile' => 1,
|
||||
'_um_can_access_private_profile' => 1,
|
||||
'_um_status' => 'approved',
|
||||
'_um_auto_approve_act' => 'redirect_profile',
|
||||
),
|
||||
);
|
||||
|
||||
@@ -826,20 +788,34 @@ if ( ! class_exists( 'um\Config' ) ) {
|
||||
return $permalink;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @todo make config class not cycled
|
||||
*/
|
||||
function set_core_page() {
|
||||
$this->core_pages = apply_filters( 'um_core_pages', array(
|
||||
'user' => array( 'title' => __( 'User', 'ultimate-member' ) ),
|
||||
'login' => array( 'title' => __( 'Login', 'ultimate-member' ) ),
|
||||
'register' => array( 'title' => __( 'Register', 'ultimate-member' ) ),
|
||||
'members' => array( 'title' => __( 'Members', 'ultimate-member' ) ),
|
||||
'logout' => array( 'title' => __( 'Logout', 'ultimate-member' ) ),
|
||||
'account' => array( 'title' => __( 'Account', 'ultimate-member' ) ),
|
||||
'password-reset' => array( 'title' => __( 'Password Reset', 'ultimate-member' ) ),
|
||||
) );
|
||||
public function set_core_page() {
|
||||
$this->core_pages = array(
|
||||
'user' => array(
|
||||
'title' => __( 'User', 'ultimate-member' ),
|
||||
),
|
||||
'login' => array(
|
||||
'title' => __( 'Login', 'ultimate-member' ),
|
||||
),
|
||||
'register' => array(
|
||||
'title' => __( 'Register', 'ultimate-member' ),
|
||||
),
|
||||
'members' => array(
|
||||
'title' => __( 'Members', 'ultimate-member' ),
|
||||
),
|
||||
'logout' => array(
|
||||
'title' => __( 'Logout', 'ultimate-member' ),
|
||||
),
|
||||
'account' => array(
|
||||
'title' => __( 'Account', 'ultimate-member' ),
|
||||
),
|
||||
'password-reset' => array(
|
||||
'title' => __( 'Password Reset', 'ultimate-member' ),
|
||||
),
|
||||
);
|
||||
$this->core_pages = apply_filters( 'um_core_pages', $this->core_pages );
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+38
-50
@@ -235,7 +235,6 @@ if ( ! class_exists( 'UM' ) ) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Loading UM textdomain
|
||||
*
|
||||
@@ -246,71 +245,61 @@ if ( ! class_exists( 'UM' ) ) {
|
||||
$language_locale = get_user_locale();
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
* Filters the language locale before loading textdomain.
|
||||
*
|
||||
* @type filter
|
||||
* @title um_language_locale
|
||||
* @description Change UM language locale
|
||||
* @input_vars
|
||||
* [{"var":"$locale","type":"string","desc":"UM language locale"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_language_locale', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_language_locale', 'my_language_locale', 10, 1 );
|
||||
* function my_language_locale( $locale ) {
|
||||
* // your code here
|
||||
* return $locale;
|
||||
* @since 1.3.x
|
||||
* @hook um_language_locale
|
||||
*
|
||||
* @param {string} $language_locale Current language locale.
|
||||
*
|
||||
* @return {string} Maybe changed language locale.
|
||||
*
|
||||
* @example <caption>Change UM language locale.</caption>
|
||||
* function my_um_language_locale( $language_locale ) {
|
||||
* $language_locale = 'es_ES';
|
||||
* return $language_locale;
|
||||
* }
|
||||
* ?>
|
||||
* add_filter( 'um_language_locale', 'my_um_language_locale' );
|
||||
*/
|
||||
$language_locale = apply_filters( 'um_language_locale', $language_locale );
|
||||
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
* Filters the plugin's textdomain.
|
||||
*
|
||||
* @type filter
|
||||
* @title um_language_textdomain
|
||||
* @description Change UM textdomain
|
||||
* @input_vars
|
||||
* [{"var":"$domain","type":"string","desc":"UM Textdomain"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_language_textdomain', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_language_textdomain', 'my_textdomain', 10, 1 );
|
||||
* function my_textdomain( $domain ) {
|
||||
* // your code here
|
||||
* return $domain;
|
||||
* @param {string} $textdomain Plugin's textdomain.
|
||||
*
|
||||
* @return {string} Maybe changed plugin's textdomain.
|
||||
*
|
||||
* @since 1.3.x
|
||||
* @hook um_language_textdomain
|
||||
*
|
||||
* @example <caption>Change UM language locale.</caption>
|
||||
* function my_um_language_textdomain( $textdomain ) {
|
||||
* $language_locale = 'ultimate-member-custom';
|
||||
* return $textdomain;
|
||||
* }
|
||||
* ?>
|
||||
* add_filter( 'um_language_textdomain', 'my_um_language_textdomain' );
|
||||
*/
|
||||
$language_domain = apply_filters( 'um_language_textdomain', 'ultimate-member' );
|
||||
|
||||
$language_file = WP_LANG_DIR . '/plugins/' . $language_domain . '-' . $language_locale . '.mo';
|
||||
|
||||
/**
|
||||
* UM hook
|
||||
* Filters the path to the language file (*.mo).
|
||||
*
|
||||
* @type filter
|
||||
* @title um_language_file
|
||||
* @description Change UM language file path
|
||||
* @input_vars
|
||||
* [{"var":"$language_file","type":"string","desc":"UM language file path"}]
|
||||
* @change_log
|
||||
* ["Since: 2.0"]
|
||||
* @usage add_filter( 'um_language_file', 'function_name', 10, 1 );
|
||||
* @example
|
||||
* <?php
|
||||
* add_filter( 'um_language_file', 'my_language_file', 10, 1 );
|
||||
* function my_language_file( $language_file ) {
|
||||
* // your code here
|
||||
* @param {string} $language_file Default path to the language file.
|
||||
*
|
||||
* @return {string} Language file path.
|
||||
*
|
||||
* @since 1.3.x
|
||||
* @hook um_language_file
|
||||
*
|
||||
* @example <caption>Change UM language file path.</caption>
|
||||
* function my_um_language_file( $language_file ) {
|
||||
* $language_file = '{path-to-language-file}';
|
||||
* return $language_file;
|
||||
* }
|
||||
* ?>
|
||||
* add_filter( 'um_language_file', 'my_um_language_file' );
|
||||
*/
|
||||
$language_file = apply_filters( 'um_language_file', $language_file );
|
||||
|
||||
@@ -321,7 +310,6 @@ if ( ! class_exists( 'UM' ) ) {
|
||||
load_textdomain( $language_domain, $language_file );
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 1.3.x active extensions deactivate for properly running 2.0.x AJAX upgrades
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user