*/ class UsersWP_User_Types { public static function get_register_forms() { $register_forms = (array) uwp_get_option( 'multiple_registration_forms', array() ); return $register_forms; } /** * Output the user types list or edit form. * * @param string $tab Current tab. */ public static function output( string $tab = '' ) { do_action( 'uwp_user_types_start' ); if ( isset( $_GET['form'] ) ) { self::output_edit_form( $_GET['form'] ); } else { self::display_table(); } } /** * Output the edit form for a user type. */ private static function output_edit_form( $form_type ) { if ( $form_type === 'add' ) { self::display_add_form(); } else { self::display_edit_form(); } } /** * Display the 'add' user type form. */ private static function display_add_form() { $all_pages = wp_list_pluck( get_pages(), 'post_title', 'ID' ); $user_roles = uwp_get_user_roles(); $registration_form_actions = uwp_get_registration_form_actions(); $current_role = get_option( 'default_role' ); // Remove admin role unset( $user_roles['administrator'] ); ?>

'required' ) ); if ( ! empty( $user_roles ) && is_array( $user_roles ) ) { self::render_select_field( 'multiple_registration_user_role', 'user_role', __( 'User Role to Assign:', 'userswp' ), __( 'Role to assign when user register via this form.', 'userswp' ), $user_roles, $current_role ); } self::render_select_field( 'uwp_registration_action', 'reg_action', __( 'Registration Action:', 'userswp' ), __( 'Select how registration should be handled.', 'userswp' ), $registration_form_actions, '' ); self::render_select_field( 'register_redirect_to', 'redirect_to', __( 'Redirect Page:', 'userswp' ), __( 'Set the page to redirect the user to after signing up.', 'userswp' ), self::get_redirect_options(), '', false, array( 'style' => 'display:none;' ) ); self::render_text_field( 'register_redirect_custom_url', 'custom_url', __( 'Custom Redirect URL:', 'userswp' ), __( 'Set the page to redirect the user to after signing up. If default redirect has been set then WordPress default will be used.', 'userswp' ), '', array( 'style' => 'display:none;' ) ); self::render_select_field( 'multiple_registration_gdpr_page', 'gdpr_page', __( 'GDPR Policy Page:', 'userswp' ), __( 'Page to link when GDPR policy page custom field added to form. If not set then default setting will be used.', 'userswp' ), $all_pages, '', esc_attr__( 'Select a page…', 'userswp' ) ); self::render_select_field( 'multiple_registration_tos_page', 'tos_page', __( 'TOS Page:', 'userswp' ), __( 'Page to link when Terms and Conditions custom field added to form. If not set then default setting will be used.', 'userswp' ), $all_pages, '', esc_attr__( 'Select a page…', 'userswp' ) ); ?>

prepare_items(); ?>

display(); ?>
'display:none;' ) ); self::render_text_field( 'register_redirect_custom_url', 'custom_url', __( 'Custom Redirect URL:', 'userswp' ), __( 'Set the page to redirect the user to after signing up. If default redirect has been set then WordPress default will be used.', 'userswp' ), ! empty( $current_form['custom_url'] ) ? $current_form['custom_url'] : '', array( 'style' => 'display:none;' ) ); self::render_select_field( 'multiple_registration_gdpr_page', 'gdpr_page', __( 'GDPR Policy Page:', 'userswp' ), __( 'Page to link when GDPR policy page custom field added to form. If not set then default setting will be used.', 'userswp' ), $all_pages, ! empty( $current_form['gdpr_page'] ) ? (int) $current_form['gdpr_page'] : '', esc_attr__( 'Select a page…', 'userswp' ) ); self::render_select_field( 'multiple_registration_tos_page', 'tos_page', __( 'TOS Page:', 'userswp' ), __( 'Page to link when Terms and Conditions custom field added to form. If not set then default setting will be used.', 'userswp' ), $all_pages, ! empty( $current_form['tos_page'] ) ? (int) $current_form['tos_page'] : '', esc_attr__( 'Select a page…', 'userswp' ) ); ?>
$attr_value ) { $attr_string .= ' ' . $attr . '="' . esc_attr( $attr_value ) . '"'; } ?> >
$attr_value ) { $attr_string .= ' ' . $attr . '="' . esc_attr( $attr_value ) . '"'; } ?> > select( array( 'id' => esc_attr( $id ), 'name' => $name, 'placeholder' => $placeholder, 'options' => $options, 'value' => $value, 'no_wrap' => true, 'select2' => true, 'class' => 'w-100', ), true ); ?> __( 'Last User Page', 'userswp' ), '0' => __( 'Default Redirect', 'userswp' ), '-2' => __( 'Custom Redirect', 'userswp' ), ); if ( $pages ) { foreach ( $pages as $page ) { $pages_options[ $page->ID ] = $page->post_title; } } return $pages_options; } }