added napiszar, using MsEntitiFramework, addreactionrole command working just with link
This commit is contained in:
parent
1695770f9f
commit
d508bffac1
9 changed files with 318 additions and 94 deletions
65
helpers/napiszarservice.cs
Normal file
65
helpers/napiszarservice.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using T3k3rg0.Helpers.Data;
|
||||
using T3k3rg0.Helpers.Models;
|
||||
|
||||
namespace T3k3rg0.Helpers
|
||||
{
|
||||
public static class NapiszarService
|
||||
{
|
||||
private static readonly TimeZoneInfo HungarianTimeZone =
|
||||
TimeZoneInfo.FindSystemTimeZoneById("Europe/Budapest");
|
||||
|
||||
public static string GetRandomSzar()
|
||||
{
|
||||
using var db = new NapiszarDbContext();
|
||||
var count = db.Joslatok.Count();
|
||||
|
||||
if (count == 0)
|
||||
return "Nincs elérhető szar";
|
||||
|
||||
var rnd = new Random();
|
||||
var skip = rnd.Next(count);
|
||||
|
||||
var szar = db.Joslatok.Skip(skip).FirstOrDefault();
|
||||
return szar?.Szoveg ?? "Valami szar hiba történt";
|
||||
}
|
||||
|
||||
public static bool HasUsedToday(ulong userId)
|
||||
{
|
||||
using var db = new NapiszarDbContext();
|
||||
|
||||
var usage = db.DailyUsages.FirstOrDefault(u => u.UserId == (long)userId);
|
||||
if (usage == null)
|
||||
return false;
|
||||
|
||||
var today = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, HungarianTimeZone).Date;
|
||||
return usage.LastUsed.Date == today;
|
||||
}
|
||||
|
||||
public static void LogUsage(ulong userId)
|
||||
{
|
||||
using var db = new NapiszarDbContext();
|
||||
|
||||
var today = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, HungarianTimeZone);
|
||||
|
||||
var existing = db.DailyUsages.FirstOrDefault(u => u.UserId == (long)userId);
|
||||
if (existing == null)
|
||||
{
|
||||
db.DailyUsages.Add(new DailyUsage
|
||||
{
|
||||
UserId = (long)userId,
|
||||
LastUsed = today
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
existing.LastUsed = today;
|
||||
db.DailyUsages.Update(existing);
|
||||
}
|
||||
|
||||
db.SaveChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue