Code: Select all
function onUserLogin(evtParams) {
var connection = dbMan.getConnection();
var username = evtParams.getParameter(SFSEventParam.LOGIN_NAME);
var loginPass = evtParams.getParameter(SFSEventParam.LOGIN_PASSWORD);
var getByUserStmt = connection.prepareStatement("SELECT username, password FROM user WHERE username=?");
getByUserStmt.setString(1, username);
var result = getByUserStmt.executeQuery();
var session = evtParams.getParameter(SFSEventParam.SESSION);
if (result.next()) {
var dbPassword = result.getString("password");
trace(getApi().checkSecurePassword(session, dbPassword, loginPass))
} else {
trace("Username not found: " + username);
var insertStmt = connection.prepareStatement("INSERT INTO user (username, password) VALUES (?,?)");
insertStmt.setString(1, username);
insertStmt.setString(2, loginPass);
insertStmt.executeUpdate();
// var errData = new SFSErrorData(SFSErrorCode.LOGIN_BAD_USERNAME);
// errData.addParameter(username);
// throw new SFSLoginException('Username not found.', errData);
}
trace("Process Login.");
}I have a check function like this, but the checkSecurePassword function always returns false. Please help me. Thanks bro