My Pledges: Prompt to fill out profile data if haven't already.

This commit is contained in:
Ian Dunn 2019-10-31 11:08:04 -05:00
parent 0c250daa7d
commit 5c50b1fcc6
No known key found for this signature in database
GPG key ID: 99B971B50343CBCB
2 changed files with 32 additions and 12 deletions

View file

@ -101,6 +101,11 @@ function get_contributor_user_data( $user_id ) {
$formatted_data = array();
$raw_data = get_xprofile_contribution_data( array( $user_id ) );
$defaults = array(
'hours_per_week' => 0,
'team_names' => array(),
);
foreach ( $raw_data as $datum ) {
$key = array_search( $datum['field_id'], FIELD_IDS );
@ -114,5 +119,7 @@ function get_contributor_user_data( $user_id ) {
}
}
$formatted_data = array_merge( $defaults, $formatted_data );
return $formatted_data;
}

View file

@ -30,18 +30,31 @@ $has_contributions = $contributor_pending_posts || $contributor_publish_posts;
<?php esc_html_e( 'My Pledges', 'wporg-5ftf' ); ?>
</h1>
<p class="my-pledges__dedication">
<?php echo esc_html( sprintf(
_n(
'Pledged %1$s hours a week across %2$s organization',
'Pledged %1$s hours a week across %2$s organizations',
count( $confirmed_pledge_ids ),
'wporg-5ftf'
),
$profile_data['hours_per_week'],
count( $confirmed_pledge_ids )
) ); ?>
</p>
<?php if ( $profile_data['hours_per_week'] && $profile_data['team_names'] ) : ?>
<p class="my-pledges__dedication">
<?php echo esc_html( sprintf(
_n(
'Pledged %1$s hours a week across %2$s organization',
'Pledged %1$s hours a week across %2$s organizations',
count( $confirmed_pledge_ids ),
'wporg-5ftf'
),
$profile_data['hours_per_week'],
count( $confirmed_pledge_ids )
) ); ?>
</p>
<?php else : ?>
<div class="notice notice-warning notice-alt">
<p>
<?php echo wp_kses_data( sprintf(
__( 'Please <a href="%s">update your profile</a> with the <strong>number of hours per week</strong> that you contribute, and the <strong>teams</strong> that you contribute to.', 'wporg-5ftf' ),
'https://profiles.wordpress.org/me/profile/edit/group/5/'
) ); ?>
</p>
</div>
<?php endif; ?>
</header>
<?php if ( $success_message ) : ?>