aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/net/elytrium/limboauth/LimboAuth.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/elytrium/limboauth/LimboAuth.java')
-rw-r--r--src/main/java/net/elytrium/limboauth/LimboAuth.java19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/main/java/net/elytrium/limboauth/LimboAuth.java b/src/main/java/net/elytrium/limboauth/LimboAuth.java
index b9f6453..9eaef13 100644
--- a/src/main/java/net/elytrium/limboauth/LimboAuth.java
+++ b/src/main/java/net/elytrium/limboauth/LimboAuth.java
@@ -27,6 +27,7 @@ import com.j256.ormlite.dao.GenericRawResults;
import com.j256.ormlite.db.DatabaseType;
import com.j256.ormlite.field.FieldType;
import com.j256.ormlite.stmt.QueryBuilder;
+import com.j256.ormlite.stmt.UpdateBuilder;
import com.j256.ormlite.support.ConnectionSource;
import com.j256.ormlite.table.TableInfo;
import com.j256.ormlite.table.TableUtils;
@@ -515,7 +516,9 @@ public class LimboAuth {
"",
System.currentTimeMillis(),
player.getUniqueId().toString(),
- player.getUniqueId().toString()
+ player.getUniqueId().toString(),
+ player.getRemoteAddress().getAddress().getHostAddress(),
+ System.currentTimeMillis()
);
try {
@@ -572,6 +575,12 @@ public class LimboAuth {
switch (event.getResult()) {
case BYPASS: {
this.factory.passLoginLimbo(player);
+ this.cacheAuthUser(player);
+ try {
+ this.updateLoginData(player);
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
break;
}
case CANCEL: {
@@ -594,6 +603,14 @@ public class LimboAuth {
}
}
+ public void updateLoginData(Player player) throws SQLException {
+ UpdateBuilder<RegisteredPlayer, String> updateBuilder = this.playerDao.updateBuilder();
+ updateBuilder.where().eq(RegisteredPlayer.LOWERCASE_NICKNAME_FIELD, player.getUsername().toLowerCase(Locale.ROOT));
+ updateBuilder.updateColumnValue(RegisteredPlayer.LOGIN_IP_FIELD, player.getRemoteAddress().getAddress().getHostAddress());
+ updateBuilder.updateColumnValue(RegisteredPlayer.LOGIN_DATE_FIELD, System.currentTimeMillis());
+ updateBuilder.update();
+ }
+
private boolean validateScheme(JsonElement jsonElement, List<String> scheme) {
if (!scheme.isEmpty()) {
if (!(jsonElement instanceof JsonObject)) {