Esempio n. 1
0
 public void CreateReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.ReservedNames.Add(reserved);
         db.SaveChanges();
     }
 }
Esempio n. 2
0
 public void CreateMultipleReservedNames(IEnumerable <ReservedNames> listofReservedNames)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.ReservedNames.AddRange(listofReservedNames);
         db.SaveChanges();
     }
 }
Esempio n. 3
0
 public void UpdateOrInsetReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(reserved).State = reserved.ReservedNameId > 0 ? EntityState.Modified : EntityState.Added;
         db.SaveChanges();
     }
 }
Esempio n. 4
0
        // Metode til at bekræfte kuponen. Der oprettes en ny forbindelse til databasen via BetBudContext klassen.
        // For hver kamp der er i listen delKampe, sendes ind i variablen kamp.
        // Unchanged betyder at objektet kamp ikke bliver ændret i Databasen,
        // Samme sker med kupon.bruger. Kuponen bliver tilføjet og gemt.
        public bool BekræftKupon(Kupon kupon)
        {
            kupon.CreateDateTime = DateTime.Now;
            if (kupon.delKampe.Count > 0)
            {
                using (BetBudContext db = new BetBudContext()) {
                    using (DbContextTransaction transaction = db.Database.BeginTransaction(IsolationLevel.ReadCommitted)
                           ) {
                        try {
                            foreach (DelKamp kamp in kupon.delKampe)
                            {
                                db.Entry(kamp.Kampe).State = EntityState.Unchanged;
                            }
                            db.Entry(kupon.Bruger).State = EntityState.Modified;
                            Setting setting = db.Settings.FirstOrDefault(x => x.name == "Sæson");
                            kupon.SæsonId = int.Parse(setting.value);
                            db.Kuponer.Add(kupon);
                            db.SaveChanges();

                            transaction.Commit();
                            return(true);
                        }
                        catch (Exception) {
                            transaction.Rollback();
                        }
                    }
                }
            }
            return(false);
        }
Esempio n. 5
0
 private void updateSetting(Setting setting)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(setting).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
Esempio n. 6
0
        private void ModtagBelønning()
        {
            List <Kupon> readyKupons = new List <Kupon>();

            using (BetBudContext db = new BetBudContext()) {
                readyKupons =
                    db.Kuponer.Include(x => x.delKampe.Select(y => y.Kampe))
                    .Where(x => x.Kontrolleret.Equals(false))
                    .Include(c => c.Bruger)
                    .ToList();
            }

            foreach (Kupon kupon in readyKupons)
            {
                Debug.WriteLine("kuponer");

                bool kuponklar = true;
                foreach (DelKamp delkamp in kupon.delKampe)
                {
                    if (!delkamp.Kampe.VundetX && !delkamp.Kampe.Vundet1 && !delkamp.Kampe.Vundet2)
                    {
                        kuponklar = false;
                        break;
                    }
                    Debug.WriteLine("kampe");
                }

                if (kuponklar)
                {
                    Debug.WriteLine("kupon klar");
                    GivPoint(kupon);
                }
            }
        }
Esempio n. 7
0
        private void GemSæson(Sæson sæson, Setting setting)
        {
            using (BetBudContext db = new BetBudContext()) {
                using (DbContextTransaction tranction = db.Database.BeginTransaction()) {
                    try {
                        foreach (SæsonBruger sæsonBruger in sæson.SæsonBrugere)
                        {
                            db.Entry(sæsonBruger.Bruger).State = EntityState.Modified;
                        }
                        db.Entry(setting).State         = EntityState.Modified;
                        db.Entry(sæson.SæsonInfo).State = EntityState.Unchanged;
                        db.Sæsoner.Add(sæson);
                        db.AktuelSæsonInfo.Add(new SæsonBeskrivelse {
                            Beskrivelse = "sæson!"
                        });

                        db.SaveChanges();
                        tranction.Commit();
                    }
                    catch (Exception e) {
                        tranction.Rollback();
                        Debug.WriteLine(e);
                    }
                }
            }
        }
Esempio n. 8
0
 public void opdaterBruger(Bruger bruger)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(bruger).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
Esempio n. 9
0
 // Metode der bruges til at finde en kamp udfra kampId i databasen. Der opretter en ny forbindelse til databasen via BetBudContext,
 // den kamp der stemmer overens med kampId ´et sendes bliver gemt i lokal variablen kamp som efterfølgende bliver returneret.
 public Kamp FindKamp(int kampId)
 {
     using (BetBudContext db = new BetBudContext()) {
         Kamp kamp = db.Kampe.Find(kampId);
         return(kamp);
     }
 }
