private bool InitiateTrackingTransaction(int MemberInGameID) { TrackingTransaction trackingTransaction = new TrackingTransaction(); trackingTransaction.MemberInGameID = MemberInGameID; trackingTransaction.TimeInitiated = DateTime.Now; trackingTransaction.DurationRemaining = 90; trackingTransaction.DateInserted = DateTime.Now; trackingTransaction.DateModified = DateTime.Now; db.TrackingTransactions.Add(trackingTransaction); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return(false); } return(true); }
public ActionResult Create([Bind(Include = "GameMemberFilterID,GameID,CountryID,StateID,CityID,AgeBandID,GenderID,Territory,MemberSubscriptionTypeID")] GameMemberFilter gamememberfilter) { List <SelectListItem> AgeGroups; List <SelectListItem> Genders; GetAgesAndGenders(out AgeGroups, out Genders); if (ModelState.IsValid) { db.GameMemberFilters.Add(gamememberfilter); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.AgeBandID = new SelectList(AgeGroups, "Value", "Text"); ViewBag.GenderID = new SelectList(Genders, "Value", "text"); ViewBag.GameID = new SelectList(db.Games, "GameID", "GameCode"); ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName"); ViewBag.StateID = new SelectList(db.CountryStates, "StateID", "StateName"); ViewBag.Territory = new SelectList(db.Territories, "TerritoryID", "TerritoryCode"); ViewBag.MemberSubscriptionTypeID = new SelectList(db.MemberSubscriptionTypes, "MemberSubscriptionTypeID", "MemberSubscriptionTypeCode"); return(View(gamememberfilter)); }
public ActionResult Create([Bind(Include = "ProductCategoryID,ProductCategoryCode,ProductCategoryName,ProductCategoryDescription,DateInserted,DateUpdated,USR")] ProductCategory productCategory) { if (ModelState.IsValid) { db.ProductCategories.Add(productCategory); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(productCategory)); }
public ActionResult Create([Bind(Include = "ContractID,ContractCode,ContractDetail,DateInserted,DateUpdated,USR")] Contract contract) { if (ModelState.IsValid) { db.Contracts.Add(contract); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(contract)); }
public ActionResult Create([Bind(Include = "GameTypeID,GameTypeCode,GameTypeName,GameTypeDescription,DateInserted,DateUpdated,USR")] GameType gameType) { if (ModelState.IsValid) { db.GameTypes.Add(gameType); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(gameType)); }
public ActionResult Create([Bind(Include = "LanguageID,LanguageName,LanguageTwoLetters,LanguageThreeLetters")] Language language) { if (ModelState.IsValid) { db.Languages.Add(language); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(language)); }
public ActionResult Create([Bind(Include = "AddressID,AddressType,AddressLine1,AddressLine2,AddressLine3,Country,StateOrProvince,ZipOrPostalCode,DateInserted,DateUpdated,USR")] Address address) { if (ModelState.IsValid) { db.Addresses.Add(address); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(address)); }
public ActionResult Create([Bind(Include = "CurrencyID,CurrencyCode,CurrencySymbol,CountryID")] Currency currency) { if (ModelState.IsValid) { db.Currencies.Add(currency); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName", currency.CountryID); return(View(currency)); }
public ActionResult Create([Bind(Include = "SerialNumberID,Serial,ProductLocationID,Used,DateInserted,DateUsed")] SerialNumber serialNumber) { if (ModelState.IsValid) { db.SerialNumbers.Add(serialNumber); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ProductLocationID = new SelectList(db.ProductLocations, "ProductLocationID", "USR", serialNumber.ProductLocationID); return(View(serialNumber)); }
public ActionResult Create([Bind(Include = "LanguageItemID,LanguageID,LanguageItemKey,LanguageItemValue")] LanguageItem languageitem) { if (ModelState.IsValid) { db.LanguageItems.Add(languageitem); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.LanguageID = new SelectList(db.Languages, "LanguageID", "LanguageName", languageitem.LanguageID); return(View(languageitem)); }
public ActionResult Create([Bind(Include = "GameTemplateID,GameTemplateCode,GameTypeID,DateInserted,DateUpdated,USR,GameRuleCode,GameRuleDetail,OrderInGame")] GameTemplate gametemplate) { if (ModelState.IsValid) { db.GameTemplates.Add(gametemplate); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.GameTypeID = new SelectList(db.GameTypes, "GameTypeID", "GameTypeCode", gametemplate.GameTypeID); return(View(gametemplate)); }
public ActionResult Create([Bind(Include = "OwnerID,OwnerCode,OwnerName,OwnerType,BankingDetailBank,BankingDetailAccountNumber,BankingDetailAccountType,BankingDetailBranchCode,BankingDetailBranchName,BankingDetailDefaultReference,EmailAddress,ContactPerson,TelephoneOffice,TelephoneMobile,AddressID,DateInserted,DateUpdated,USR")] Owner owner) { if (ModelState.IsValid) { db.Owners.Add(owner); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.AddressID = new SelectList(db.Addresses, "AddressID", "AddressType", owner.AddressID); return(View(owner)); }
public ActionResult Create([Bind(Include = "TerritoryID,TerritoryCode,OwnerID,ContractID,TerritoryName,TerritoryDescription,DateInserted,DateUpdated,USR")] Territory territory) { if (ModelState.IsValid) { db.Territories.Add(territory); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ContractID = new SelectList(db.Contracts, "ContractID", "ContractCode", territory.ContractID); ViewBag.OwnerID = new SelectList(db.Owners, "OwnerID", "OwnerCode", territory.OwnerID); return(View(territory)); }
public ActionResult Create([Bind(Include = "GameRuleID,GameRuleCode,GameID,FilterCriteria,Schedule,ChainGameRuleID,GameRuleDetail,ExcecuteTime,DateInserted,DateUpdated,USR,GameTemplateID")] GameRule gamerule) { if (ModelState.IsValid) { db.GameRules.Add(gamerule); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.GameID = new SelectList(db.Games, "GameID", "GameCode", gamerule.GameID); ViewBag.GameTemplateID = new SelectList(db.GameTemplates, "GameTemplateID", "GameTemplateCode", gamerule.GameTemplateID); return(View(gamerule)); }
public ActionResult Create([Bind(Include = "ProductInWatchListID,MemberID,ProductID,DateInserted,DateUpdated,USR")] ProductInWatchList productInWatchList) { if (ModelState.IsValid) { db.ProductInWatchLists.Add(productInWatchList); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.MemberID = new SelectList(db.Members, "MemberID", "IdentityType", productInWatchList.MemberID); ViewBag.ProductID = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInWatchList.ProductID); return(View(productInWatchList)); }
public ActionResult Create([Bind(Include = "MemberInterestID,MemberID,ProductCategoryID,DateInserted,DateUpdated,USR")] MemberInterest memberInterest) { if (ModelState.IsValid) { db.MemberInterests.Add(memberInterest); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.MemberID = new SelectList(db.Members, "MemberID", "IdentityType", memberInterest.MemberID); ViewBag.ProductCategoryID = new SelectList(db.ProductCategories, "ProductCategoryID", "ProductCategoryCode", memberInterest.ProductCategoryID); return(View(memberInterest)); }
public ActionResult Create([Bind(Include = "VoucherID,VoucherNumber,ProductLocationID,Used,DateInserted,DateUsed")] Voucher voucher) { VoucherValidator validator = new VoucherValidator(); if (ModelState.IsValid && validator.Validate(voucher).IsValid) { db.Vouchers.Add(voucher); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ProductLocationID = new SelectList(db.ProductLocations, "ProductLocationID", "USR", voucher.ProductLocationID); return(View(voucher)); }
public ActionResult Create([Bind(Include = "GameID,GameCode,GameTypeID,GameName,GameDescription,DateInserted,DateUpdated,USR")] Game game) { if (ModelState.IsValid) { db.Games.Add(game); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } } return(RedirectToAction("Index")); } ViewBag.GameTypeID = new SelectList(db.GameTypes, "GameTypeID", "GameTypeCode", game.GameTypeID); ViewBag.GameID = new SelectList(db.NextGames, "GameID", "USR", game.GameID); return(View(game)); }
public ActionResult Create([Bind(Include = "CountryID,StateID,CityID,TerritoryDefinitionID,TerritoryDefinitionCode,TerritoryID,ZipOrPostalCode,IPAddress,PhysicalCoordinates,DateInserted,DateUpdated,USR")] TerritoryDefinition territorydefinition) { if (ModelState.IsValid) { db.TerritoryDefinitions.Add(territorydefinition); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.TerritoryID = new SelectList(db.Territories, "TerritoryID", "TerritoryCode", territorydefinition.TerritoryID); ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName", territorydefinition.CountryID); ViewBag.StateID = new SelectList(db.CountryStates, "StateID", "StateName", territorydefinition.StateID); ViewBag.CityID = new SelectList(db.CountryCities, "CityID", "CityName", territorydefinition.CityID); return(View(territorydefinition)); }
public ActionResult Create([Bind(Include = "ASPUserId,MemberID,MemberSubscriptionTypeID,FirstName, LastName,IdentityType,EmailAddress,TelephoneHome,TelephoneOffice,TelephoneMobile,CountryID,StateID,Gender,Ethnicity,DateOfBirth,ActiveIndicator,RenewalDate,AddressID,DateInserted,DateUpdated,USR")] Member member) { MemberValidator validator = new MemberValidator(); if (ModelState.IsValid && validator.Validate(member).IsValid) { member.AddressID = -1; member.DateInserted = DateTime.Today; member.DateUpdated = DateTime.Today; member.ASPUserId = User.Identity.GetUserId(); member.USR = User.Identity.GetUserName(); member.ActiveIndicator = true; db.Members.Add(member); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } } return(RedirectToAction("Index", "Home")); } ValidationResult results = validator.Validate(member); IList <ValidationFailure> failures = results.Errors; StringBuilder sb = new StringBuilder(); foreach (var e in results.Errors) { ModelState.AddModelError(e.PropertyName, e.ErrorMessage); ModelState.AddModelError(e.PropertyName + "Error", e.ErrorMessage); sb.AppendLine(e.ErrorMessage); } ViewBag.CountryID = new SelectList(db.Countries, "CountryID", "CountryName", member.CountryID); ViewBag.StateID = new SelectList(db.CountryStates, "StateID", "StateName", member.StateID); ViewBag.MemberSubscriptionTypeID = new SelectList(db.MemberSubscriptionTypes, "MemberSubscriptionTypeID", "MemberSubscriptionTypeCode", member.MemberSubscriptionTypeID); return(View(member)); }
// Returns PaymentTransactionID for this transaction. private CashCloudPurchaseTransactionRequest PersistPaymentRequest(CashCloudPurchaseTransactionRequest purchaseTransactionRequest) { PaymentTransaction paymentTransaction = new PaymentTransaction(); paymentTransaction.Action = purchaseTransactionRequest.action; paymentTransaction.Address = purchaseTransactionRequest.address; paymentTransaction.Amount = Convert.ToDecimal(purchaseTransactionRequest.amount); paymentTransaction.City = purchaseTransactionRequest.city; paymentTransaction.ClientIP = purchaseTransactionRequest.customerip; paymentTransaction.CountryCode = purchaseTransactionRequest.countryCode; paymentTransaction.CurrencyCode = purchaseTransactionRequest.currencyCode; paymentTransaction.email = purchaseTransactionRequest.Email; paymentTransaction.Member = purchaseTransactionRequest.member; paymentTransaction.MemberInGameID = purchaseTransactionRequest.MemberInGameID; paymentTransaction.MerchantIP = purchaseTransactionRequest.merchantip; paymentTransaction.StateCode = purchaseTransactionRequest.stateCode; paymentTransaction.TrackID = purchaseTransactionRequest.trackid; paymentTransaction.TransactionRequestDateTime = purchaseTransactionRequest.transactionDateTime; paymentTransaction.UDF1 = purchaseTransactionRequest.udf1; paymentTransaction.UDF2 = purchaseTransactionRequest.udf2; paymentTransaction.UDF3 = purchaseTransactionRequest.udf3; paymentTransaction.UDF4 = purchaseTransactionRequest.udf4; paymentTransaction.UDF5 = purchaseTransactionRequest.udf5; paymentTransaction.Zip = purchaseTransactionRequest.zip; paymentTransaction.PaymentStatus = "UNPAID"; db.PaymentTransactions.Add(paymentTransaction); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } } purchaseTransactionRequest.paymentTransactionID = paymentTransaction.PaymentTransactionID; return(purchaseTransactionRequest); }
public ActionResult UploadBanner(HttpPostedFileBase uploadFile) { if (Request != null) { HttpPostedFileBase file = Request.Files["uploadFile"]; if ((file != null) && (file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName)) { string fileName = file.FileName; string fileContentType = file.ContentType; byte[] fileBytes = new byte[file.ContentLength]; file.InputStream.Read(fileBytes, 0, Convert.ToInt32(file.ContentLength)); Banner banner = new Banner(); banner.BannerName = fileName; banner.BannerType = 3; banner.DisplayDate = DateTime.Now; banner.BannerImage = fileBytes; db.Banners.Add(banner); } } db.SaveChanges(); return(View("Index")); }
public bool save(Member member) { try { if (db.Members.Count(m => m.MemberID == member.MemberID) == 0) { db.Members.Add(member); } db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return(false); } return(true); }
// Returns PaymentTransactionID for this transaction. private PurchaseTransactionRequest PersistPaymentRequest(PurchaseTransactionRequest purchaseTransactionRequest) { PaymentTransaction paymentTransaction = new PaymentTransaction(); paymentTransaction.Action = "1"; paymentTransaction.Address = ""; paymentTransaction.Amount = Convert.ToDecimal(purchaseTransactionRequest.CC_Amount); paymentTransaction.City = purchaseTransactionRequest.bill_city; paymentTransaction.ClientIP = purchaseTransactionRequest.ip_address; paymentTransaction.CountryCode = purchaseTransactionRequest.bill_country; paymentTransaction.CurrencyCode = "ZAR"; paymentTransaction.email = purchaseTransactionRequest.EmailAddress; paymentTransaction.Member = purchaseTransactionRequest.bill_last_name + ", " + purchaseTransactionRequest.bill_first_name; //paymentTransaction.MemberInGameID = purchaseTransactionRequest.MemberInGameID; paymentTransaction.MerchantIP = ""; paymentTransaction.StateCode = purchaseTransactionRequest.bill_state; paymentTransaction.TrackID = purchaseTransactionRequest.Reference; paymentTransaction.TransactionRequestDateTime = purchaseTransactionRequest.transactionDateTime; paymentTransaction.Zip = purchaseTransactionRequest.bill_zip; paymentTransaction.PaymentStatus = "UNPAID"; db.PaymentTransactions.Add(paymentTransaction); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } } purchaseTransactionRequest.paymentTransactionID = paymentTransaction.PaymentTransactionID; return(purchaseTransactionRequest); }
public void AddMemberToGame(ApplicationUser User) { Member member = db.Members.Where(m => m.ASPUserId.Equals(User.Id)).First(); List <Game> games = findGlobalGames(member.MemberID).ToList(); foreach (Game game in games) { MemberInGame mig = new MemberInGame(); mig.GameID = game.GameID; mig.MemberID = member.MemberID; mig.DateInserted = DateTime.Now; mig.DateUpdated = DateTime.Now; mig.WinIndicator = false; mig.PaymentIndicator = false; mig.USR = member.EmailAddress; db.MemberInGames.Add(mig); db.SaveChanges(); } }
public string QueueEmail() { DateTime baseDateTime = DateTime.MinValue; if (priority != null) { newMail.Priority = ((int)priority > 0) ? (int)priority : newMail.Priority; } if (sendAfter != null && sendAfter > DateTime.MinValue) { newMail.SendAfter = sendAfter; } if (fromName != "" && fromName != null) { newMail.FromName = fromName; } if (fromAddress != "" && fromAddress != null) { newMail.FromAddress = fromAddress; } newMail.MemberID = memberID; newMail.RecipientEmailAddress = recipientEmailAddress; newMail.RecipientName = recipientName; newMail.EmailSubject = emailSubject; newMail.EmailBodyText = emailBodyText; db.Emails.Add(newMail); try { db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { System.Diagnostics.Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return("Error"); } return("Success"); }
public ActionResult Create([Bind(Include = "ProductLocationID,ProductInGameID,Address,DeliveryAgentName,DateInserted,DateUpdated,USR")] ProductLocation productLocation) { if (ModelState.IsValid) { db.ProductLocations.Add(productLocation); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ProductInGameID = new SelectList(db.ProductInGames, "ProductInGameID", "Currency", productLocation.ProductInGameID); return(View(productLocation)); }
public ActionResult Create([Bind(Include = "ProductInGameID,ProductID, PriceInGame,GameID,Quantity,CurrencyID,DateInserted,DateUpdated,USR")] ProductInGame productInGame) { ProductInGameValidator validator = new ProductInGameValidator(); if (ModelState.IsValid) { //Deduct quantity from Product table if stock available //@Patrick 6) Depletes the product Quantity from the "Available Stock" amount on the Product record. //Available Stock must not go negative (Validator checks for this) //Get Product var product = db.Products.Where(x => x.ProductID == productInGame.ProductID).First(); //Deplete available stock on hand product.AvailableSOH -= productInGame.Quantity; //Save if (product.AvailableSOH >= 0) { db.Entry(product).State = EntityState.Modified; db.SaveChanges(); } else { ModelState.AddModelError("QuantityError", "Not enough stock on hand for this product"); ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode", productInGame.CurrencyID); ViewBag.GameID = new SelectList(db.Games, "GameID", "GameCode", productInGame.GameID); ViewBag.ProductID = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInGame.ProductID); return(View(productInGame)); } db.ProductInGames.Add(productInGame); db.SaveChanges(); return(RedirectToAction("Edit", new { id = productInGame.ProductInGameID })); } FluentValidation.Results.ValidationResult results = validator.Validate(productInGame); IList <ValidationFailure> failures = results.Errors; StringBuilder sb = new StringBuilder(); foreach (var e in results.Errors) { ModelState.AddModelError(e.PropertyName + "Error", e.ErrorMessage); sb.AppendLine(e.ErrorMessage); } ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode", productInGame.CurrencyID); ViewBag.GameID = new SelectList(db.Games, "GameID", "GameCode", productInGame.GameID); ViewBag.ProductID = new SelectList(db.Products, "ProductID", "ProductSKUCode", productInGame.ProductID); return(View(productInGame)); }
public ActionResult Create([Bind(Include = "ProductID,ProductPrice, ProductSKUCode,OwnerID,SOH, AvailableSOH, IsExclusive, ContractID,ProductName,ProductDescription,DateInserted,DateUpdated,USR,Terms,link,URL")] Product product) { ProductValidator validator = new ProductValidator(); if (ModelState.IsValid && validator.Validate(product).IsValid) { db.Products.Add(product); db.SaveChanges(); return(RedirectToAction("Edit", new { id = product.ProductID })); } ValidationResult results = validator.Validate(product); IList <ValidationFailure> failures = results.Errors; StringBuilder sb = new StringBuilder(); foreach (var e in results.Errors) { ModelState.AddModelError(e.PropertyName, e.ErrorMessage); } ViewBag.ContractID = new SelectList(db.Contracts, "ContractID", "ContractCode", product.ContractID); ViewBag.OwnerID = new SelectList(db.Owners, "OwnerID", "OwnerCode", product.OwnerID); return(View(product)); }
public ActionResult FiveMinDeal(int productID, String numberOfWinners, String quantity, String priceInGame, String referencePrice, String address, String currencyID) { Game game = GetGame().Game; game.GameRules = GetGame().GameRules.ToList(); Game fiveMin = new Game(); fiveMin.GameCode = game.GameCode + "5MD"; fiveMin.GameDescription = game.GameCode + "5MD"; fiveMin.GameTypeID = 2; fiveMin.GameName = game.GameName + "5MD"; fiveMin.DateInserted = DateTime.Now; fiveMin.DateUpdated = DateTime.Now; fiveMin.USR = game.USR; fiveMin.NumberOfWinners = Convert.ToInt32(numberOfWinners); fiveMin.MemberSubscriptionType = game.MemberSubscriptionType; // fiveMin.restart = false; fiveMin.Global = game.Global; DateTime executeTime = game.GameRules.Where(gr => gr.GameRuleCode.Equals("ResolveActualWinners")).First().ExcecuteTime; db.Games.Add(fiveMin); fiveMin.GameRules.Add(toRule("PrepareGameRule", fiveMin.GameID, "PrepareGameRule", executeTime, 1)); fiveMin.GameRules.Add(toRule("StartGame", fiveMin.GameID, "StartGame", executeTime.AddSeconds(20), 1)); fiveMin.GameRules.Add(toRule("ResolvePotentialWinners", fiveMin.GameID, "ResolvePotentialWinners", executeTime.AddSeconds(30), 1)); fiveMin.GameRules.Add(toRule("ResolveActualWinners", fiveMin.GameID, "ResolveActualWinners", executeTime.AddMinutes(5).AddSeconds(20), 1)); db.SaveChanges(); Game g = db.Games.Find(game.GameID); g.NextGameID = fiveMin.GameID; fiveMin.ProductInGames.Add(toProductInGame(productID, 0, Convert.ToDecimal(priceInGame), Convert.ToDecimal(referencePrice), Convert.ToInt32(quantity))); db.SaveChanges(); fiveMin.ProductInGames.First().ProductLocations.Add(toProductLocation(fiveMin.ProductInGames.First().ProductInGameID, address)); db.SaveChanges(); ViewBag.CurrencyID = new SelectList(db.Currencies, "CurrencyID", "CurrencyCode"); ViewBag.ProductID = new SelectList(db.Products, "ProductID", "ProductSKUCode"); return(RedirectToAction("../Games/IndexMakeGame")); }