webcompat / web-bugs

A place to report bugs on websites.
https://webcompat.com
Mozilla Public License 2.0
741 stars 64 forks source link

twint.parkingpay.ch - Firefox is unsupported browser #71177

Open webcompat-bot opened 3 years ago

webcompat-bot commented 3 years ago

URL: https://twint.parkingpay.ch/twint-more-map-checkin/7bb6bcae-d1fc-45ec-a45a-05d500456db1?returnAppScheme=twint-issuer3

Browser / Version: Firefox iOS 33.0 Operating System: iOS 14.4.2 Tested Another Browser: Yes Internet Explorer

Problem type: Site is not usable Description: Browser unsupported Steps to Reproduce: trying to pay parking fee results in msg : At present it is not possible to issue payments usin firefox .pls use other browser

View the screenshot Screenshot
Browser Configuration
  • None

From webcompat.com with ❤️

softvision-raul-bucata commented 3 years ago

We appreciate your report. I was able to reproduce the issue.

IMG_0142

Notes:

  1. Reproducible regardless of the status of ETP
  2. Reproducible on the latest build of Firefox Nightly
  3. This is the result using Safari: IMG_0143

Tested with: Browser/Version: Safari 14.4.2/ Firefox Daylight 33.0 (4119) Operating System: iOS 14.4.2

Moving this to NeedsDiagnosis for further investigations.

karlcow commented 3 years ago
export function handleFirefoxNoPaymentPossible() {
    const agent = new UAParser().getResult();

    const isFirefox80orLowerOnAndroid =
        agent?.browser?.name?.toLowerCase()?.startsWith('firefox') === true &&
        (agent?.os?.name?.toLowerCase()?.indexOf('android') ?? 0) > -1 &&
        (agent?.browser?.version ?? '1.0') <= '80.0';

    const isFirefoxOnIos =
        agent?.browser?.name?.toLowerCase()?.startsWith('firefox') === true &&
        (agent?.os?.name?.toLowerCase()?.indexOf('ios') ?? 0) > -1;

    if (isFirefox80orLowerOnAndroid || isFirefoxOnIos) {
        return (
            <AlertBox
                confirmLabel={{
                    de: 'Zurück',
                    fr: 'Retour',
                    it: 'Indietro',
                    en: 'Back'
                }}
                onConfirm={() => {
                    window.history.back();
                }}
            >
                <Lang
                    de="Zurzeit können keine Zahlungen über Firefox getätigt werden. Bitte benutzen Sie einen anderen Browser."
                    fr="Aucun paiement ne peut actuellement être effectué via Firefox. Veuillez utiliser un autre navigateur."
                    it="Attualmente non è possibile effettuare pagamenti tramite Firefox. La preghiamo di utilizzare un altro browser."
                    en="No payments can currently be made via Firefox. Please use another browser."
                />
            </AlertBox>
        );
    }

    return null;
}

This doesn't really test the web payment API but more user agent sniffing. Feature detection would be better here. Be for Android or Firefox iOS.

if (window.PaymentRequest) {}
webcompat-bot commented 3 years ago

Generate outreach template