Esempio n. 10
0
 public int GetSeasonNr()
 {
     using (BetBudContext db = new BetBudContext())
     {
         return(Int32.Parse(db.Settings.First(x => x.name == "Sæson").value));
     }
 }
Esempio n. 11
0
 public void DeleteReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(reserved).State = EntityState.Deleted;
         db.SaveChanges();
     }
 }
Esempio n. 12
0
        public Bruger logIndBruger(string bNavn, string pWord)
        {
            using (BetBudContext db = new BetBudContext()) {
                string passHash = GenerateSaltedHash(pWord);
                Bruger bruger   = db.Brugere.FirstOrDefault(x => x.BrugerNavn.Equals(bNavn) && x.Password.Equals(passHash));

                return(bruger);
            }
        }
Esempio n. 13
0
 public void sletBruger(int id)
 {
     using (BetBudContext db = new BetBudContext()) {
         Bruger bruger = new Bruger();
         bruger.BrugerId        = id;
         db.Entry(bruger).State = EntityState.Deleted;
         db.SaveChanges();
     }
 }
Esempio n. 14
0
 public IEnumerable <Bruger> getHighscores()
 {
     using (BetBudContext db = new BetBudContext()) {
         //var result = db.Brugere.GroupBy(x => x.Navn).Select(g => g.OrderByDescending(x => x.Point));
         IOrderedQueryable <Bruger> result = db.Brugere.OrderByDescending(x => x.Point);
         return(result.ToList());
         //return result;
     }
 }
Esempio n. 15
0
 /// <summary>
 ///     Denne metode returnerer en liste af servere ud af databasen
 /// </summary>
 /// <param name="serverName"></param>
 /// <returns>En liste af servere</returns>
 public List <AServer> FindServers(string serverName)
 {
     using (var db = new BetBudContext())
     {
         //Denne metode returnere en liste over alle servere hvis navn matcher inputtet
         //return db.ChatServers.ToList().FindAll(x => x.ServerName.Contains(serverName));
     }
     return(null);
 }
Esempio n. 16
0
        public SæsonBeskrivelse HentNuværendeSæson()
        {
            SæsonBeskrivelse sb;

            using (BetBudContext db = new BetBudContext()) {
                sb = db.AktuelSæsonInfo.OrderByDescending(x => x.SæsonBeskrivelseId).FirstOrDefault();
            }

            return(sb);
        }
Esempio n. 17
0
 // Metode til at hente alle brugerens allerede eksisterende kuponer. Der oprettes en ny forbindelse til databasen via BetBudContext.
 // Databasen returnere alle brugerens kuponer hvis brugerId stemmer overens med brugerId og tilføjer disse til en liste.
 public IEnumerable <Kupon> GetAlleKuponer(Bruger bruger)
 {
     using (BetBudContext db = new BetBudContext()) {
         return
             (db.Kuponer.Include(x => x.delKampe.Select(y => y.Kampe))
              .Include(x => x.Bruger)
              .Where(allebrugerkuponger => allebrugerkuponger.BrugerId == bruger.BrugerId)
              .ToList());
     }
 }
