dwr.engine.setErrorHandler(noUserHandler);

function noUserHandler(message, exception) {
	if (exception && exception.javaClassName == 'com.pijin.calcifer.server.dwr.LoginRequiredException') {
		window.location.replace("login.html");
	}
};

function checkLoggedIn(role, callback) {
	PijinService.checkLoggedIn(role, function(loginCheck) {
		if (loginCheck.code == 1) {
		    _user = loginCheck.user;
			if (callback != null) {
				callback();
			}
			return;
		}
		var url = "login.html?f=" + window.location.href.substr(window.location.href.indexOf('/', 8));
		if (loginCheck.code == 2) {
			url += "&m=np";	
		}
		if (loginCheck.code == 3) {
			url += "&m=ir";
		}
		
		window.location.replace(url);
	});
};

function signOut(callback) {
    PijinService.signOut(function() {
        _user = null;
		if (callback != null) {
			callback();
		}
	});
};

var _user;

