public AuthController(MenherachanContext db, IWebHostEnvironment env) { _db = db; _env = env; _logDirectory = Path.Combine(_env.WebRootPath, "logs", "auth_logs.log"); }
public MainPageController(MenherachanContext db, IBoardCollection collection, IWebHostEnvironment env) { _db = db; _collection = collection; _env = env; _logDirectory = Path.Combine(_env.WebRootPath, "logs", "main_page_logs.log"); }
public ThreadController(MenherachanContext db, IWebHostEnvironment env) { _db = db; _env = env; _logDirectory = Path.Combine(_env.WebRootPath, "logs", "thread_logs.log"); _md5 = new MD5CryptoServiceProvider(); }
public ReportController(MenherachanContext db, IBoardCollection collection, IWebHostEnvironment env) { _db = db; _collection = collection; _env = env; _logDirectory = Path.Combine(_env.WebRootPath, "logs", "report_logs.log"); _md5 = new MD5CryptoServiceProvider(); }
public static void AddFilesToPost(MenherachanContext db, Post post, FileInformation info) { db.File.Add(new File { BoardId = post.BoardId, ThreadId = post.ThreadId, PostId = post.PostId, FileName = info.FileName, ThumbnailName = info.ThumbnailName, Info = $"{info.Information}" }); db.SaveChanges(); }
public static bool UserIsBanned(MenherachanContext db, string ipHash) { try { var ban = db.Ban.First(b => b.AnonIpHash == ipHash); if (ban == null) { return(false); } return(ban.Term > DateTimeOffset.Now.ToUnixTimeSeconds()); } catch (InvalidOperationException) { return(false); } }
public BoardInformation(Board board, MenherachanContext db) { ThreadCount = db.Board.Where(b => b.Prefix == board.Prefix) .Join(db.Thread, b => b.BoardId, t => t.BoardId, (br, thread) => thread.ThreadId).Count(); PostCount = db.Board.Where(b => b.Prefix == board.Prefix).Join(db.Post, b => b.BoardId, p => p.BoardId, (brd, post) => post.PostId).Count(); FileCount = db.Board.Where(b => b.Prefix == board.Prefix).Join(db.File, b => b.BoardId, f => f.BoardId, (br, fl) => fl.FileId).Count(); }
public static void AddPostToThread(MenherachanContext db, Post post, bool sage, bool isWrittenByOp = false) { var thread = db.Thread.First(t => t.ThreadId == post.ThreadId); if (thread == null) { throw new InvalidOperationException(); } if (!sage) { thread.BumpInUnixTime = DateTimeOffset.Now.ToUnixTimeSeconds(); } post.IsWrittenByOp = isWrittenByOp; db.Post.Add(post); db.SaveChanges(); }
public static void AddThreadToBoard(MenherachanContext db, ref Post firstThreadPost) { var thread = new Thread { AnonName = firstThreadPost.AnonName, BoardId = firstThreadPost.BoardId, OpIpHash = firstThreadPost.AnonIpHash, IsClosed = false }; db.Thread.Add(thread); db.SaveChanges(); firstThreadPost.ThreadId = thread.ThreadId; firstThreadPost.TimeInUnixSeconds = DateTimeOffset.Now.ToUnixTimeSeconds(); db.Post.Add(firstThreadPost); db.SaveChanges(); }