Closed Bug 919566 Opened 8 years ago Closed 5 years ago

Cannot login on developer.jcdecaux.com

Categories

(Web Compatibility :: Desktop, defect)

defect
Not set
normal

Tracking

(firefox24 affected, firefox25 affected, firefox26 affected, firefox27 affected, firefox-esr17 unaffected, firefox-esr24 affected)

RESOLVED FIXED
Tracking Status
firefox24 --- affected
firefox25 --- affected
firefox26 --- affected
firefox27 --- affected
firefox-esr17 --- unaffected
firefox-esr24 --- affected

People

(Reporter: mathieu.marquer, Unassigned)

References

()

Details

(Whiteboard: [country-fr] )

Attachments

(2 files)

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0 (Beta/Release)
Build ID: 20130922030201

Steps to reproduce:

Go on https://developer.jcdecaux.com/#/sign
Try to login with a valid account


Actual results:

If the username/password combination is correct, nothing happens.


Expected results:

You should be logged in the website. Works with latest Chrome stable. Error in the browser console:

angular.min.js:60

Error: $scope.user is undefined
onLoginSubmit@https://developer.jcdecaux.com/res/script/controller/SignCtrl.js:75
SignCtrl/$scope.submit@https://developer.jcdecaux.com/res/script/controller/SignCtrl.js:13
Lc/z/<@https://developer.jcdecaux.com/res/lib/angularjs/angular.min.js:70
e.prototype.$eval@https://developer.jcdecaux.com/res/lib/angularjs/angular.min.js:86
e.prototype.$apply@https://developer.jcdecaux.com/res/lib/angularjs/angular.min.js:86
Dd</<@https://developer.jcdecaux.com/res/lib/angularjs/angular.min.js:141
st.event.dispatch@https://developer.jcdecaux.com/res/lib/jquery/jquery-1.9.0.min.js:2
st.event.add/y.handle@https://developer.jcdecaux.com/res/lib/jquery/jquery-1.9.0.min.js:2
Thanks for the report!

Can you try with the current release version (i.e., 24) and see if that works? And if so, maybe even Beta and Aurora? The important part for us is to know whether this is a regression on our side or a compatibility issue with the site.
Works with FF24, 25b1, doesn't work with 26a2, current nightly (all tested this time with Linux x64, I don't currently have a Windows with me but as the original report said it doesn't work with Windows 7 x64 with latest nightly).
Great, thanks - that helps a lot.
OS: Windows 7 → All
Hardware: x86_64 → All
WFM with Firefox 27.
Guest account:
U: bugzilla@yopmail.net
P: azerty

Could you test with a clean profile, please.
https://support.mozilla.org/fr/kb/utiliser-gestionnaire-profils-creer-supprimer-profils (I guess you're French)
Flags: needinfo?(mathieu.marquer)
Sorry, it doesn't work with the current Nightly, mine wasn't updated since 2 days.
Flags: needinfo?(mathieu.marquer)
It does indeed work with the bugzilla@yopmail.net, but not with mine... (same in safe mode).
OK, found the track: if the username/password is saved in the browser, and the fields are consequently autocompleted on the page, it won't work and the console will give the JS error above. If the username/password are entered manually, then it works.
Yes, here the STR:
1) Open https://developer.jcdecaux.com/#/sign
2) Login with bugzilla@yopmail.net / azerty and save the password in Firefox
3) Disconnect to the website
4) Autocomplete the login input

Result: the website displays "wrong password".

Regression range:
good=2013-06-20
bad=2013-06-21
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=8ea92aeab783&tochange=7ba8c86f1a56

Before 2013-06-20, Firefox wasn't able to autocomplete the password field when the login is entered, after 2013-06-21 the bug appears.
Bad: password field is empty.
http://hg.mozilla.org/integration/mozilla-inbound/rev/6ee152636ad4
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20130619 Firefox/24.0 ID:20130619155313

Bad: password field is filled, but the website displays "wrong password".
http://hg.mozilla.org/integration/mozilla-inbound/rev/1213ea1ff91a
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20130619 Firefox/24.0 ID:20130619163255

Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=6ee152636ad4&tochange=1213ea1ff91a

Suspected: Bug 839961


I think the site require "input event" to password field.

After password field is auto filled,
Execute the following JS code in Web Console. And Click "Sign in". Then successfully logged in.

