Changeset 8210
Legend:
- Unmodified
- Added
- Removed
-
trunk/bp-templates/bp-legacy/buddypress/members/single/settings/profile.php
r7965 r8210 21 21 <tr <?php bp_field_css_class(); ?>> 22 22 <td class="field-name"><?php bp_the_profile_field_name(); ?></td> 23 <td class="field-visibility"><?php bp_ xprofile_settings_visibility_select(); ?></td>23 <td class="field-visibility"><?php bp_profile_settings_visibility_select(); ?></td> 24 24 </tr> 25 25 -
trunk/bp-themes/bp-default/members/single/settings/profile.php
r7965 r8210 71 71 <tr <?php bp_field_css_class(); ?>> 72 72 <td class="field-name"><?php bp_the_profile_field_name(); ?></td> 73 <td class="field-visibility"><?php bp_ xprofile_settings_visibility_select(); ?></td>73 <td class="field-visibility"><?php bp_profile_settings_visibility_select(); ?></td> 74 74 </tr> 75 75 -
trunk/bp-xprofile/bp-xprofile-template.php
r8178 r8210 692 692 * Echo the field visibility radio buttons 693 693 */ 694 function bp_profile_visibility_radio_buttons( ) {695 echo bp_profile_get_visibility_radio_buttons( );694 function bp_profile_visibility_radio_buttons( $args = '' ) { 695 echo bp_profile_get_visibility_radio_buttons( $args ); 696 696 } 697 697 /** 698 698 * Return the field visibility radio buttons 699 699 */ 700 function bp_profile_get_visibility_radio_buttons() { 701 $html = '<ul class="radio">'; 702 703 foreach( bp_xprofile_get_visibility_levels() as $level ) { 704 $checked = $level['id'] == bp_get_the_profile_field_visibility_level() ? ' checked="checked" ' : ''; 705 706 // Only sanitize once 707 $field_id = bp_get_the_profile_field_id(); 708 $level_id = esc_attr( $level['id'] ); 709 710 $html .= '<li><label for="see-field_' . $field_id . '_' . $level_id . '"><input type="radio" id="see-field_' . $field_id . '_' . $level_id . '" name="field_' . $field_id . '_visibility" value="' . $level_id . '"' . $checked . ' /> ' . esc_html( $level['label'] ) . '</label></li>'; 711 } 712 713 $html .= '</ul>'; 714 715 return apply_filters( 'bp_profile_get_visibility_radio_buttons', $html ); 700 function bp_profile_get_visibility_radio_buttons( $args = '' ) { 701 702 // Parse optional arguments 703 $r = bp_parse_args( $args, array( 704 'field_id' => bp_get_the_profile_field_id(), 705 'before' => '<ul class="radio">', 706 'after' => '</ul>', 707 'before_radio' => '<li>', 708 'after_radio' => '</li>', 709 'class' => 'bp-xprofile-visibility' 710 ), 'xprofile_visibility_radio_buttons' ); 711 712 // Empty return value, filled in below if a valid field ID is found 713 $retval = ''; 714 715 // Only do-the-do if there's a valid field ID 716 if ( ! empty( $r['field_id'] ) ) : 717 718 // Start the output buffer 719 ob_start(); 720 721 // Output anything before 722 echo $r['before']; ?> 723 724 <?php if ( bp_current_user_can( 'bp_xprofile_change_field_visibility' ) ) : ?> 725 726 <?php foreach( bp_xprofile_get_visibility_levels() as $level ) : ?> 727 728 <?php echo $r['before_radio']; ?> 729 730 <label for="<?php esc_attr( 'see-field_' . $r['field_id'] . '_' . $level['id'] ); ?>"> 731 <input type="radio" id="<?php echo esc_attr( 'see-field_' . $r['field_id'] . '_' . $level['id'] ); ?>" name="<?php echo esc_attr( 'field_' . $r['field_id'] . '_visibility' ); ?>" value="<?php echo esc_attr( $level['id'] ); ?>" <?php checked( $level['id'], bp_get_the_profile_field_visibility_level() ); ?> /> 732 <span class="field-visibility-text"><?php echo esc_html( $level['label'] ); ?></span> 733 </label> 734 735 <?php echo $r['after_radio']; ?> 736 737 <?php endforeach; ?> 738 739 <?php endif; 740 741 // Output anything after 742 echo $r['after']; 743 744 // Get the output buffer and empty it 745 $retval = ob_get_clean(); 746 endif; 747 748 return apply_filters( 'bp_profile_get_visibility_radio_buttons', $retval, $r, $args ); 716 749 } 717 750 … … 721 754 * @since BuddyPress (2.0.0) 722 755 */ 723 function bp_ xprofile_settings_visibility_select( $args = '' ) {724 echo bp_ xprofile_get_settings_visibility_select( $args );756 function bp_profile_settings_visibility_select( $args = '' ) { 757 echo bp_profile_get_settings_visibility_select( $args ); 725 758 } 726 759 /** … … 729 762 * @since BuddyPress (2.0.0) 730 763 */ 731 function bp_ xprofile_get_settings_visibility_select( $args = '' ) {764 function bp_profile_get_settings_visibility_select( $args = '' ) { 732 765 733 766 // Parse optional arguments 734 767 $r = bp_parse_args( $args, array( 735 'before' => '', 736 'after' => '', 737 'class' => 'bp-xprofile-visibility' 768 'field_id' => bp_get_the_profile_field_id(), 769 'before' => '', 770 'after' => '', 771 'class' => 'bp-xprofile-visibility' 738 772 ), 'xprofile_settings_visibility_select' ); 739 773 740 // Start the output buffer 741 ob_start(); 742 743 // Anything before 744 echo $r['before']; ?> 745 746 <?php if ( bp_current_user_can( 'bp_xprofile_change_field_visibility' ) ) : ?> 747 748 <select class="<?php echo esc_attr( $r['class'] ); ?>" name="field_<?php bp_the_profile_field_id(); ?>_visibility"> 749 750 <?php foreach ( bp_xprofile_get_visibility_levels() as $level ) : ?> 751 752 <option value="<?php echo esc_attr( $level['id'] ); ?>" <?php selected( $level['id'], bp_get_the_profile_field_visibility_level() ); ?>><?php echo esc_html( $level['label'] ); ?></option> 753 754 <?php endforeach; ?> 755 756 </select> 757 758 <?php else : ?> 759 760 <span class="field-visibility-settings-notoggle" title="<?php esc_attr_e( "This field's visibility cannot be changed.", 'buddypress' ); ?>"><?php bp_the_profile_field_visibility_level_label(); ?></span> 761 762 <?php endif; 763 764 // Anything after 765 echo $r['after']; 774 // Empty return value, filled in below if a valid field ID is found 775 $retval = ''; 776 777 // Only do-the-do if there's a valid field ID 778 if ( ! empty( $r['field_id'] ) ) : 779 780 // Start the output buffer 781 ob_start(); 782 783 // Output anything before 784 echo $r['before']; ?> 785 786 <?php if ( bp_current_user_can( 'bp_xprofile_change_field_visibility' ) ) : ?> 787 788 <select class="<?php echo esc_attr( $r['class'] ); ?>" name="<?php echo esc_attr( 'field_' . $r['field_id'] ) ; ?>_visibility"> 789 790 <?php foreach ( bp_xprofile_get_visibility_levels() as $level ) : ?> 791 792 <option value="<?php echo esc_attr( $level['id'] ); ?>" <?php selected( $level['id'], bp_get_the_profile_field_visibility_level() ); ?>><?php echo esc_html( $level['label'] ); ?></option> 793 794 <?php endforeach; ?> 795 796 </select> 797 798 <?php else : ?> 799 800 <span class="field-visibility-settings-notoggle" title="<?php esc_attr_e( "This field's visibility cannot be changed.", 'buddypress' ); ?>"><?php bp_the_profile_field_visibility_level_label(); ?></span> 801 802 <?php endif; 803 804 // Output anything after 805 echo $r['after']; 806 807 // Get the output buffer and empty it 808 $retval = ob_get_clean(); 809 endif; 766 810 767 811 // Output the dropdown list 768 return apply_filters( 'bp_ xprofile_settings_visibility_select', ob_get_clean());769 } 812 return apply_filters( 'bp_profile_settings_visibility_select', $retval, $r, $args ); 813 }
Note: See TracChangeset
for help on using the changeset viewer.