Closed Bug 1493098 Opened 6 years ago Closed 5 years ago

Can't type in Wikipedia donation page credit card number text field

Categories

(Core :: DOM: Events, defect, P2)

defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox62 --- unaffected
firefox63 + disabled
firefox64 --- disabled
firefox65 --- affected

People

(Reporter: pascalc, Unassigned)

References

Details

(Keywords: regression, site-compat)

Mozilla/5.0 (X11; Linux x86_64; rv:64.0) Gecko/20100101 Firefox/64.0 ID:20180920100522

STR:
1/ go to https://payments.wikimedia.org/index.php?title=Special:AdyenGateway&appeal=JimmyQuote&ffname=adyen-test&recurring=false&utm_source=fr-redir.default~default~default~default~control.cc&utm_medium=spontaneous&utm_campaign=spontaneous&utm_key=&referrer=&language=fr&country=FR&payment_method=cc&payment_submethod=&gateway=adyen&variant=&amountGiven=&frequency=onetime&amount=20&currency=EUR

2/ Type your first name, name, email and click on the CB (credit card) icon, first icon in the raw

3/ Type your credit card number

ER:
Numbers are input in the field

AR:
Nothing happens

mozregression results:
14:37.28 INFO: Last good revision: 705c9f7e55d416f436bb39fd3a4792af133ffa59
14:37.28 INFO: First bad revision: 5e32f9974bd52cc7ebd00c4d4fa256515b5ab951
14:37.28 INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=705c9f7e55d416f436bb39fd3a4792af133ffa59&tochange=5e32f9974bd52cc7ebd00c4d4fa256515b5ab951

Works in 62, this is a regression in 63 caused by bug 218415. Henri could you have a look please?

I am going to track this regression for 63 as we ship late October which is a period of the year when Wikipedia does a call for donations.
Flags: needinfo?(hsivonen)
Keywords: site-compat
The input in question.

<input type="text" class="inputField errorField" id="card.cardNumber" onkeypress="return blockNonNumberEvents(event)" onkeyup="card_validateCcNumber(event, 'card', card_types, card_logos, card_subVariantExtras, card_subVariantExtrasPhrase)" onchange="card_validateCcNumber(event, 'card', card_types, card_logos, card_subVariantExtras, card_subVariantExtrasPhrase) ; card_doCCCheck('card')" name="card.cardNumber" value="" size="22" maxlength="19" inputmode="numeric" x-inputmode="numeric" autocomplete="cc-number">

https://live.adyen.com/hpp/js/default.js?v=ef18

function preventEnterSubmit () {

    var inputs = document.getElementsByTagName( 'input' );
    for ( var i = 0; i < inputs.length; i++ ) {

        if ( inputs[ i ].type != "text" && inputs[ i ].type != "password" )
            continue;

        if ( inputs[ i ].onkeypress )
            continue;

        inputs[ i ].onkeypress = function ( e ) {
            var keycode;
            if ( window.event )
                keycode = window.event.keyCode;
            else if ( e )
                keycode = e.which;
            else
                return true;

            if ( keycode == 13 ) {
                return false;
            } else {
                return true;
            }
        }
    }
}

This is probably Bug 1479964. See https://bugzilla.mozilla.org/show_bug.cgi?id=1479964#c13 for what I think we should do.
No longer blocks: 218415
Depends on: 1479964
In the meantime, someone could fix that by changing keycode = window.event.keyCode; to:

 keycode = window.event.keyCode || window.event.which;
Flags: needinfo?(hsivonen)
Flags: needinfo?(miket)
The underlying issue (implementing window.event) was just restricted to nightly only (and received beta uplift): https://hg.mozilla.org/releases/mozilla-beta/rev/b404112c2f6c

Setting 63 to disabled to reflect that.
Flags: needinfo?(miket)
According to comment #3, should we also disabled window.event on Nightly too?
Flags: needinfo?(xidorn+moz)
Priority: -- → P2
See Also: → 1493869
Do we care a lot about webcompat on Nightly? I doubt. There are various prefs which may affect webcompat enabled on Nightly for quite long. People use Nightly should be able to tweak those prefs as they like.

If we do care a lot about webcompat on Nightly, maybe a better approach would be to disable window.event on specific popular sites with the problem. This can be done via a content script to set window.event to undefined. (Because window.event is [Replaceable], setting it makes its underlying attribute no longer accessible.)
Flags: needinfo?(xidorn+moz)
IMO, we should keep it enabled in Nightly.

This is working now, due to Bug 1479964.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WORKSFORME

(maybe fixed is better here, i dunno)

You need to log in before you can comment on or make changes to this bug.