Skip to content

Commit 3d2b551

Browse files
committed
live-update points
1 parent 2951fe2 commit 3d2b551

2 files changed

Lines changed: 23 additions & 3 deletions

File tree

assets/js/web-components/prpl-badge-progress-bar.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,10 @@ const prplUpdatePreviousMonthBadgeProgressBar = ( pointsDiff ) => {
112112
`.prpl-previous-month-badge-progress-bar-wrapper[data-badge-id="${ badgeId }"] .prpl-previous-month-badge-progress-bar-remaining`
113113
);
114114

115+
const remainingPointsEls = document.querySelectorAll(
116+
`.prpl-previous-month-badge-progress-bar-wrapper .prpl-previous-month-badge-progress-bar-remaining`
117+
);
118+
115119
if ( remainingPointsEl ) {
116120
remainingPointsEl.textContent = remainingPointsEl.textContent.replace(
117121
remainingPointsEl.getAttribute( 'data-remaining' ),
@@ -121,6 +125,21 @@ const prplUpdatePreviousMonthBadgeProgressBar = ( pointsDiff ) => {
121125
'data-remaining',
122126
badgeMaxPoints - badgeNewPoints
123127
);
128+
129+
remainingPointsEls.forEach( ( pointsEl ) => {
130+
const totalPoints = pointsEl.getAttribute(
131+
'data-remaining-total-points'
132+
);
133+
pointsEl.setAttribute(
134+
'data-remaining-total-points',
135+
totalPoints - pointsDiff
136+
);
137+
138+
const numberEl = pointsEl.querySelector( '.number' );
139+
if ( numberEl ) {
140+
numberEl.textContent = totalPoints - pointsDiff;
141+
}
142+
} );
124143
}
125144

126145
// Update the previous month badge points number.

views/page-widgets/monthly-badges.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,12 +107,13 @@ class="prpl-previous-month-badge-progress-bar-wrapper"
107107
<span
108108
class="prpl-previous-month-badge-progress-bar-remaining"
109109
data-remaining="<?php echo (int) $prpl_previous_incomplete_month_badge->progress_callback()['remaining']; ?>"
110+
data-remaining-total-points="<?php echo (int) $prpl_remaining_points; ?>"
110111
>
111112
<?php
112113
\printf(
113-
/* translators: %1$d: The number of points. %2$d: The number of days. */
114-
\esc_html( \_n( '%1$d more points to go - %2$d day left', '%1$d more points to go - %2$d days left', (int) $prpl_days_remaining, 'progress-planner' ) ),
115-
(int) $prpl_remaining_points,
114+
/* translators: %1$s: The number of points. %2$d: The number of days. */
115+
\esc_html( \_n( '%1$s more points to go - %2$d day left', '%1$s more points to go - %2$d days left', (int) $prpl_days_remaining, 'progress-planner' ) ),
116+
'<span class="number">' . (int) $prpl_remaining_points . '</span>',
116117
(int) $prpl_days_remaining
117118
);
118119
?>

0 commit comments

Comments
 (0)