diff --git a/activity/agency-opening/index.html b/activity/agency-opening/index.html index 96de93c..46e5fc4 100644 --- a/activity/agency-opening/index.html +++ b/activity/agency-opening/index.html @@ -165,7 +165,10 @@ >
-
+

Agency Identity

@@ -173,21 +176,29 @@ >Agency
-
+

Host Count

- 12 / 10+ + 12 > 10
-
+

Opening Status

@@ -195,6 +206,7 @@ >Not Joined diff --git a/activity/agency-opening/script.js b/activity/agency-opening/script.js index 84b001a..c41f960 100644 --- a/activity/agency-opening/script.js +++ b/activity/agency-opening/script.js @@ -120,6 +120,13 @@ ['eligible', 'can_apply', 'canApply'], true ); + var ineligibleReason = String( + firstValue( + data, + ['ineligible_reason', 'ineligibleReason'], + '' + ) || '' + ); var hostCount = Number( firstValue(qualification, ['host_count', 'hostCount'], 12) @@ -170,6 +177,7 @@ ? t('agencyOpening.joined', 'Joined') : t('agencyOpening.notJoined', 'Not Joined') ), + ineligibleReason: ineligibleReason, eligible: Boolean(eligible) && !joined, }, rewards: Array.isArray( @@ -306,15 +314,31 @@ state = data || mockStatus(); timeOffsetMS = Date.now() - state.serverTimeMS; countdownEndAt = state.endAt; + var identityQualified = + String(state.qualification.identity || '') + .toLowerCase() + .indexOf('agency') >= 0 && + state.qualification.ineligibleReason !== + 'active_agency_owner_required'; + var hostQualified = + Number(state.qualification.hostCount || 0) > + Number(state.qualification.hostRequirement || 0); + var statusQualified = + !state.joined && + String(state.qualification.openingStatus || '').toLowerCase() !== + 'disabled'; document.getElementById('agencyIdentityText').textContent = state.qualification.identity; document.getElementById('hostCountText').textContent = state.qualification.hostCount + - ' / > ' + + ' > ' + state.qualification.hostRequirement; document.getElementById('openingStatusText').textContent = state.qualification.openingStatus; + setQualified('agencyIdentityCard', identityQualified); + setQualified('hostCountCard', hostQualified); + setQualified('openingStatusCard', statusQualified); document.getElementById('eligibilityText').textContent = state .qualification.eligible ? t('agencyOpening.eligible', 'Eligible To Apply') @@ -338,6 +362,12 @@ countdownTimer = window.setInterval(updateCountdown, 1000); } + function setQualified(id, qualified) { + var node = document.getElementById(id); + if (!node) return; + node.classList.toggle('is-qualified', Boolean(qualified)); + } + function showToast(message) { if (window.HyAppToast && window.HyAppToast.show) { window.HyAppToast.show(message); diff --git a/activity/agency-opening/style.css b/activity/agency-opening/style.css index 2e59d9c..3a32d84 100644 --- a/activity/agency-opening/style.css +++ b/activity/agency-opening/style.css @@ -456,16 +456,21 @@ button:focus-visible { white-space: nowrap; } -.qualification-card img { +.qualification-card .status-icon { position: absolute; right: -14px; bottom: -12px; + display: none; width: 70px; height: 70px; object-fit: contain; pointer-events: none; } +.qualification-card.is-qualified .status-icon { + display: block; +} + .apply-button { position: absolute; left: 217px; diff --git a/activity/cp-space/assets/cp-level-1.png b/activity/cp-space/assets/cp-level-1.png new file mode 100644 index 0000000..c188763 Binary files /dev/null and b/activity/cp-space/assets/cp-level-1.png differ diff --git a/activity/cp-space/assets/cp-level-2.png b/activity/cp-space/assets/cp-level-2.png new file mode 100644 index 0000000..12a2fe6 Binary files /dev/null and b/activity/cp-space/assets/cp-level-2.png differ diff --git a/activity/cp-space/assets/cp-level-3.png b/activity/cp-space/assets/cp-level-3.png new file mode 100644 index 0000000..d7c55b4 Binary files /dev/null and b/activity/cp-space/assets/cp-level-3.png differ diff --git a/activity/cp-space/assets/cp-level-4.png b/activity/cp-space/assets/cp-level-4.png new file mode 100644 index 0000000..33e5592 Binary files /dev/null and b/activity/cp-space/assets/cp-level-4.png differ diff --git a/activity/cp-space/assets/cp-level-5.png b/activity/cp-space/assets/cp-level-5.png new file mode 100644 index 0000000..bec0ca3 Binary files /dev/null and b/activity/cp-space/assets/cp-level-5.png differ diff --git a/activity/cp-space/assets/figma-source/figma-brother-cards-zoomed.png b/activity/cp-space/assets/figma-source/figma-brother-cards-zoomed.png new file mode 100644 index 0000000..aff2d33 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-brother-cards-zoomed.png differ diff --git a/activity/cp-space/assets/figma-source/figma-cards-clean-wide.png b/activity/cp-space/assets/figma-source/figma-cards-clean-wide.png new file mode 100644 index 0000000..2fa9ad6 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-cards-clean-wide.png differ diff --git a/activity/cp-space/assets/figma-source/figma-cp-brother-levels-view.png b/activity/cp-space/assets/figma-source/figma-cp-brother-levels-view.png new file mode 100644 index 0000000..077bd5f Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-cp-brother-levels-view.png differ diff --git a/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide-200.png b/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide-200.png new file mode 100644 index 0000000..dbc9d96 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide-200.png differ diff --git a/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide.png b/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide.png new file mode 100644 index 0000000..2c9886b Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-cp-zoomed-wide.png differ diff --git a/activity/cp-space/assets/figma-source/figma-cp-zoomed.png b/activity/cp-space/assets/figma-source/figma-cp-zoomed.png new file mode 100644 index 0000000..5fe8125 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-cp-zoomed.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-lower-view.png b/activity/cp-space/assets/figma-source/figma-levels-lower-view.png new file mode 100644 index 0000000..a2089e9 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-lower-view.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-zoomed-bottom.png b/activity/cp-space/assets/figma-source/figma-levels-zoomed-bottom.png new file mode 100644 index 0000000..a09117d Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-zoomed-bottom.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-zoomed-first-second.png b/activity/cp-space/assets/figma-source/figma-levels-zoomed-first-second.png new file mode 100644 index 0000000..321538f Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-zoomed-first-second.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-zoomed-lower.png b/activity/cp-space/assets/figma-source/figma-levels-zoomed-lower.png new file mode 100644 index 0000000..0218427 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-zoomed-lower.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-zoomed-right.png b/activity/cp-space/assets/figma-source/figma-levels-zoomed-right.png new file mode 100644 index 0000000..00f9e07 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-zoomed-right.png differ diff --git a/activity/cp-space/assets/figma-source/figma-levels-zoomed-top.png b/activity/cp-space/assets/figma-source/figma-levels-zoomed-top.png new file mode 100644 index 0000000..45861d8 Binary files /dev/null and b/activity/cp-space/assets/figma-source/figma-levels-zoomed-top.png differ