Skip to:
Content

BuddyPress.org

Ticket #7348: 7348.3.patch

File 7348.3.patch, 18.3 KB (added by mercime, 4 years ago)
  • src/bp-templates/bp-legacy/buddypress/members/register.php

     
    182182                                                        do_action( 'bp_custom_profile_edit_fields_pre_visibility' );
    183183
    184184                                                        if ( bp_current_user_can( 'bp_xprofile_change_field_visibility' ) ) : ?>
    185                                                                 <p class="field-visibility-settings-toggle" id="field-visibility-settings-toggle-<?php bp_the_profile_field_id() ?>">
     185                                                                <p class="field-visibility-settings-toggle" id="field-visibility-settings-toggle-<?php bp_the_profile_field_id() ?>"><span id="<?php bp_the_profile_field_input_name(); ?>-2">
    186186                                                                        <?php
    187187                                                                        printf(
    188188                                                                                __( 'This field can be seen by: %s', 'buddypress' ),
     
    189189                                                                                '<span class="current-visibility-level">' . bp_get_the_profile_field_visibility_level_label() . '</span>'
    190190                                                                        );
    191191                                                                        ?>
    192                                                                         <button type="button" class="visibility-toggle-link"><?php _ex( 'Change', 'Change profile field visibility level', 'buddypress' ); ?></button>
     192                                                                        </span>
     193                                                                        <button type="button" class="visibility-toggle-link" aria-describedby="<?php bp_the_profile_field_input_name(); ?>-2" aria-expanded="false" aria-label="<?php esc_attr_e( 'Change profile field visibility level', 'buddypress' ); ?>"><?php _ex( 'Change', 'Change profile field visibility level', 'buddypress' ); ?></button>
    193194                                                                </p>
    194195
     196
    195197                                                                <div class="field-visibility-settings" id="field-visibility-settings-<?php bp_the_profile_field_id() ?>">
    196198                                                                        <fieldset>
    197199                                                                                <legend><?php _e( 'Who can see this field?', 'buddypress' ) ?></legend>
     
    199201                                                                                <?php bp_profile_visibility_radio_buttons() ?>
    200202
    201203                                                                        </fieldset>
    202                                                                         <button type="button" class="field-visibility-settings-close"><?php _e( 'Close', 'buddypress' ) ?></button>
     204                                                                        <button type="button" class="field-visibility-settings-close" aria-label="<?php esc_attr_e( 'Close profile field visibility level fieldset', 'buddypress' ); ?>"><?php _e( 'Close', 'buddypress' ) ?></button>
    203205
    204206                                                                </div>
    205207                                                        <?php else : ?>
     
    222224                                                         */
    223225                                                        do_action( 'bp_custom_profile_edit_fields' ); ?>
    224226
    225                                                         <p class="description"><?php bp_the_profile_field_description(); ?></p>
     227                                                        </fieldset>
    226228
    227229                                                </div>
    228230
  • src/bp-templates/bp-legacy/buddypress/members/single/profile/edit.php

     
    5252                                ?>
    5353
    5454                                <?php if ( bp_current_user_can( 'bp_xprofile_change_field_visibility' ) ) : ?>
    55                                         <p class="field-visibility-settings-toggle" id="field-visibility-settings-toggle-<?php bp_the_profile_field_id() ?>">
     55                                        <p class="field-visibility-settings-toggle" id="field-visibility-settings-toggle-<?php bp_the_profile_field_id() ?>"><span id="<?php bp_the_profile_field_input_name(); ?>-2">
    5656                                                <?php
    5757                                                printf(
    5858                                                        __( 'This field can be seen by: %s', 'buddypress' ),
     
    5959                                                        '<span class="current-visibility-level">' . bp_get_the_profile_field_visibility_level_label() . '</span>'
    6060                                                );
    6161                                                ?>
    62                                                 <button type="button" class="visibility-toggle-link"><?php _e( 'Change', 'buddypress' ); ?></button>
     62                                                </span>
     63                                                <button type="button" class="visibility-toggle-link" aria-describedby="<?php bp_the_profile_field_input_name(); ?>-2" aria-expanded="false" aria-label="<?php esc_attr_e( 'Change profile field visibility level', 'buddypress' ); ?>"><?php _ex( 'Change', 'Change profile field visibility level', 'buddypress' ); ?></button>
    6364                                        </p>
    6465
    6566                                        <div class="field-visibility-settings" id="field-visibility-settings-<?php bp_the_profile_field_id() ?>">
     
    6970                                                        <?php bp_profile_visibility_radio_buttons() ?>
    7071
    7172                                                </fieldset>
    72                                                 <button type="button" class="field-visibility-settings-close"><?php _e( 'Close', 'buddypress' ) ?></button>
     73                                                <button type="button" class="field-visibility-settings-close" aria-label="<?php esc_attr_e( 'Close profile field visibility level panel', 'buddypress' ); ?>"><?php _e( 'Close', 'buddypress' ) ?></button>
    7374                                        </div>
    7475                                <?php else : ?>
    7576                                        <div class="field-visibility-settings-notoggle" id="field-visibility-settings-toggle-<?php bp_the_profile_field_id() ?>">
     
    9192                                 */
    9293                                do_action( 'bp_custom_profile_edit_fields' ); ?>
    9394
    94                                 <p class="description"><?php bp_the_profile_field_description(); ?></p>
     95                                </fieldset>
     96
    9597                        </div>
    9698
    9799                <?php endwhile; ?>
  • src/bp-templates/bp-legacy/js/buddypress.js

     
    11851185        jq( '.visibility-toggle-link' ).on( 'click', function( event ) {
    11861186                event.preventDefault();
    11871187
    1188                 jq( this ).parent().hide().addClass( 'field-visibility-settings-hide' )
     1188                jq( this ).attr( 'aria-expanded', 'true' ).parent().hide().addClass( 'field-visibility-settings-hide' )
    11891189                        .siblings( '.field-visibility-settings' ).show().addClass( 'field-visibility-settings-open' );
    11901190        } );
    11911191
     
    11921192        jq( '.field-visibility-settings-close' ).on( 'click', function( event ) {
    11931193                event.preventDefault();
    11941194
     1195                jq( '.visibility-toggle-link' ).attr( 'aria-expanded', 'false' );
     1196
    11951197                var settings_div = jq( this ).parent(),
    11961198                        vis_setting_text = settings_div.find( 'input:checked' ).parent().text();
    11971199
  • src/bp-xprofile/bp-xprofile-template.php

     
    12821282                // Parse optional arguments.
    12831283                $r = bp_parse_args( $args, array(
    12841284                        'field_id'     => bp_get_the_profile_field_id(),
    1285                         'before'       => '<ul class="radio">',
    1286                         'after'        => '</ul>',
    1287                         'before_radio' => '<li class="%s">',
    1288                         'after_radio'  => '</li>',
     1285                        'before'       => '<div class="radio">',
     1286                        'after'        => '</div>',
     1287                        'before_radio' => '',
     1288                        'after_radio'  => '',
    12891289                        'class'        => 'bp-xprofile-visibility'
    12901290                ), 'xprofile_visibility_radio_buttons' );
    12911291
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-checkbox.php

     
    7373                                <?php bp_the_profile_field_required_label(); ?>
    7474                        </legend>
    7575
     76                        <?php if ( bp_get_the_profile_field_description() ) : ?>
     77                                <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     78                        <?php endif; ?>
     79
    7680                        <?php
    7781
    7882                        /** This action is documented in bp-xprofile/bp-xprofile-classes */
     
    8286                                'user_id' => $user_id
    8387                        ) ); ?>
    8488
    85                 </fieldset>
    86 
    8789                <?php
    8890        }
    8991
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-datebox.php

     
    8181                ) ); ?>
    8282
    8383                <fieldset class="datebox">
    84 
    8584                        <legend>
    8685                                <?php bp_the_profile_field_name(); ?>
    8786                                <?php bp_the_profile_field_required_label(); ?>
    8887                        </legend>
    8988
     89                        <?php if ( bp_get_the_profile_field_description() ) : ?>
     90                                <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     91                        <?php endif; ?>
     92
    9093                        <div class="input-options datebox-selects">
    9194
    9295                                <?php
     
    138141
    139142                        </div>
    140143
    141                 </fieldset>
    142144        <?php
    143145        }
    144146
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-multiselectbox.php

     
    7373                        'name'     => bp_get_the_profile_field_input_name() . '[]',
    7474                ) ); ?>
    7575
    76                 <label for="<?php bp_the_profile_field_input_name(); ?>[]">
     76                <fieldset class="multiselectbox">
     77                <legend>
    7778                        <?php bp_the_profile_field_name(); ?>
    7879                        <?php bp_the_profile_field_required_label(); ?>
    79                 </label>
     80                </legend>
    8081
     82                <label for="<?php bp_the_profile_field_input_name(); ?>[]" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     83
    8184                <?php
    8285
    8386                /** This action is documented in bp-xprofile/bp-xprofile-classes */
    8487                do_action( bp_get_the_profile_field_errors_action() ); ?>
    8588
    86                 <select <?php echo $this->get_edit_field_html_elements( $r ); ?>>
     89                <select <?php echo $this->get_edit_field_html_elements( $r ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3">
    8790                        <?php bp_the_profile_field_options( array(
    8891                                'user_id' => $user_id
    8992                        ) ); ?>
    9093                </select>
    9194
     95                <?php if ( bp_get_the_profile_field_description() ) : ?>
     96                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     97                <?php endif; ?>
     98
    9299                <?php if ( ! bp_get_the_profile_field_is_required() ) : ?>
    93100
    94                         <a class="clear-value" href="javascript:clear( '<?php echo esc_js( bp_get_the_profile_field_input_name() ); ?>[]' );">
     101                        <a class="clear-value" href="javascript:clear( '<?php echo esc_js( bp_get_the_profile_field_input_name() ); ?>[]' );" role="button">
    95102                                <?php esc_html_e( 'Clear', 'buddypress' ); ?>
    96103                        </a>
    97104
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-number.php

     
    6565                        'value' =>  bp_get_the_profile_field_edit_value()
    6666                ) ); ?>
    6767
    68                 <label for="<?php bp_the_profile_field_input_name(); ?>">
     68                <fieldset class="number-type">
     69                <legend>
    6970                        <?php bp_the_profile_field_name(); ?>
    7071                        <?php bp_the_profile_field_required_label(); ?>
    71                 </label>
     72                </legend>
    7273
     74                <label for="<?php bp_the_profile_field_input_name(); ?>" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     75
    7376                <?php
    7477
    7578                /** This action is documented in bp-xprofile/bp-xprofile-classes */
    7679                do_action( bp_get_the_profile_field_errors_action() ); ?>
    7780
    78                 <input <?php echo $this->get_edit_field_html_elements( $r ); ?>>
     81                <input <?php echo $this->get_edit_field_html_elements( $r ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3">
    7982
     83                <?php if ( bp_get_the_profile_field_description() ) : ?>
     84                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     85                <?php endif; ?>
     86
    8087                <?php
    8188        }
    8289
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-radiobutton.php

     
    6666                } ?>
    6767
    6868                <fieldset class="radio">
    69 
    7069                        <legend>
    7170                                <?php bp_the_profile_field_name(); ?>
    7271                                <?php bp_the_profile_field_required_label(); ?>
    7372                        </legend>
    7473
     74                        <?php if ( bp_get_the_profile_field_description() ) : ?>
     75                                <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     76                        <?php endif; ?>
     77
    7578                        <?php
    7679
    7780                        /** This action is documented in bp-xprofile/bp-xprofile-classes */
     
    8790
    8891                        <?php endif; ?>
    8992
    90                 </fieldset>
    91 
    9293                <?php
    9394        }
    9495
     
    176177                        return;
    177178                } ?>
    178179
    179                 <a class="clear-value" href="javascript:clear( '<?php echo esc_js( bp_get_the_profile_field_input_name() ); ?>' );">
     180                <a class="clear-value" href="javascript:clear( '<?php echo esc_js( bp_get_the_profile_field_input_name() ); ?>' );" role="button">
    180181                        <?php esc_html_e( 'Clear', 'buddypress' ); ?>
    181182                </a>
    182183
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-selectbox.php

     
    6565                        $user_id = bp_displayed_user_id();
    6666                } ?>
    6767
    68                 <label for="<?php bp_the_profile_field_input_name(); ?>">
     68                <fieldset class="selectbox">
     69                <legend>
    6970                        <?php bp_the_profile_field_name(); ?>
    7071                        <?php bp_the_profile_field_required_label(); ?>
    71                 </label>
     72                </legend>
    7273
     74                <label for="<?php bp_the_profile_field_input_name(); ?>" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     75
    7376                <?php
    7477
    7578                /** This action is documented in bp-xprofile/bp-xprofile-classes */
    7679                do_action( bp_get_the_profile_field_errors_action() ); ?>
    7780
    78                 <select <?php echo $this->get_edit_field_html_elements( $raw_properties ); ?>>
     81                <select <?php echo $this->get_edit_field_html_elements( $raw_properties ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3">
    7982                        <?php bp_the_profile_field_options( array( 'user_id' => $user_id ) ); ?>
    8083                </select>
    8184
     85                <?php if ( bp_get_the_profile_field_description() ) : ?>
     86                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     87                <?php endif; ?>
     88
    8289                <?php
    8390        }
    8491
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-textarea.php

     
    6363
    6464                $richtext_enabled = bp_xprofile_is_richtext_enabled_for_field(); ?>
    6565
    66                 <label for="<?php bp_the_profile_field_input_name(); ?>">
     66                <fieldset class="textarea">
     67                <legend>
    6768                        <?php bp_the_profile_field_name(); ?>
    6869                        <?php bp_the_profile_field_required_label(); ?>
    69                 </label>
     70                </legend>
    7071
     72                <?php if ( bp_get_the_profile_field_description() ) : ?>
     73                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     74                <?php endif; ?>
     75
     76                <label for="<?php bp_the_profile_field_input_name(); ?>" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     77
    7178                <?php
    7279
    7380                /** This action is documented in bp-xprofile/bp-xprofile-classes */
     
    8188
    8289                        ?>
    8390
    84                         <textarea <?php echo $this->get_edit_field_html_elements( $r ); ?>><?php bp_the_profile_field_edit_value(); ?></textarea>
     91                        <textarea <?php echo $this->get_edit_field_html_elements( $r ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_edit_value(); ?></textarea>
    8592
    8693                        <?php
    8794
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-textbox.php

     
    6464                        'value' => bp_get_the_profile_field_edit_value(),
    6565                ) ); ?>
    6666
    67                 <label for="<?php bp_the_profile_field_input_name(); ?>">
     67                <fieldset class="textbox">
     68                <legend>
    6869                        <?php bp_the_profile_field_name(); ?>
    6970                        <?php bp_the_profile_field_required_label(); ?>
    70                 </label>
     71                </legend>
    7172
     73                <label for="<?php bp_the_profile_field_input_name(); ?>" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     74
    7275                <?php
    7376
    7477                /** This action is documented in bp-xprofile/bp-xprofile-classes */
    7578                do_action( bp_get_the_profile_field_errors_action() ); ?>
    7679
    77                 <input <?php echo $this->get_edit_field_html_elements( $r ); ?>>
     80                <input <?php echo $this->get_edit_field_html_elements( $r ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3">
    7881
     82                <?php if ( bp_get_the_profile_field_description() ) : ?>
     83                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     84                <?php endif; ?>
     85
    7986                <?php
    8087        }
    8188
  • src/bp-xprofile/classes/class-bp-xprofile-field-type-url.php

     
    6666                        'value'     => esc_url( bp_get_the_profile_field_edit_value() ),
    6767                ) ); ?>
    6868
    69                 <label for="<?php bp_the_profile_field_input_name(); ?>">
     69                <fieldset class="url">
     70                <legend>
    7071                        <?php bp_the_profile_field_name(); ?>
    7172                        <?php bp_the_profile_field_required_label(); ?>
    72                 </label>
     73                </legend>
    7374
     75                <label for="<?php bp_the_profile_field_input_name(); ?>" class="<?php echo is_admin() ? 'screen-reader-text' : 'bp-screen-reader-text' ;?>"><?php bp_the_profile_field_name(); ?> <?php bp_the_profile_field_required_label(); ?></label>
     76
    7477                <?php
    7578
    7679                /** This action is documented in bp-xprofile/bp-xprofile-classes */
    7780                do_action( bp_get_the_profile_field_errors_action() ); ?>
    7881
    79                 <input <?php echo $this->get_edit_field_html_elements( $r ); ?>>
     82                <input <?php echo $this->get_edit_field_html_elements( $r ); ?> aria-describedby="<?php bp_the_profile_field_input_name(); ?>-3">
    8083
     84                <?php if ( bp_get_the_profile_field_description() ) : ?>
     85                        <p class="description" id="<?php bp_the_profile_field_input_name(); ?>-3"><?php bp_the_profile_field_description(); ?></p>
     86                <?php endif; ?>
     87
    8188                <?php
    8289        }
    8390