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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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