Change login-process for Ban-System

This commit is contained in:
VegaZ
2018-09-26 20:00:13 +02:00
parent 3c5ecdd8e4
commit b5bdb6f123
5 changed files with 75 additions and 27 deletions

View File

@@ -24,6 +24,36 @@ namespace reallife_gamemode.Server.Events
player.Position = new Vector3(-1883.736, -781.4911, -10);
player.FreezePosition = true;
}
[RemoteEvent("IsPlayerBanned")]
public void IsPlayerBanned(Client player)
{
using (var loginUser = new Model.DatabaseContext())
{
var user = loginUser.Users.SingleOrDefault(b => b.Name == player.Name);
if (user.BanId != null)
{
using (var banUser = new DatabaseContext())
{
var dt = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
var bannedUser = banUser.Bans.SingleOrDefault(u => u.Id == user.BanId);
if (bannedUser.Applied == bannedUser.UntilDateTime)
{
player.SendChatMessage("!{#FF4040}Du wurdest permanent gebannt! [" + bannedUser.Reason + "]");
//player.Kick();
}
else
{
var timeStamp = bannedUser.UntilDateTime;
player.SendChatMessage("Du bist noch bis zum !{#FF4040}" + dt.AddSeconds(timeStamp).ToLocalTime() + " Uhr ~s~gebannt. [" + bannedUser.Reason + "]");
//player.Kick();
}
}
}
else player.TriggerEvent("showLogin");
}
}
}
}

View File

@@ -3,6 +3,8 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using GTANetworkAPI;
using reallife_gamemode.Model;
using reallife_gamemode.Server.Entities;
/**
* @overview Life of German Reallife - Event Login (Login.cs)
@@ -36,7 +38,7 @@ namespace reallife_gamemode.Server.Events
if (user.Password != NAPI.Util.GetHashSha256(password))
{
player.TriggerEvent("loginFail", "Passwort inkorrekt!");
}
}
else
{
player.TriggerEvent("loginSuccess");