android-oss icon indicating copy to clipboard operation
android-oss copied to clipboard

MBL-2458 Go to Pledge Manager UI changes

Open ycheng-kickstarter opened this issue 8 months ago • 0 comments

📲 What

As a creator with a pledge manager open for new backers, I want anyone visiting my campaign page to be aware that they can still back my project via the pledge manager.

🤔 Why

Short term solution for driving backers to the PM: repurpose the View Rewards button on the project page to link to the pledge manager in a web view (if it has launched and is accepting new backers).

🛠 How

Per discussion with Team B, this is the state controlling whether this button should be displayed:

fun Project.acceptsNewBackersForPM() = this.lastWave()?.active() == true &&
    this.pledgeManager()?.acceptsNewBackers() == true &&
    !this.isBacking()

The webview is a simple webview with just a title and a back button, so we can use WebViewActivity and pass in url and toolbar title, instead of creating a new activity.

👀 See

drawing drawing

📋 QA

Feature switch android_net_new_backer_go_to_pm_webview is defaulted to true on internal debug and internal release, so just need to test with one of these staging projects that are in the desired state:

["https://staging.kickstarter.com/projects/487885979/revolutionary-cooler-watch", "https://staging.kickstarter.com/projects/614956804/burning-man-robot-fort", "https://staging.kickstarter.com/projects/614956804/paleo-dance-studio-tarot", "https://staging.kickstarter.com/projects/614956804/crossfit-cooler-think-tank", "https://staging.kickstarter.com/projects/willowv/gluten-free-robot-community-space", "https://staging.kickstarter.com/projects/1768690592/handball-test", "https://staging.kickstarter.com/projects/rachaeljunior/gluten-free-album-improv", "https://staging.kickstarter.com/projects/janeld/pm-open-beta-test-project-2", "https://staging.kickstarter.com/projects/487885979/locally-sourced-tarot-watch", "https://staging.kickstarter.com/projects/1606229077/artisanal-watch-dance-studio", "https://staging.kickstarter.com/projects/numinousspiritpress/the-tale-that-twines-a-cozy-magic-library-novel", "https://staging.kickstarter.com/projects/kingswildproject/the-lord-of-the-rings-playing-cards-vol-1", "https://staging.kickstarter.com/projects/pngsequence/reflectile-a-precision-puzzle-game", "https://staging.kickstarter.com/projects/70344670/dtx-10-the-ultra-high-accurate-digital-tape-measure", "https://staging.kickstarter.com/projects/corincerami/reclaimed-tarot-community-space", "https://staging.kickstarter.com/projects/infojaylinfilms/a-blood-moon-rising-horror-western-film", "https://staging.kickstarter.com/projects/614956804/reclaimed-microbrew-zombie", "https://staging.kickstarter.com/projects/614956804/freegan-cats-raspberry-pi"]

QA other projects for all the other states for this button and ensure the correct string on the button and the correct behavior when button is clicked:

If the project accepts new backers for PM -> Go to Pledge Manager If the current user is the creator -> View your rewards If the project is live and the current user hasn't backed it -> Back this Project If the project is live and the current user has backed it -> Manage If the project is not live and the current user has backed it -> View your pledge Else -> View rewards

Story 📖

https://kickstarter.atlassian.net/browse/MBL-2458

ycheng-kickstarter avatar Jun 17 '25 15:06 ycheng-kickstarter