Esempio n. 18
0
        public void SubtractPoints(double amount, string navn, Bruger b)
        {
            using (BetBudContext db = new BetBudContext()) {
                b = GetBrugerEfterBrugerNavn(navn);

                b.Point -= amount;

                db.Entry(b).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
Esempio n. 19
0
 public void CheckAndRemoveExistName()
 {
     using (BetBudContext db = new BetBudContext()) {
         List <ReservedNames> toRemove =
             db.ReservedNames.Where(y => DbFunctions.AddMinutes(y.Time, 5) < DateTime.Now).ToList();
         foreach (ReservedNames reservedNamese in toRemove)
         {
             db.Entry(reservedNamese).State = EntityState.Deleted;
         }
         db.SaveChanges();
     }
 }
Esempio n. 20
0
 public SæsonBeskrivelse OpdaterSæsonBeskrivelse(string beskrivelse, string start, string s**t)
 {
     using (BetBudContext db = new BetBudContext()) {
         SæsonBeskrivelse sb = HentNuværendeSæson();
         sb.Beskrivelse     = beskrivelse;
         sb.SlutDato        = s**t;
         sb.StartDato       = start;
         db.Entry(sb).State = EntityState.Modified;
         db.SaveChanges();
     }
     return(HentNuværendeSæson());
 }
Esempio n. 21
0
        private bool CheckIfNameExistsInBrugerDb(string text)
        {
            using (BetBudContext db = new BetBudContext()) {
                if (db.Brugere.FirstOrDefault(x => x.BrugerNavn.ToLower().Equals(text.ToLower())) == null)
                {
                    if (db.ReservedNames.FirstOrDefault(y => y.UserName.ToLower().Equals(text.ToLower())) == null)
                    {
                        return(false);
                    }
                }

                return(true);
            }
        }
Esempio n. 22
0
 /// <summary>
 ///     Denne metode står for at oprette serveren
 /// </summary>
 /// <param name="serverName">Serverens navn</param>
 /// <param name="serverPort">Serverens port</param>
 /// <param name="bufferSize">Serverens buffer størrelse</param>
 public void OpretServer(string serverName, int serverPort, int bufferSize)
 {
     //Her kaldes databasens context
     using (BetBudContext db = new BetBudContext()) {
         //Objektet objekt initialiseres og forskellige variabler assignes til Aserverens properties
         ChatServer = new AServer {
             ServerName = serverName, ServerPort = serverPort, BufferSize = bufferSize
         };
         //I dette kald åbnes contexten og chatserver objektet indsættes og dens state sættes til at være indsat, dette medfører at entity indsætter objektet til at være tilføjet i den cachede version af databasen
         db.Entry(ChatServer).State = EntityState.Added;
         //Her gemmes den cachede version af databasen ned til den rigtige version.
         db.SaveChanges();
     }
 }
Esempio n. 23
0
        /// <summary>
        ///     Denne metode står for at slette serveren
        /// </summary>
        /// <param name="serverId">Serverens id</param>
        public void DeleteServer(int serverId)
        {
            //Contexten kaldes i et using statement således den disposes senere
            using (BetBudContext db = new BetBudContext()) {
                //Der oprettes en server instans og iden sættes fra parameter listen
                AServer aServ = new AServer {
                    AServerId = serverId
                };

                //Der laves en statement hvor objektet bliver sat til at blive slettet
                db.Entry(aServ).State = EntityState.Deleted;
                //Ændringerne gemmes i databasen
                db.SaveChanges();
            }
        }
Esempio n. 24
0
 private void storeNewKampe(Kamp[] kamp)
 {
     using (BetBudContext db = new BetBudContext()) {
         List <Kamp> list    = kamp.ToList();
         List <Kamp> onlyNew = new List <Kamp>();
         foreach (Kamp k in list)
         {
             if (db.Kampe.Find(k.KampId) == null)
             {
                 onlyNew.Add(k);
             }
         }
         kamp = onlyNew.ToArray();
         db.Kampe.AddRange(kamp);
         db.SaveChanges();
     }
 }
Esempio n. 25
0
        /// <summary>
        ///     Denne metode står for at opdatere serverens information
        /// </summary>
        /// <param name="serverId">Serverens id nummer</param>
        /// <param name="serverName">Serverens navn</param>
        /// <param name="serverPort">Serverens port</param>
        /// <param name="bufferSize">Serverens buffer størrelse</param>
        public void UpdateServer(int serverId, string serverName, int serverPort, int bufferSize)
        {
            //Contexten åbnes i et using statement således at forbindelsen automatisk bliver deposed sernere
            using (BetBudContext db = new BetBudContext()) {
                //Der kaldes en metode som finder en specifik server som skal opdateres, den assignes til lokal variablen server
                AServer server = FindSpecificAServer(serverId);

                //De forskellige opdateringer som der ønskes bliver assignet på objektet.
                server.ServerName = serverName;
                server.ServerPort = serverPort;
                server.BufferSize = bufferSize;

                //Contexten opretter en entry med objektet server hvor den ændrer serverens stadie til at være opdateret.
                db.Entry(server).State = EntityState.Modified;
                //Contexten gemmer statementen.
                db.SaveChanges();
            }
        }
Esempio n. 26
0
        private void UpdateKamp()
        {
            IEnumerable <Kamp> kampList = new List <Kamp>();

            using (BetBudContext db = new BetBudContext()) {
                kampList =
                    db.Kampe.Where(x => x.KampStart < DateTime.Now && !x.Vundet1 && !x.Vundet2 && !x.VundetX).ToList();
            }

            if (kampList.Any())
            {
                foreach (Kamp kamp in kampList)
                {
                    Debug.WriteLine("do game update");
                    string   lastApiDate = "http://odds.mukuduk.dk/?kampId=" + kamp.KampId;
                    XElement oddsUrl     = XElement.Load(lastApiDate);
                    Kamp     kampe       =
                        oddsUrl.Elements("kamp")
                        .Select(
                            p =>
                            new Kamp {
                        HoldVsHold = p.Element("text").Value,
                        Odds1      = double.Parse(p.Element("odds1").Value),
                        OddsX      = double.Parse(p.Element("oddsx").Value),
                        Odds2      = double.Parse(p.Element("odds2").Value),
                        KampStart  = DateTime.Parse(p.Element("kampStart").Value),
                        Aflyst     = bool.Parse(p.Element("aflyst").Value),
                        Vundet1    = bool.Parse(p.Element("vundet1").Value),
                        VundetX    = bool.Parse(p.Element("vundetx").Value),
                        Vundet2    = bool.Parse(p.Element("vundet2").Value),
                        KampId     = int.Parse(p.Element("KampId").Value)
                    })
                        .First();
                    kamp.Vundet1 = kampe.Vundet1;
                    kamp.VundetX = kampe.VundetX;
                    kamp.Vundet2 = kampe.Vundet2;
                    using (BetBudContext db = new BetBudContext()) {
                        Debug.WriteLine("save Game");
                        db.Entry(kamp).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                }
            }
        }
Esempio n. 27
0
        private void GivPoint(Kupon kupon)
        {
            kupon.Bruger.Point += kupon.MuligGevist();
            kupon.Kontrolleret  = true;

            using (BetBudContext db = new BetBudContext()) {
                using (DbContextTransaction transaction = db.Database.BeginTransaction(IsolationLevel.ReadCommitted)) {
                    try {
                        Debug.WriteLine("gem");
                        db.Entry(kupon).State        = EntityState.Modified;
                        db.Entry(kupon.Bruger).State = EntityState.Modified;
                        db.SaveChanges();
                        transaction.Commit();
                    }
                    catch (Exception e) {
                        Debug.WriteLine(e.Message);
                        transaction.Rollback();
                    }
                }
            }
        }
Esempio n. 28
0
        public void SæsonAfslutning()
        {
            Setting          setting = null;
            SæsonBeskrivelse sb      = null;

            using (BetBudContext db = new BetBudContext()) {
                setting = db.Settings.FirstOrDefault(x => x.name == "Sæson");
                sb      = db.AktuelSæsonInfo.OrderByDescending(x => x.SæsonBeskrivelseId).FirstOrDefault();
            }

            int sæsonId = int.Parse(setting.value);

            Sæson sæson = new Sæson {
                SæsonId      = sæsonId,
                SæsonNavn    = "test",
                SæsonPris    = 0.0,
                SæsonPeriode = DateTime.Now,
                SæsonInfo    = sb
            };

            sæson.SæsonBrugere = new List <SæsonBruger>();
            foreach (Bruger bruger in brugerController.getBrugere())
            {
                sæson.SæsonBrugere.Add(new SæsonBruger {
                    Bruger = bruger, BrugerPoints = bruger.Point
                });
            }

            sæsonId++;
            setting.value = sæsonId + "";
            foreach (SæsonBruger sæsonBruger in sæson.SæsonBrugere)
            {
                sæsonBruger.Bruger.Point = 10000;
            }
            GemSæson(sæson, setting);
        }
Esempio n. 29
0
        public void opretBruger(Bruger bruger)
        {
            //Email constraints
            Match matchEmail = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$").Match(bruger.Email);

            //Number constraints
            Match matchName = new Regex(@"^[a-åA-Å' '-'\s]{1,40}$").Match(bruger.Navn);

            bruger.Password = GenerateSaltedHash(bruger.Password);

            bruger.Point = 10000;
            //Brugernavn constraints 1-24 karaktere, Skal starte med a-z, Må indeholde .,-_, må ikke ende på .,-_
            Match matchBruger = new Regex(@"^[a-zA-Z]{1}[a-zA-Z0-9\._\-]{0,23}[^.-]$").Match(bruger.BrugerNavn);
            //var matchBrugernavn = new Regex(@"(\.|\-|\._|\-_)$").Match(bruger.BrugerNavn);
            Bruger b = GetBrugerEfterBrugerNavn(bruger.BrugerNavn);

            if (matchEmail.Success && matchName.Success && matchBruger.Success && b == null)
            {
                using (BetBudContext db = new BetBudContext()) {
                    db.Brugere.Add(bruger);
                    db.SaveChanges();
                }
            }
        }
Esempio n. 30
0
 public Bruger GetBrugerEfterBrugerNavn(string bnavn)
 {
     using (BetBudContext db = new BetBudContext()) {
         return(db.Brugere.FirstOrDefault(b => b.BrugerNavn == bnavn));
     }
 }