Page MenuHomePhabricator

JSON for new app fundraising banners (multilingual, Italy and Netherlands)
Closed, ResolvedPublic

Description

Hi @Tsevener! cc @Sharvaniharan + @JTannerWMF, @Seddon and @AKanji-WMF >

@Pcoombe put together a json file on DonateWiki formatted to your specifications containing the data for both the Netherlands and Italian app banners.

I'll call out that we added a new property that we called confirmation for the message that a user would see after interacting with the new actions, Donate now and Maybe later.

We are still getting a Dutch translation for the Maybe later confirmation message and have placed English there for now. We'll edit the JSON file and update this task when we have it.

Please let us know if you have any feedback on structure / etc. and if you'd prefer a different phab task format. Up til now we've created individual tasks for each country and OS. I appreciate the streamlined system :)

Testing notes

To trigger the campaign modals on the article view, your device must be set up like this:

  1. Device iOS Settings > Language & Region > Region needs to be set to either the Netherlands or Italy
  2. Device date & time needs to be set on or after the campaign start date (change device date to 10/17)
  3. After fresh install, you must background and foreground the app, then pull to refresh on the Explore feed to trigger a force refresh of the campaign data.
  4. Visit an article. Campaign text is set up to display in a language dependent on the article wiki (EN wiki article will display English, NL wiki article will display Dutch, IT wiki article will display in Italian).

Event Timeline

I'll call out that we added a new property that we called confirmation for the message that a user would see after interacting with the new actions, Donate now and Maybe later.

@spatton @Pcoombe Thanks for this! Personally I would like to avoid adding confirmation text to give apps more control, and instead have this config only power the text on the modal. We can bundle the confirmation text translations into the app.

Our apps have the reminder delay hardcoded into the app as 1 day. If @JTannerWMF decides she wants to change it to three days, we now have to release a new app version. Changing the config confirmation text to "We will remind you in three days" would break older versions out in the wild (which still have a 1 day delay), so then we would need to bump the config version so that only apps pointing to version 2 will use the new "three days" text. You could argue that perhaps we could have both a confirmation key and a reminderDelayDays key for that flexibility. If we do that, what if later @JTannerWMF wants "Maybe later" to kick off three reminders for 3, 5, and 10 days later. Our config structure breaks again.

Of course this is the whole reason we added a version key here - to change the structure as-needed while retaining older app version structures. I just see a lot more version bumping in our near future once we give the config control over things that happen after tapping a button in the modal. I would like us to avoid taking that on until after the waters have settled a bit on these new flows. Let me know what you think, thanks.

Thanks @Tsevener, great points about compatibility. That's fine to keep the confirmation text translations in the app, and I removed them from the donatewiki JSON.

@Pcoombe great thanks, this all looks good! I updated your Sandbox config with a minor thing - adding an extra <br> before the body text to address some design feedback. Then I copied it over to the testing config that the apps are pointed to for testing (with modified start date easier testing for us), and then copied it over to the donate wiki config.

Please let us know if you have any feedback on structure / etc. and if you'd prefer a different phab task format. Up til now we've created individual tasks for each country and OS.

I'm fine with having it together in one Phab task like you did here and tagging both app backlogs. To echo what Dmitry mentioned in the last meeting, I think app leads should own updating the donate wiki config for now. Maybe a good order of operations would be:

  1. FR provides proposed campaign json (can be in your Sandbox config or added directly to the Phab task description)
  2. Apps engineers copy it into the test wiki config, with a modified start date if-needed for easier testing. They take screenshots for final OK.
  3. Apps engineering leads then copy FR campaign json into donate wiki.

I'll post a couple of screenshots of what it's looking like so far. Thanks!

Here's some screenshots! I tried to get both extreme screen sizes and middle screen sizes. Also tagging @cmadeo:

iPhone SE:

Screenshot 2023-10-06 at 12.10.05 PM (1×561 px, 313 KB)

Screenshot 2023-10-06 at 12.05.48 PM (1×561 px, 323 KB)

Screenshot 2023-10-06 at 12.09.04 PM (1×561 px, 329 KB)

iPhone 15:

Screenshot 2023-10-06 at 12.13.03 PM (1×565 px, 307 KB)

Screenshot 2023-10-06 at 12.14.02 PM (1×565 px, 325 KB)

Screenshot 2023-10-06 at 12.12.36 PM (1×565 px, 317 KB)

iPad 9.7 inch:

Screenshot 2023-10-06 at 12.20.23 PM (1×778 px, 362 KB)

Screenshot 2023-10-06 at 12.21.16 PM (1×778 px, 407 KB)

Screenshot 2023-10-06 at 12.19.39 PM (1×778 px, 409 KB)

iPad 12.9 inch:

Screenshot 2023-10-06 at 12.24.17 PM (1×814 px, 358 KB)

Screenshot 2023-10-06 at 12.23.51 PM (1×814 px, 464 KB)

Screenshot 2023-10-06 at 12.25.06 PM (1×814 px, 500 KB)

In terms of clipping on the SE size - the content is scrollable, if that helps any.

Screenshots from Android devices:

Samsung S9 (small device)
Screenshot_20231006-113925_Wikipedia Dev.jpg (2×1 px, 166 KB)
Screenshot_20231006-113829_Wikipedia Dev.jpg (2×1 px, 160 KB)
Screenshot_20231006-113742_Wikipedia Dev.jpg (2×1 px, 160 KB)
Samsung S23 Ultra (large device)
Screenshot_20231006_115332_Wikipedia Dev.jpg (2×1 px, 172 KB)
Screenshot_20231006_115211_Wikipedia Dev.jpg (2×1 px, 167 KB)
Screenshot_20231006_115254_Wikipedia Dev.jpg (2×1 px, 170 KB)
Huawei Tablet
Screenshot_20231006-114431.jpg (2×1 px, 1 MB)
Screenshot_20231006-114336.jpg (2×1 px, 765 KB)
Screenshot_20231006-114252.jpg (2×1 px, 750 KB)

The content is also scrollable, and the position of buttons and footer text is fixed. cc @cmadeo

In terms of clipping on the SE size - the content is scrollable, if that helps any.

@Tsevener would it be possible at all to add a bottom blur (similar to the scrolling behavior on onboarding) to this modal? It can be hard to tell on some languages and sizes that there's more content below.

@cmadeo We decided to add a flashing scroll indicator when the campaign modal appears in planning yesterday, since it's a much lighter lift / behavior provided by the platform. It's slightly better, though the red border distracts from it, in my opinion. Maybe we can make a followup task for this one?

Thanks @Tsevener, happy to have a follow-up task for the blur, I'll make a child ticket