

function Dispatcher(){
	
}
/**
*	@param String server
*	@param String query
*	@param String user
*	@param String id
*	@param function successFunc
*	@param String successMsg
*	@param function errorFunc
* 	@param String errorMsg
*/
Dispatcher.prototype.send = function(server,query,user,id,successFunc,successMsg,errorFunc,errorMsg){
	$.facebox.loading();
	$.post(core.server(server), {
		query : query,
		user : user,
		id : id
		}, function(xml){
			if($('error',xml).text() == "No"){
				if(successFunc != "")
					eval(successFunc);
				$.facebox(successMsg);
			} else if($('error',xml).text() != "Yes"){
				$.facebox($('error',xml).text());
			} else {
				if(errorFunc != "")
					eval(errorFunc);
				$.facebox(errorMsg);
			}
	});
}

/**
*	@param String server
*	@param String query
*	@param String user
*	@param String id
*	@param function successFunc
*	@param String successMsg
*	@param function errorFunc
* 	@param String errorMsg
*/
Dispatcher.prototype.login = function(server,query,user,password,id){
	$.facebox.loading();
	$.post(core.server(server), {
		query : query,
		user : user,
		id : id
		}, function(xml){
			if($('error',xml).text() == "No"){
				var challange = $('userChallange',xml).text();
                var passHash = SHA1(password);
                var response = SHA1(passHash+challange);

                var query = "action:loginDo||response:"+response;
                var server = "/core/server.Auth.php";
                var successFunc = "auth.reload(5000)";
                var successMsg = i18n.translate("login:success");
                var errorMsg = i18n.translate("login:error");

                disp.send(server,query,user,id,successFunc,successMsg,"",errorMsg);
               

			} else {
				$.facebox("wrong username.");
			}
	});
}

/**
*	@param String server
*	@param String query
*	@param function successFunc
*	@param String successMsg
*	@param function errorFunc
* 	@param String errorMsg
*/
Dispatcher.prototype.submit = function(server,query,successFunc,successMsg,errorFunc,errorMsg){
	$.facebox.loading();
	$.post(core.server(server), {
		query : query
		}, function(xml){
			if($('error',xml).text() == "No"){
				if(successFunc != "")
					eval(successFunc);
				$.facebox(successMsg);
			} else {
				if(errorFunc != "")
					eval(errorFunc);
				$.facebox(errorMsg);
			}
	});
}

var disp = new Dispatcher();