Widget vista, ajax compatibles
Hello,
je travaille sur l'écriture d'un widget vista, qui recupere differente urls et texte pour mettre a jour le widget en lui meme, tout ça via des requetes ajax avec la lib prototype 1.6. jusque la pas de soucis ça fonctionne.
dans le flyout j'essaie de verifier un login/mot de passe, pour cela j'appelle une fonction javascript définie dans ma classe settings, qui fait un appel ajax.
et la c'est le mystere, si j'appelle la méthode checkLogin de la classe settings depuis la fonction flyinit(), ça fonctionne et met mon flyout a jour.
si je l'appelle depuis la fonction saveFlySettings, définie dans le meme fichier js que la fonction flyinit, alors là c'est le drame,
c'est comme si l'execution stoppait net juste avant le new Ajax.request.
code du settings.js (fonction checkLogin)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
XMLSettings = function()
{
};
XMLSettings.prototype =
{
xmlSettingsFile : System.Gadget.path + "\\gadgetSettings.xml",
/* xmlSettingsFile : "/widgetVista/gadgetSettings.xml",*/
xmlSettings : null,
error : false,
fileExist : false,
settings : null,
rubriques : '',
sites : '',
...
checkLogin: function(site,username,password)
{
writeLog('checkLoginENTER','hhhh');
new Ajax.Request('http://dev.aufeminin.com/widgetVista/checkLogin.asp?site=1&username=cmogentale&password=452874',
{
onSuccess : function(resp)
{
writeLog('checkLoginSUCCESS','hhh');
$('loginResult').innerHTML=resp.responseText;
Ajax.activeRequestCount--;
},
onFailure : function()
{
writeLog('checkLoginFAILURE');
$('loginResult').innerHTML='[Connexion impossible aux serveurs]';
},
onException: function()
{ }
}
); |
code du flyout.js (appel de checkLogin)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
g_site=1;
function flyInit()
{
settings=new XMLSettings();
settings.getRubriquesSelecteur(g_site);
//settings.checkLogin(g_site,'dupont','xwcwxc');
//settings.getSitesSelecteur();
}
function calcRubriques()
{
// settings.getRubriquesSelecteur(g_site);
}
function saveFlySettings()
{
g_username=$('username').value;
g_password=$('password').value;
g_rubriques='';
//parcours des rubriques cochées
casesRub=$('rubriques').getElementsByClassName('rub');
for(i=0;i<casesRub.length;i++)
{
nomCase=casesRub[i].name;
idCase=casesRub[i].id;
if($(idCase).checked==true) g_rubriques=g_rubriques + nomCase.replace('rub','')+';';
}
settingsLogin=new XMLSettings();
writeLog('FlyChecklogin.txt','ddd');
settingsLogin.checkLogin(g_site,'dupont','452sdfsdf874');
//result=settings.checkLogin(g_site,g_username,g_password);
writeLog('FlyCheckLogin2Result.txt',result);
if(result==true)
{
settings.writeAll();
System.Gadget.Flyout.show=false;
}
} |
dans la fonction checkLogin, je précise que dans le cas "vaudou", l'execution ne rentre jamais ni dans onSuccess, ni dans onFailure, ni dans onException,
HELP !
un grand merci par avance pour votre aide
christophe