BP_Xprofile_Profile_Completion_Widget::form( $instance )
Widget settings form.
Description
Source
File: bp-xprofile/classes/class-bp-xprofile-profile-completion-widget.php
function form( $instance ) { $instance = wp_parse_args( (array) $instance, array( 'title' => __( 'Complete Your Profile', 'buddyboss' ), ) ); /* Profile Groups and Profile Cover Photo VARS. */ $profile_groups = bp_xprofile_get_groups(); $photos_enabled_arr = array(); $widget_enabled_arr = array(); $is_profile_photo_disabled = bp_disable_avatar_uploads(); $is_cover_photo_disabled = bp_disable_cover_image_uploads(); // Show Options only when Profile Photo and Cover option enabled in the Profile Settings. if ( ! $is_profile_photo_disabled ) { $photos_enabled_arr['profile_photo'] = __( 'Profile Photo', 'buddyboss' ); } if ( ! $is_cover_photo_disabled ) { $photos_enabled_arr['cover_photo'] = __( 'Cover Photo', 'buddyboss' ); } $widget_enabled_arr['hide_widget'] = __( 'Hide widget once progress hits 100%', 'buddyboss' ); /* Widget Form HTML */ ?> <p> <label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>"><?php esc_html_e( 'Title:', 'buddyboss' ); ?></label> <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" type="text" value="<?php echo esc_attr( $instance['title'] ); ?>"/> </p> <p> <label><?php esc_html_e( 'Profile field sets:', 'buddyboss' ); ?></label> <ul> <?php foreach ( $profile_groups as $single_group_details ) : $is_checked = ( ! empty( $instance['profile_groups_enabled'] ) && in_array( $single_group_details->id, $instance['profile_groups_enabled'] ) ); ?> <li> <label> <input class="widefat" type="checkbox" name="<?php echo esc_attr( $this->get_field_name( 'profile_groups_enabled' ) ); ?>[]" value="<?php echo esc_attr( $single_group_details->id ); ?>" <?php checked( $is_checked ); ?> /> <?php echo esc_html( $single_group_details->name ); ?> </label> </li> <?php endforeach; ?> </ul> </p> <?php if ( ! empty( $photos_enabled_arr ) ) : ?> <p> <label><?php esc_html_e( 'Profile photos:', 'buddyboss' ); ?></label> <ul> <?php foreach ( $photos_enabled_arr as $photos_value => $photos_label ) : ?> <li> <label> <input class="widefat" type="checkbox" name="<?php echo esc_attr( $this->get_field_name( 'profile_photos_enabled' ) ); ?>[]" value="<?php echo esc_attr( $photos_value ); ?>" <?php checked( ( ! empty( $instance['profile_photos_enabled'] ) && in_array( $photos_value, $instance['profile_photos_enabled'] ) ) ); ?>/> <?php echo esc_html( $photos_label ); ?> </label> </li> <?php endforeach; ?> </ul> </p> <?php endif; ?> <?php if ( ! empty( $widget_enabled_arr ) ) : ?> <p> <label><?php esc_html_e( 'Options:', 'buddyboss' ); ?></label> <ul> <?php foreach ( $widget_enabled_arr as $option_value => $option_label ) : ?> <li> <label> <input class="widefat" type="checkbox" name="<?php echo esc_attr( $this->get_field_name( 'profile_hide_widget' ) ); ?>[]" value="<?php echo esc_attr( $option_value ); ?>" <?php checked( ( ! empty( $instance['profile_hide_widget'] ) && in_array( $option_value, $instance['profile_hide_widget'] ) ) ); ?>/> <?php echo esc_html( $option_label ); ?> </label> </li> <?php endforeach; ?> </ul> </p> <?php endif; ?> <?php /** * Fires after showing last field in the Widget form. * * @since BuddyBoss 1.2.5 */ do_action( 'xprofile_profile_completion_form' ); ?> <p> <small><?php esc_html_e( 'Note: This widget is only displayed if a member is logged in.', 'buddyboss' ); ?></small> </p> <?php }
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.