public override void Process(CmdTrigger trigger) { var username = trigger.Args.NextWord(); var userlevel = trigger.Args.NextWord().ToLower(); if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(userlevel)) { trigger.Reply("Invalid input please try again!"); } else { if (!ValidateUserLevel(userlevel)) { trigger.Reply("Invalid userlevel specified, options are guest,user,admin"); return; } using (var db = new UtilityBotDBContainer()) { foreach (var account in Queryable.Where(db.Accounts, account => account.Username == username)) { account.UserLevel = userlevel; trigger.Reply("Account level changed to " + userlevel); db.SaveChanges(); return; } } } }
public override void Process(CmdTrigger trigger) { var nick = trigger.Args.NextWord(); var messagetosend = trigger.Args.Remainder; if (string.IsNullOrEmpty(nick) || string.IsNullOrEmpty(messagetosend)) { trigger.Reply("Failed to parse input, please try again"); } else { using (var db = new UtilityBotDBContainer()) { var msg = new Message { DateLeft = DateTime.Now.ToString(), FromIrcNick = trigger.User.Nick, IrcNick = nick, MessageText = messagetosend }; db.Messages.AddObject(msg); db.SaveChanges(); trigger.Reply("Message saved"); return; } } }
public override void Process(CmdTrigger trigger) { var username = trigger.Args.NextWord(); var password = trigger.Args.NextWord(); var userlevel = trigger.Args.NextWord(); if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password) || string.IsNullOrEmpty(userlevel)) { trigger.Reply("Error invalid input please try again!, remember the input order is username password userlevel \n userlevel options: guest user admin"); } else { using (var db = new UtilityBotDBContainer()) { if (Enumerable.Any(Queryable.Where(db.Accounts, account => account.Username == username))) { trigger.Reply("That account already exists!"); return; } } AddAccount(trigger, username, password, userlevel); trigger.Reply("Account created"); } }
public static void AddAccount(CmdTrigger trigger, string username, string password, string userlevel) { using (var db = new UtilityBotDBContainer()) { var account = new Account { Username = username, Password = password, UserLevel = userlevel }; db.Accounts.AddObject(account); db.SaveChanges(); } }
public static void Login(CmdTrigger trigger, string username, string password) { using (var db = new UtilityBotDBContainer()) { var authed = false; foreach (var account in db.Accounts) { if (account.Username == username && account.Password == password) { switch (account.UserLevel) { case "guest": { authed = true; trigger.Reply(string.Format("Logged in as {0} with level {1}", account.Username, account.UserLevel)); } break; case "user": { authed = true; trigger.Reply(string.Format("Logged in as {0} with level {1}", account.Username, account.UserLevel)); } break; case "admin": { authed = true; trigger.Reply(string.Format("Logged in as {0} with level {1}", account.Username, account.UserLevel)); } break; } } } if (!authed) trigger.Reply("Account data invalid! Please try again!"); } }
public override void Process(CmdTrigger trigger) { try { var username = trigger.Args.NextWord(); if (string.IsNullOrEmpty(username)) { trigger.Reply("Please specify username!"); } else { using (var db = new UtilityBotDBContainer()) { foreach (var account in Queryable.Where(db.Accounts, account => account.Username == username)) { db.DeleteObject(account); db.SaveChanges(); trigger.Reply("Account deleted!"); return; } trigger.Reply("Account not found!"); } } } catch (Exception e) { WriteErrorSystem.WriteError(e); } }