Bonjour,

je travaille sur une extension firefox (3.0) et je cherche a stocker un password.
Pour cela, je me tourne vers les interfaces nsILoginManager.

Voici le javascript

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
// create instance of LoginManager
var myLoginManager = Components.classes["@mozilla.org/login-manager;
1"].getService(Components.interfaces.nsILoginManager);
// create instance of LoginInfo
var nsLoginInfo = new Components.Constructor("@mozilla.org/login-
manager/loginInfo;1",Components.interfaces.nsILoginInfo,"init");
Maintenant, je stock un loginInfo:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
var newLoginInfo= new nsLoginInfo('http://www.monsite.com','https://login.monsite.com', null,  username.value, password.value, 'email', 'pass');
myLoginManager .addLogin(newLoginInfo);
Si je regarde dans Tools|Options...|security, je peux voir que les infos de login sont bien présentes.

Si j'ai bien compris la doc, 'email' et 'pass' sont les attibuts name des inputs de type text, la première url est l'url qui contient le formulaire et la seconde celle de l'attibut action du formulaire avec la fin du path enlevée.

Directement après, j'essaie de remplir le formulaire de la manière suivante mais rien ne se passe. (les champs ne sont pas rempli)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
myLoginManager.fillForm(currentDoc.getElementById("pass"));
"pass" est l'attribut "name" du formulaire. Je ne vosi pas ce qui cloche.

Je ne sais si quelqu'un a de l'expérience avec les interfaces offertes par mozilla? Je peine à trouver des examples.

Merci d'avance