Giter VIP home page Giter VIP logo

Comments (23)

Sancus avatar Sancus commented on August 15, 2024

The reason there is a new tab open is because as far as I can tell, there is no way to insert a window.location.href= in the download JS and get it to work. That's because it's already redirecting to download the file the normal way. You can override this, but then there's no file download. As far as I know, you can't both redirect to donate.mozilla.org AND to download.mozilla.org for the file download, at least not without starting to involve crazy hacks with questionable browser compatibility. I knew it was confusing to open a new tab, but it was the only way for this to work at all.

A subsequent page with "In case your download didn't begin, click here" was not removed for this, it didn't exist in the first place. There used to be a page like this but it was removed in 2015. Here is a link to the last version of this that existed.

You guys wanted me to redirect to donate.mozilla.org after download, but I don't see how I can do that AND also do this, unless you want to put the download code into donate.mozilla.org and add a download button there.

Without doing that, what we actually have to do is add a thank you page on our site that can contain both another download link, some text asking people to donate, and a link to the donate site, similar to https://www.mozilla.org/en-US/firefox/download/thanks/

E: edited to better explain initial reasoning.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

I've changed this to a setTimeout redirect, which does work despite popup blockers, surprisingly. Unfortunately, this is worse than opening a new tab because the download will fail if it doesn't start(due to latency) within the delay(2000ms) but the longer the delay, the more likely the user navigates away from the page before it triggers.

This also doesn't solve the inherent problem that the donate page does not have a download button, and that redirecting this way is confusing in general.

I don't really understand how/why people were having difficulty with the download in the first place, since I can't think of any way for the download to fail once you click the button regardless of your browser setup, since the download part of the button is a simple <a href> that doesn't involve any JS.

from thunderbird-website.

jorgk3 avatar jorgk3 commented on August 15, 2024

Worked for me. We should do the same trick on the "Systems & Languages" page as well, at least for en, de, it, ja, es or any other translated donation page.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

Unfortunately, after a setTimeout redirect, IE/Edge seem to just cancel the download prompt completely, unlike Chrome and Firefox which keep the download dialogs open until you interact with them. So I probably need to stick to opening the new tab for IE/Edge.

from thunderbird-website.

mkmelin avatar mkmelin commented on August 15, 2024

Firefox has the "Your download should begin automatically. Didn’t work? Try downloading again. " + options to dl for other systems and languages - https://www.mozilla.org/en-US/firefox/download/thanks/

Given we don't have may good options (everything else is lots of duplication of text/code or confusing redirects) I think we should also add a thanks page like that, but on that page also put verbiage about "If you like Thunderbird, please consider a donation!" and and maybe even something similar to ubuntu's https://www.ubuntu.com/download/desktop/thank-you

After the user oks it, then go to donate.mozilla.org/thunderbird

@ryanleesipes any thoughts?

from thunderbird-website.

mkmelin avatar mkmelin commented on August 15, 2024

Come to think of it, that would also be a good place to put information about enterprise sponsoring, if we ever get to that.

from thunderbird-website.

kewisch avatar kewisch commented on August 15, 2024

So in an email I suggested an iframe. Magnus was not convinced. Magnus, any specific reason?

from thunderbird-website.

ryanleesipes avatar ryanleesipes commented on August 15, 2024

I'm eager to hear this discussion. Currently, I don't have any great original ideas for how to handle this. But it does seem like donations are up following the change, so now we need to account for the edge cases where users don't understand what is happening.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

I left the donation redirect off the systems and languages page for the same reason the Firefox page doesn't redirect the thank you page -- that page can be used for downloading multiple versions for testing, and I've always thought of it as the 'no nonsense just give me the file I want' index... so I don't think it's appropriate to do any of this there. It's also not typically used by the average user.

Regarding the iframe.... you want me to put the donation page in an iframe on the page after triggering download? That's kind of ew given the potential navigation issues it creates, but I can test it out. Will need to make sure the donation flow actually works like that too.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

I've increased the delay to 5 seconds in the meantime and IE/Edge are back to opening a new window, since delayed redirect doesn't really work there.

from thunderbird-website.

mkmelin avatar mkmelin commented on August 15, 2024

Well doing any kind of payments in an iframe is... usually discouraged since the user can't see which site it is. And like Sancus says, navigation is somewhat problematic.

But I don't think I see the win of reusing the donate page directly in an iframe. The extra amount of text (related to donations) to put on the download thanks page is small - just a few sentences - and it also adds some flexibility in experimenting with different verbiages to attract donors via that page.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

We could also use Javascript to replace the text on the front page with a call to donate after the download button is clicked, which would be more responsive than a new page load.

I agree with Magnus that trying to get people to interact with a donation form in an iframe is sketchy, and maybe not the kind of web design practice we should be encouraging as Mozilla-associates.

from thunderbird-website.

ryanleesipes avatar ryanleesipes commented on August 15, 2024

We need to include something like "Click here if you download didn't start." I'm not sure where this should live, but we could possibly put it on the donate page (after the "Thank you for Downloading!")

As I said, donations are up, so that's a plus. This is likely worth the hassle.

from thunderbird-website.

ryanleesipes avatar ryanleesipes commented on August 15, 2024

@Sancus is going to create a PR for a link that says: "Your download should begin automatically. Didn’t work? Try downloading again." (last part is the link) on the donate page. That should allow folks who have issues to click that and start their download.

Thus we get the best of both worlds!

from thunderbird-website.

kewisch avatar kewisch commented on August 15, 2024

Out of curiosity, how does that work for when people visit the donate page without a download? I guess some sort of parameter that is passed?

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

Out of curiosity, how does that work for when people visit the donate page without a download? I guess some sort of parameter that is passed?

We are passing a parameter(?test=tbdownload) right now for the thank you message, it will use the same thing. I wanted to just do a direct link to download.mozilla.org, but it's too much of a pain to pass OS and lang to the donate site in a sensible way.

So instead I'm going to do this: https://www-stage.thunderbird.net/en-US/download/ -- and this page will automatically trigger a download when you arrive, and it also has the button in case that doesn't work either. So it's just as good as a direct link.

Plus, having this fallback page on our site will give us stats for how many people are actually needing to hit that page because their download failed.

The modifications on the donate site will be done tomorrow, it took me several hours to get the stupid thing started, nodeJS dependency hell is insane.

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

OK, the download page has been updated to automatically start the download.

Here is what the donation banner looks like:
image

The link will just be "https://www.thunderbird.net/download/" so we can renegotiate the language as needed.

I'll pull request this tomorrow, in the meantime, let me know if there's any further commentary.

from thunderbird-website.

mkmelin avatar mkmelin commented on August 15, 2024

Hmm, https://www.thunderbird.net/download/ is 404. Did it use to work?

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

Hmm, https://www.thunderbird.net/download/ is 404. Did it use to work?

It's not on prod yet. https://www-stage.thunderbird.net/en-US/download/

from thunderbird-website.

ryanleesipes avatar ryanleesipes commented on August 15, 2024

Looks great!

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

donate PR is up: https://github.com/mozilla/donate.mozilla.org/pull/2055/files

from thunderbird-website.

Sancus avatar Sancus commented on August 15, 2024

https://donate.mozilla.org/en-US/thunderbird/?test=tbdownload

This is live now, so closing this.

from thunderbird-website.

ryanleesipes avatar ryanleesipes commented on August 15, 2024

Looks good!

from thunderbird-website.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.