var evt = document.createEvent("HTMLEvents");
evt.initEvent("input", true, true );
document.getElementById("password").dispatchEvent(evt);
Blocks: 839961
Component: JavaScript Engine → Password Manager
Product: Core → Toolkit
Version: 26 Branch → 24 Branch
Status: UNCONFIRMED → NEW
Ever confirmed: true
Thanks for the investigation in comments 8 and 9.

Sounds like this is basically a race condition in the site. Presumably the |input| event from the autofill is simply happening before the site has a listener attached, since we fill in the password earlier now. Not much we can do about that, please contact the site owner and ask them to fix their code.

I'd suspect a workaround is to click in the password field, add any character to the existing password, and then delete it.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INVALID
Let's move this to tech evangelism instead of closing it as invalid, then.
Status: RESOLVED → REOPENED
Component: Password Manager → English US
Product: Toolkit → Tech Evangelism
Resolution: INVALID → ---
Version: 24 Branch → unspecified
Attached file passwd.html
No "input" event fire for the password field when the password field is auto-filled. 

Is this intentional behavior?
(In reply to Alice0775 White from comment #12)
> Created attachment 809483 [details]
> passwd.html
> 
No "input" event fire for the password field when the password field is auto-filled. 

Is this intentional behavior?
Flags: needinfo?(dolske)
I thought  it did (implicitly, from the field being modified), but maybe not? Password manager itself certainly never created one. Still a race, if the site was just relying on passwords only being filed after the page loads.
Flags: needinfo?(dolske)
Thanks for investigating, I sent them an email through their contact page.
They acknowledged my email and said they would fix it "ASAP".
Assignee: general → nobody
There is another issue going on. See the screenshot with Firefox on Top and Opera Blink on the bottom.


The site is totally unusable currently.
https://developer.jcdecaux.com/#/home

16:44:37.820 "Error: h is undefined
@https://developer.jcdecaux.com/scripts/b2b31aab.scripts.js:1:17300
d@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:13473
e@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:13585
Nb/this.$get</<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:29730
q/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:22717
f@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:3:30886
q@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:22582
h@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:19244
C/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:18937
$/e/</<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4407
wc/this.$get</i.prototype.$eval@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:18740
wc/this.$get</i.prototype.$apply@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:19024
$/e/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4365
d@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:13473
$/e@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4347
$@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4458
Z@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4000
@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:7:6351
kb.Callbacks/l@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:2:4634
kb.Callbacks/m.fireWith@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:2:5437
.ready@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:1:14066
xb@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:1:11413
" 59cdab37.vendor.js:5

16:44:37.821 "Error: a.i18n is undefined
f@https://developer.jcdecaux.com/scripts/b2b31aab.scripts.js:1:16314
@https://developer.jcdecaux.com/scripts/b2b31aab.scripts.js:1:17188
wc/this.$get</i.prototype.$digest@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:17769
wc/this.$get</i.prototype.$apply@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:19068
$/e/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4365
d@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:13473
$/e@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4347
$@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4458
Z@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:4:4000
@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:7:6351
kb.Callbacks/l@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:2:4634
kb.Callbacks/m.fireWith@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:2:5437
.ready@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:1:14066
xb@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:1:11413
" 59cdab37.vendor.js:5

16:44:38.152 "Error: a.i18n is undefined
f@https://developer.jcdecaux.com/scripts/b2b31aab.scripts.js:1:16314
wc/this.$get</i.prototype.$broadcast@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:19852
m/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:7:17091
vc/h/g.promise.then/j@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:14066
vc/h/g.promise.then/j@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:14066
vc/i/<.then/<@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:14753
wc/this.$get</i.prototype.$eval@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:18740
wc/this.$get</i.prototype.$digest@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:17498
wc/this.$get</i.prototype.$apply@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:19068
f@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:525
r@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:2289
Wb/</w.onreadystatechange@https://developer.jcdecaux.com/scripts/59cdab37.vendor.js:5:2825
" 59cdab37.vendor.js:5
Whiteboard: [country-fr]
Component: English US → Desktop
The website WFM in FF32/35. Did you test with a clean profile?
Site looks fine here.
I think the password manager should send change events for the form elements,  but I'm not sure about input. Does it send keydown/up/press events? If yes, it certainly should send input. If no, I'm not sure.
It has been fixed. It is working.
Status: REOPENED → RESOLVED
Closed: 8 years ago5 years ago
Resolution: --- → FIXED
Product: Tech Evangelism → Web Compatibility
You need to log in before you can comment on or make changes to this bug.