efox99 wrote:Could it be that google/gmail changed something?
Not sure if this helps but Google have changed something recently because Webmail Notifier recently updated because people couldn't access their Gmail accounts.
efox99 wrote:Could it be that google/gmail changed something?
efox99 wrote:Sativarg wrote:Some thing has changed with Firefox 15.0 that is effecting login at https://mail.google.com/mail/ The username field will not highlight and is not filled when using the Secure Login 0.9.9
I decided to revert back to Firefox 14...and I still get the same problem. Could it be that google/gmail changed something?
Code: Select all
if(elements[i].type == 'text') {
// input of type "text" found, this is no password only form:
inputTextFound = true;
// We do not get a loginUsernameFieldName from Firefox 3:
if(!loginUsernameFieldName) {
// Assume the first text field followed by a password field is the username field
// Use another loop to skip non-text fields (e.g. checkboxes) between:
for(var j = i+1; j < elements.length; j++) {
if(elements[j].type == 'password') {
// Following password field found so the username field might be valid:
usernameField = elements[i];
break;
}
if(elements[j].type == 'text') {
// Another textfield found, this might be the username field, so break out of the loop:
break;
}
}
} else {
if(elements[i].name == loginUsernameFieldName) {
usernameField = elements[i];
}
}
}
Benjamin Markson wrote:Maybe secureLogin could check for: elements[i].type == 'text' || elements[i].type == 'email' ...just to accommodate Google
Ben.
efox99 wrote:Will altering the js file work?
Code: Select all
if(elements[i].type == 'text') {
Code: Select all
if(elements[i].type == 'text' || elements[i].type == 'email') {
Code: Select all
case 'email':
if(!usernameField || elements[i].name != usernameField.name) {
addToDataString(elements[i].name, elements[i].value);
} else {
// This is the userName field - use the saved username as value:
addToDataString(
usernameField.name,
this.getUsernameFromLoginObject(this.secureLogins[selectedIndex])
);
}
break;
Benjamin Markson wrote:Changing line 829 in secureLogin.js from:Code: Select all
if(elements[i].type == 'text') {
...to:Code: Select all
if(elements[i].type == 'text' || elements[i].type == 'email') {
Code: Select all
if (/(^text|^email)/i.test(elements[i].type)) {
Benjamin Markson wrote:And, following line 1542, adding this code in secureLogin.js [in fact a copy of lines 1532-1542 but for 'email']:Code: Select all
case 'email':
if(!usernameField || elements[i].name != usernameField.name) {
addToDataString(elements[i].name, elements[i].value);
} else {
// This is the userName field - use the saved username as value:
addToDataString(
usernameField.name,
this.getUsernameFromLoginObject(this.secureLogins[selectedIndex])
);
}
break;
...does, indeed, cure the Google Login Page problem.
Code: Select all
case 'text':
case 'email':
if(!usernameField || elements[i].name != usernameField.name) {
addToDataString(elements[i].name, elements[i].value);
} else {
// This is the userName field - use the saved username as value:
addToDataString(
usernameField.name,
this.getUsernameFromLoginObject(this.secureLogins[selectedIndex])
);
}
break;
efox99 wrote:Is there an easy way that I can edit that file? I have winrar but it doesn't let me edit the js file only view it.
What would be the easiest way and also show me the line numbers so I can easily edit.
Edit: I installed 7-zip...it allows me to edit...but the code looks all broken up squares, dots etc
Philip Chee wrote:Benjamin Markson wrote:Changing line 829 in secureLogin.js from:Code: Select all
if(elements[i].type == 'text') {
...to:Code: Select all
if(elements[i].type == 'text' || elements[i].type == 'email') {
Code: Select all
if (/(^text|^email)/i.test(elements[i].type)) {
Benjamin Markson wrote:And, following line 1542, adding this code in secureLogin.js [in fact a copy of lines 1532-1542 but for 'email']:Code: Select all
case 'email':
if(!usernameField || elements[i].name != usernameField.name) {
addToDataString(elements[i].name, elements[i].value);
} else {
// This is the userName field - use the saved username as value:
addToDataString(
usernameField.name,
this.getUsernameFromLoginObject(this.secureLogins[selectedIndex])
);
}
break;
...does, indeed, cure the Google Login Page problem.
You don't have to duplicate the whole section. Instead you can use the fact that the switch statement falls through:Code: Select all
case 'text':
case 'email':
if(!usernameField || elements[i].name != usernameField.name) {
addToDataString(elements[i].name, elements[i].value);
} else {
// This is the userName field - use the saved username as value:
addToDataString(
usernameField.name,
this.getUsernameFromLoginObject(this.secureLogins[selectedIndex])
);
}
break;
Phil
nomnomnom wrote:(efox99, that goes for you - close Firefox first before editing the file!)
Str0ngwun wrote:Did anyone try Secure Login Rebooted?
George Yves wrote:The fix works, thank you. But I can't understand why the author doesn't do it himself. It is not a hard work for an experienced user and developer.