From 869697bdccf0b2d2dfba4981e1e5c94bceb7472a Mon Sep 17 00:00:00 2001 From: BobyTS Date: Sat, 17 Dec 2022 17:46:12 +0100 Subject: [PATCH 1/3] Fix SQL query for removing hand items --- .../src/main/java/org/alexdev/havana/dao/mysql/ItemDao.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Havana-Server/src/main/java/org/alexdev/havana/dao/mysql/ItemDao.java b/Havana-Server/src/main/java/org/alexdev/havana/dao/mysql/ItemDao.java index cc20ec8..30d0f12 100644 --- a/Havana-Server/src/main/java/org/alexdev/havana/dao/mysql/ItemDao.java +++ b/Havana-Server/src/main/java/org/alexdev/havana/dao/mysql/ItemDao.java @@ -580,7 +580,7 @@ public class ItemDao { try { sqlConnection = Storage.getStorage().getConnection(); - preparedStatement = Storage.getStorage().prepare("DELETE items WHERE is_hidden = 0 AND is_trading = 0 AND room_id = 0 AND user_id = ?", sqlConnection); + preparedStatement = Storage.getStorage().prepare("DELETE FROM items WHERE is_hidden = 0 AND is_trading = 0 AND room_id = 0 AND user_id = ?", sqlConnection); preparedStatement.setInt(1, userId); preparedStatement.execute(); From 7b97e086c99358ae009ad9865eb9efe626cfe6d0 Mon Sep 17 00:00:00 2001 From: BobyTS Date: Sat, 17 Dec 2022 17:57:11 +0100 Subject: [PATCH 2/3] Fix trade-ban to ban only on suspicious behavior --- .../org/alexdev/havana/game/player/PlayerDetails.java | 4 ++++ .../havana/game/room/managers/RoomTradeManager.java | 4 ++-- .../havana/messages/incoming/catalogue/GRPC.java | 7 ++++--- .../messages/incoming/rooms/items/PLACESTUFF.java | 11 ++++++++--- 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/Havana-Server/src/main/java/org/alexdev/havana/game/player/PlayerDetails.java b/Havana-Server/src/main/java/org/alexdev/havana/game/player/PlayerDetails.java index ad4f45d..f91cc04 100644 --- a/Havana-Server/src/main/java/org/alexdev/havana/game/player/PlayerDetails.java +++ b/Havana-Server/src/main/java/org/alexdev/havana/game/player/PlayerDetails.java @@ -538,4 +538,8 @@ public class PlayerDetails { public String getPreviousRespectDay() { return previousRespectDay; } + + public String getIpAddress() { + return PlayerDao.getLatestIp(this.getId()); + } } diff --git a/Havana-Server/src/main/java/org/alexdev/havana/game/room/managers/RoomTradeManager.java b/Havana-Server/src/main/java/org/alexdev/havana/game/room/managers/RoomTradeManager.java index 8c88a1a..44b698e 100644 --- a/Havana-Server/src/main/java/org/alexdev/havana/game/room/managers/RoomTradeManager.java +++ b/Havana-Server/src/main/java/org/alexdev/havana/game/room/managers/RoomTradeManager.java @@ -150,8 +150,8 @@ public class RoomTradeManager { * @param tradeBanned the person that is trade banned. */ public static void addTradeBan(Player tradeBanned) { - tradeBanned.send(new ALERT("You have been trade banned for 7 days for suspicious activity. Do not give credits to other users.
Read for more info: https://classichabbo.com/articles/22-trade-banned")); - tradeBanned.getDetails().setTradeBanExpiration(DateUtil.getCurrentTimeSeconds() + TimeUnit.DAYS.toSeconds(7)); + tradeBanned.send(new ALERT("You have been trade banned for 5 days for suspicious activity. Do not give credits to other users.")); + tradeBanned.getDetails().setTradeBanExpiration(DateUtil.getCurrentTimeSeconds() + TimeUnit.DAYS.toSeconds(5)); ItemDao.saveTradeBanExpire(tradeBanned.getDetails().getId(), tradeBanned.getDetails().getTradeBanExpiration()); } diff --git a/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/catalogue/GRPC.java b/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/catalogue/GRPC.java index b8d856c..d0496cf 100644 --- a/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/catalogue/GRPC.java +++ b/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/catalogue/GRPC.java @@ -147,13 +147,14 @@ public class GRPC implements MessageEvent { return; } - //if (item.getDefinition().hasBehaviour(ItemBehaviour.REDEEMABLE)) { + if (item.getDefinition().hasBehaviour(ItemBehaviour.REDEEMABLE)) { if (!player.hasFuse(Fuseright.MUTE) - && giftedUserDetails.getId() != player.getDetails().getId()) { + && giftedUserDetails.getId() != player.getDetails().getId() + && giftedUserDetails.getIpAddress().equals(player.getDetails().getIpAddress())) { RoomTradeManager.addTradeBan(player); return; } - //} + } } String presentNote = reader.readString(); diff --git a/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/rooms/items/PLACESTUFF.java b/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/rooms/items/PLACESTUFF.java index 7d8a9d3..03d34cd 100644 --- a/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/rooms/items/PLACESTUFF.java +++ b/Havana-Server/src/main/java/org/alexdev/havana/messages/incoming/rooms/items/PLACESTUFF.java @@ -4,8 +4,10 @@ import org.alexdev.havana.dao.mysql.ItemDao; import org.alexdev.havana.dao.mysql.TransactionDao; import org.alexdev.havana.game.fuserights.Fuseright; import org.alexdev.havana.game.item.Item; +import org.alexdev.havana.game.item.ItemManager; import org.alexdev.havana.game.item.base.ItemBehaviour; import org.alexdev.havana.game.player.Player; +import org.alexdev.havana.game.player.PlayerDetails; import org.alexdev.havana.game.player.PlayerManager; import org.alexdev.havana.game.room.Room; import org.alexdev.havana.game.room.managers.RoomTradeManager; @@ -64,14 +66,17 @@ public class PLACESTUFF implements MessageEvent { } } + PlayerDetails ownerDetails = PlayerManager.getInstance().getPlayerData(room.getData().getOwnerId()); + // Giving credits to self on same IP is suspicious behaviour - //if (item.hasBehaviour(ItemBehaviour.REDEEMABLE) || ItemManager.getInstance().hasPresentBehaviour(item, ItemBehaviour.REDEEMABLE)) { + if (item.hasBehaviour(ItemBehaviour.REDEEMABLE) || ItemManager.getInstance().hasPresentBehaviour(item, ItemBehaviour.REDEEMABLE)) { if (!player.hasFuse(Fuseright.MUTE) - && room.getData().getOwnerId() != player.getDetails().getId()) { + && room.getData().getOwnerId() != player.getDetails().getId() + && player.getDetails().getIpAddress().equals(ownerDetails.getIpAddress())) { RoomTradeManager.addTradeBan(player); return; } - //} + } var ownerData = PlayerManager.getInstance().getPlayerData(room.getData().getOwnerId()); From ef8e6bfe00c6add1c7f3f293179b8f7735ca6234 Mon Sep 17 00:00:00 2001 From: afa93001d48a <117339224+afa93001d48a@users.noreply.github.com> Date: Sun, 15 Jan 2023 21:14:12 +0100 Subject: [PATCH 3/3] Set alt/title name based on variables --- tools/www-tpl/default-en/homes/widget/guestbook/add.tpl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/www-tpl/default-en/homes/widget/guestbook/add.tpl b/tools/www-tpl/default-en/homes/widget/guestbook/add.tpl index fb7c289..94ceb35 100644 --- a/tools/www-tpl/default-en/homes/widget/guestbook/add.tpl +++ b/tools/www-tpl/default-en/homes/widget/guestbook/add.tpl @@ -6,7 +6,7 @@
  • - Alex + {{ entry.getUser().getName() }}
    {% if hasDeletePermission %}
    @@ -26,4 +26,4 @@
     
    -
  • \ No newline at end of file +