In the Code Snippet below (as a standalone example) i tried to get a simple answer from a perl(cgi) script which works in the sense that the response_object has the data i want/expect
As i understood it from several sources the callback function would fire after a successful response.
When i check the value of "answer" before returning it or the value of "loginStatus" after functest has run its course i recieve "false" in both cases even tough the value recieved and processed in the callback is correct and should set "answer" to true.
Am i missing something here with the callback/RPC ?? or is the Problem somewhere else ??
....
	.....
	
							
						
					As i understood it from several sources the callback function would fire after a successful response.
When i check the value of "answer" before returning it or the value of "loginStatus" after functest has run its course i recieve "false" in both cases even tough the value recieved and processed in the callback is correct and should set "answer" to true.
Am i missing something here with the callback/RPC ?? or is the Problem somewhere else ??
....
Code:
	
	<SCRIPT>var isomorphicDir="../../isomorphic/";</SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_Core.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_Containers.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_Grids.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_Forms.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
  <SCRIPT SRC=../../isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
    <SCRIPT SRC=../../isomorphic/locales/frameworkMessages_de.properties></SCRIPT>
Code:
	
	<SCRIPT>
isc.Button.create(
{
    left:20,
    title: "Login",
    click : function () {
        isc.showLoginDialog(function (credentials, dialogCallback) {
        
            var loginStatus = functest(credentials.username,credentials.password);
            console.log("LOG "+ loginStatus);
            dialogCallback(loginStatus);
            
        },
        {
        dismissable: true
        });
},
    top:45
});
function functest (user,pass) {
    var answer = false;
    isc.RPCManager.sendRequest({
                actionURL: "scripts/logcheck.pl",
                containsCredentials:true,
                httpMethod: "POST",
                useSimpleHttp: true,
                showPrompt:false,
                serverOutputAsString: true,
                params: {    j_username: user,
                            j_password: pass},
                callback: function (RpcResponse_o) {
                    if (RpcResponse_o.data == "1") {
                        answer = true;
                        console.log("change_aw"+ answer);
                    }
                }
    });
    console.log("return_aw"+ answer);
    return answer;
}
</SCRIPT>
Comment