public bool Login(string user, string pass) { // debug, login előtt regisztrál if (Debug) { using (IQDatabase database = new IQDatabase()) { try { database.dbUserSet.Add(new dbUserSet() { name = user, pass = pass, email = "", goodanswers = 0, played = 0, questions = 0, win = 0 }); database.SaveChanges(); } catch (Exception) { } } } bool userfound = false; try { using (IQDatabase database = new IQDatabase()) { userfound = (from users in database.dbUserSet where users.name.Equals(user) && users.pass.Equals(pass) select users).Count().Equals(1); } } catch (Exception) { } if (onlineUsers.Exists(x => x.Name.Equals(user))) { Logger.log(Errorlevel.INFO, user + " tried to log in twice"); return false; } else if (userfound) { User login = new User(user); onlineUsers.Add(login); Logger.log(Errorlevel.INFO, user + " logged in"); return true; } else { Logger.log(Errorlevel.INFO, (String.IsNullOrEmpty(user) ? "NULL OR EMPTY" : user) + " failed to log in"); return false; } }
public bool answerQuestion(string user, int id) { bool ret = getRoomByUserName(user).Answer(getUserByUserName(user), id); using (IQDatabase database = new IQDatabase()) { try { dbUserSet u = database.dbUserSet.First(x => x.name.Equals(user)); u.questions++; if (ret) u.goodanswers++; database.SaveChanges(); } catch (Exception ex) { Logger.log(Errorlevel.WARN, ex.Message + Environment.NewLine + ex.StackTrace); } } return ret; }
private void stop(object sender, RunWorkerCompletedEventArgs e) { using (IQDatabase database = new IQDatabase()) { try { Statistic s = new Statistic(this); string name = s.Users[0].Name; database.dbUserSet.First(x => x.name.Equals(name)).win++; foreach (User u in s.Users) { name = u.Name; database.dbUserSet.First(x => x.name.Equals(name)).played++; } database.SaveChanges(); } catch (Exception ex) { Logger.log(Errorlevel.WARN, ex.Message + Environment.NewLine + ex.StackTrace); } } /* using (IQDatabase database = new IQDatabase()) { try { IQueryable<dbUserSet> dbul = database.dbUserSet.Where(x => x.name.Equals(s.Users[0].Name) || x.name.Equals(s.Users[1].Name) || x.name.Equals(s.Users[2].Name) || x.name.Equals(s.Users[3].Name) ); foreach (dbUserSet u in dbul) { if (u.name.Equals(s.Users[0].Name)) { u.win++; } u.played++; } database.SaveChanges(); } catch (Exception ex) { Logger.log(Errorlevel.ERROR, ex.Message + Environment.NewLine + ex.StackTrace); } }*/ }