/// <summary> /// Save current Deck to Database, used for the Deckbuilder /// </summary> /// <param name="deckcardId"></param> /// <param name="deckId"></param> public static void SaveDeckToDatabase(int deckcardId, int deckId) { tblcollection coll = new tblcollection(); tbldeck deck = new tbldeck(); using (var db = new ClonestoneFSEntities()) { var cocaItem = (from c in db.tblcollection where c.idcollectioncard == deckcardId select c).FirstOrDefault(); var deckItem = (from d in db.tbldeck where d.iddeck == deckId select d).FirstOrDefault(); deckItem.tblcollection.Add(cocaItem); db.SaveChanges(); } }
/// <summary> /// Whole logic for register, /// Generates Hashed Pass and Salt, generates 3 decks for the User, sends a confirmation Mail to the User /// and saves everything to the Database /// </summary> /// <param name="regUser"></param> /// <returns>bool named register</returns> public static bool Register(tblperson regUser) { try { using (var db = new ClonestoneFSEntities()) { if (db.tblperson.Any(n => n.email == regUser.email)) { throw new Exception("UserAlreadyExists"); } //Salt erzeugen string salt = Helper.GenerateSalt(); //Passwort Hashen string hashedAndSaltedPassword = Helper.GenerateHash(regUser.password + salt); regUser.password = hashedAndSaltedPassword; regUser.salt = salt; db.tblperson.Add(regUser); db.SaveChanges(); //Decks Speichern tbldeck deck = new tbldeck(); deck.deckname = "Mage"; deck.fkperson = regUser.idperson; db.tbldeck.Add(deck); tbldeck deck1 = new tbldeck(); deck1.deckname = "Hunter"; deck1.fkperson = regUser.idperson; db.tbldeck.Add(deck1); tbldeck deck2 = new tbldeck(); deck2.deckname = "Rogue"; deck2.fkperson = regUser.idperson; db.tbldeck.Add(deck2); db.SaveChanges(); //TODO - Email Einstellungen korregieren!!! //try //{ // SmtpClient client = new SmtpClient("mail.gmx.net"); // client.Credentials = new NetworkCredential("*****@*****.**", "123user!"); // client.Port = 465; // client.EnableSsl = true; // MailMessage mess = new MailMessage(); // mess.From = new MailAddress("*****@*****.**"); // mess.To.Add($"{regUser.email}"); // mess.Subject = "Registration confirmation!"; // mess.Body = "Welcome to Clonestone, thank you for your registration. As gift you got 1000 Gold from us to start. Have fun!"; // client.Send(mess); //} //catch (Exception e) //{ // Debug.WriteLine(e.Message); //} } } catch (Exception e) { throw; //Writer.LogError(e); } return(true); }