/// <summary> /// 游戏版本改变时自动保存 /// </summary> private async void GameVersionComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { SettingSet.GameVersionSettingSet(GameVersionComboBox.SelectedIndex); Global.GameVersion = GameVersionComboBox.SelectedIndex; if (Global.GameVersion == 0 || Global.GameVersion == 1) { var skinFlag = false; foreach (var gameDataHamburgerMenuItem in Global._gameDataHamburgerMenuItem) { if (gameDataHamburgerMenuItem.Text == "皮肤") { skinFlag = true; break; } } if (skinFlag == false) { Global._gameDataHamburgerMenuItem.Add(Global.SkinHamburgerMenuItem); } } else { foreach (var gameDataHamburgerMenuItem in Global._gameDataHamburgerMenuItem) { if (gameDataHamburgerMenuItem.Text == "皮肤") { Global._gameDataHamburgerMenuItem.Remove(gameDataHamburgerMenuItem); break; } } } await Global.SetAutoSuggestBoxItem(); }
/// <summary> /// 全局变量初始化 /// </summary> public async void GlobalInitializeComponent() { // 读取游戏版本 Global.GameVersion = SettingSet.GameVersionSettingRead(); // 设置AutoSuggestBox的数据源 await Global.SetAutoSuggestBoxItem(); }
private void AcrylicOpacitySlider_ValueChanged(object sender, RangeBaseValueChangedEventArgs e) { if (!_acrylicOpacitySetted) { return; } SettingSet.AcrylicOpacitySettingSet(e.NewValue); Global.TinkOpacity = e.NewValue; SetAcrylicBrush(); }
public ActionResult FinalRace(RaceViewModel model) { OSUSurvey survey = db.Surveys.Find(model.SurveyID); SettingSet settings = db.SettingSets.Find(survey.SettingsID); Race race = db.Races.FirstOrDefault(x => x.SettingSetID == survey.SettingsID && x.RaceNum == settings.NumberOfRaces); survey.PointTotal = model.AfterPoints; db.Entry(survey).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("FollowUpIntroduction", new { id = model.SurveyID })); }
private void Theme_SelectionChanged(object sender, SelectionChangedEventArgs e) { SettingSet.ThemeSettingSet(Theme.SelectedIndex); if (Theme.SelectedIndex == 0) { ((Frame)Window.Current.Content).RequestedTheme = ElementTheme.Light; } else { ((Frame)Window.Current.Content).RequestedTheme = ElementTheme.Dark; } }
public ActionResult FinalRace(int?id) { RaceViewModel model = new RaceViewModel(); OSUSurvey survey = db.Surveys.Find(id); SettingSet settings = db.SettingSets.Find(survey.SettingsID); // Get the Final Race Race race = db.Races.FirstOrDefault(x => x.SettingSetID == survey.SettingsID && x.RaceNum == settings.NumberOfRaces); //List<Race> races = db.Races.Where(x => x.SettingSetID == survey.SettingsID).OrderBy(x => x.RaceNum).ToList(); model.Race = race; model.CurrentPoints = (int)survey.PointTotal; model.RaceID = race.RaceID; model.RaceNum = race.RaceNum; model.SurveyID = survey.SurveyID; model.OSUWins = (int)survey.OSUWins; model.UOWins = (int)survey.UOWins; if (!race.Winner && (bool)survey.ChoseToBetFlag) { model.AfterPoints = (int)survey.PointTotal * 2; } else if (!race.Winner && survey.ChoseToBetFlag != true) { model.AfterPoints = (int)survey.PointTotal; } else if (race.Winner && survey.ChoseToBetFlag == true) { model.AfterPoints = 0; } else { model.AfterPoints = (int)survey.PointTotal; } if (race.Winner) { model.AfterOSUWins = model.OSUWins; model.AfterUOWins = model.UOWins + 1; } else { model.AfterUOWins = model.UOWins; model.AfterOSUWins = model.OSUWins + 1; } return(View(model)); }
public MainPage() { InitializeComponent(); if (Width <= 641) { AutoSuggestButton.Visibility = Visibility.Visible; SearchAutoSuggestBox.Visibility = Visibility.Collapsed; } else { AutoSuggestButton.Visibility = Visibility.Collapsed; SearchAutoSuggestBox.Visibility = Visibility.Visible; } //订阅后退按钮事件 SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible; SystemNavigationManager.GetForCurrentView().BackRequested += App_BackRequested; //Global类里的一些设定 Global.RootGrid = RootGrid; Global.FrameTitle = Global.GetOsVersion() >= 16299 ? FrameTitleAcrylic : FrameTitle; Global.AutoSuggestGrid = AutoSuggestGrid; Global.RootFrame = RootFrame; Global.IconsListViewGameData = IconsListViewGameData; Global.IconsListViewSettingAndAbout = IconsListViewSettingAndAbout; // 设置Frame标题Margin属性 SetFrameTitleMargin(); // 汉堡菜单边框 //HamburgerGrid.BorderBrush = new SolidColorBrush(Global.AccentColor); //亚克力背景颜色及透明度设置读取 Global.TinkOpacity = SettingSet.AcrylicOpacitySettingRead(); Global.TinkColor = StringProcess.StringToColor(SettingSet.AcrylicColorSettingRead()); // 默认页 RootFrame.SourcePageType = typeof(CharacterPage); Global.PageStack.Push(new PageStackItem { TypeName = typeof(CharacterPage) }); // 设置SearchAutoSuggestBox的ItemSource属性 SearchAutoSuggestBox.ItemsSource = Global.AutoSuggestBoxItem; // 设置主题 if (Global.GetOsVersion() >= 16299) { ((Frame)Window.Current.Content).RequestedTheme = ElementTheme.Dark; } else { ((Frame)Window.Current.Content).RequestedTheme = SettingSet.ThemeSettingRead() ? ElementTheme.Dark : ElementTheme.Light; } }
/// <summary> /// 在应用程序由最终用户正常启动时进行调用。 /// 将在启动应用程序以打开特定文件等情况下使用。 /// </summary> /// <param name="e">有关启动请求和过程的详细信息。</param> protected override void OnLaunched(LaunchActivatedEventArgs e) { Frame rootFrame = Window.Current.Content as Frame; // 不要在窗口已包含内容时重复应用程序初始化, // 只需确保窗口处于活动状态 if (rootFrame == null) { // 创建要充当导航上下文的框架,并导航到第一页 rootFrame = new Frame(); rootFrame.NavigationFailed += OnNavigationFailed; if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) { //TODO: 从之前挂起的应用程序加载状态 } // 将框架放在当前窗口中 Window.Current.Content = rootFrame; } if (e.PrelaunchActivated == false) { if (rootFrame.Content == null) { // 当导航堆栈尚未还原时,导航到第一页, // 并通过将所需信息作为导航参数传入来配置 // 参数 rootFrame.Navigate(typeof(MainPage), e.Arguments); } // 确保当前窗口处于活动状态 Window.Current.Activate(); } if (SettingSet.ThemeSettingRead() == 0) { ((Frame)Window.Current.Content).RequestedTheme = ElementTheme.Light; } else { ((Frame)Window.Current.Content).RequestedTheme = ElementTheme.Dark; } }
public ActionResult Thoughts(int?id) { OSUSurvey survey = db.Surveys.Find(id); SettingSet settings = db.SettingSets.Find(survey.SettingsID); EnjoymentViewModel model = new EnjoymentViewModel(); List <Question> questions = db.Questions.Where(x => x.QuestionRoundNum == 4 && x.SettingSetID == settings.SettingSetID).OrderBy(x => x.GroupQuestionNumber).ToList(); List <Question> ouQuestions = questions.Where(x => x.GroupQuestionNumber < 5).ToList(); List <Question> uoQuestions = questions.Where(x => x.GroupQuestionNumber > 4).ToList(); List <Question> thoughtsQuestions = new List <Question>(); int k = random.Next(0, 2); if (k == 0) { thoughtsQuestions.AddRange(ouQuestions); thoughtsQuestions.AddRange(uoQuestions); } else { thoughtsQuestions.AddRange(uoQuestions); thoughtsQuestions.AddRange(ouQuestions); } List <OSUAnswer> answers = new List <OSUAnswer>(); foreach (Question question in thoughtsQuestions) { OSUAnswer answer = new OSUAnswer(); answer.SurveyID = survey.SurveyID; //answer.QuestionRoundNum = 4; answer.QuestionID = question.QuestionID; answer.SurveyID = survey.SurveyID; answers.Add(answer); } model.SurveyID = survey.SurveyID; model.Questions = thoughtsQuestions; model.Answers = answers; return(View(model)); }
public ActionResult FollowUpSurvey(int?id) { QuestionViewModel model = new QuestionViewModel(); OSUSurvey survey = db.Surveys.Find(id); if (survey != null) { SettingSet settings = db.SettingSets.Find(survey.SettingsID); List <Question> questions = db.Questions.Where(x => x.SettingSetID == settings.SettingSetID && x.QuestionRoundNum == 2).ToList(); List <Question> shuffledQuestions = new List <Question>(); int n = questions.Count(); while (n >= 1) { n--; int k = random.Next(n + 1); Question question = questions[k]; questions.Remove(question); shuffledQuestions.Add(question); } model.Questions = shuffledQuestions; model.QuestionNum = 0; model.Questions[0].CurrentQuestionFlag = true; OSUAnswer answer = new OSUAnswer(); answer.SurveyID = survey.SurveyID; answer.QuestionID = model.Questions[0].QuestionID; //answer.QuestionRoundNum = 2; model.Answer = answer; model.SurveyID = survey.SurveyID; } return(View(model)); }
public ActionResult Final(int?id) { OSUSurvey survey = db.Surveys.Find(id); SettingSet settings = db.SettingSets.Find(survey.SettingsID); EnjoymentViewModel model = new EnjoymentViewModel(); List <Question> questions = db.Questions.Where(x => x.QuestionRoundNum == 5 && x.SettingSetID == settings.SettingSetID).OrderBy(x => x.GroupQuestionNumber).ToList(); List <OSUAnswer> answers = new List <OSUAnswer>(); List <Question> shuffledQuestions = new List <Question>(); int n = questions.Count(); while (n >= 1) { n--; int k = random.Next(n + 1); Question question = questions[k]; questions.Remove(question); shuffledQuestions.Add(question); } foreach (Question question in shuffledQuestions) { OSUAnswer answer = new OSUAnswer(); answer.SurveyID = survey.SurveyID; //answer.QuestionRoundNum = 5; answer.QuestionID = question.QuestionID; answer.SurveyID = survey.SurveyID; answers.Add(answer); } model.SurveyID = survey.SurveyID; model.Questions = shuffledQuestions; model.Answers = answers; return(View(model)); }
protected override void OnNavigatedTo(NavigationEventArgs e) { if (Global.GetOsVersion() >= 16299) { var dimGrayAcrylicBrush = new AcrylicBrush { BackgroundSource = AcrylicBackgroundSource.HostBackdrop, FallbackColor = Colors.Transparent, TintColor = Global.TinkColor, TintOpacity = Global.TinkOpacity }; RootStackPanel.Background = dimGrayAcrylicBrush; //隐藏主题设置 ThemeStackPanel.Visibility = Visibility.Collapsed; //显示亚克力背景设置 AcrylicOpacityStackPanel.Visibility = Visibility.Visible; AcrylicBackgroundStackPanel.Visibility = Visibility.Visible; //添加ColorPicker控件 var colorPicker = new ColorPicker { HorizontalAlignment = HorizontalAlignment.Left, Color = Color.FromArgb(255, 105, 105, 105), RenderTransformOrigin = new Point(0, 0), RenderTransform = new CompositeTransform { ScaleX = 0.7, ScaleY = 0.7 } }; colorPicker.ColorChanged += ColorPicker_ColorChanged; AcrylicBackgroundStackPanel.Children.Add(colorPicker); AcrylicOpacitySlider.Value = SettingSet.AcrylicOpacitySettingRead(); _acrylicOpacitySetted = true; colorPicker.Color = StringProcess.StringToColor(SettingSet.AcrylicColorSettingRead()); } }
public static void Initialize(this SettingSet settingSet, DataSet dataSet) { settingSet.Customer = InitializationHelper.Create <Customer>(dataSet, "Customer", Initialize); settingSet.TradeDay = InitializationHelper.Create <TradeDay>(dataSet, "TradeDay", Initialize); settingSet.SystemParameter = InitializationHelper.Create <SystemParameter>(dataSet, "SystemParameter", Initialize); settingSet.Currencies = InitializationHelper.CreateArray <Currency>(dataSet, "Currency", Initialize); settingSet.CurrencyRates = InitializationHelper.CreateArray <CurrencyRate>(dataSet, "CurrencyRate", Initialize); settingSet.TradePolicies = InitializationHelper.CreateArray <TradePolicy>(dataSet, "TradePolicy", Initialize); settingSet.TradePolicyDetails = InitializationHelper.CreateArray <TradePolicyDetail>(dataSet, "TradePolicyDetail", Initialize); settingSet.VolumeNecessaries = InitializationHelper.CreateArray <VolumeNecessary>(dataSet, "VolumeNecessary", Initialize); settingSet.VolumeNecessaryDetails = InitializationHelper.CreateArray <VolumeNecessaryDetail>(dataSet, "VolumeNecessaryDetail", Initialize); settingSet.Accounts = InitializationHelper.CreateArray <Account>(dataSet, "Account", Initialize); settingSet.AccountAgentHistories = InitializationHelper.CreateArray <AccountAgentHistory>(dataSet, "AccountAgentHistory", Initialize); settingSet.Instruments = InitializationHelper.CreateArray <Instrument>(dataSet, "Instrument", Initialize); settingSet.DealingPolicyDetails = InitializationHelper.CreateArray <DealingPolicyDetail>(dataSet, "DealingPolicyDetail", Initialize); settingSet.QuotePolicyDetails = InitializationHelper.CreateArray <QuotePolicyDetail>(dataSet, "QuotePolicyDetail", Initialize); settingSet.TradingTimes = InitializationHelper.CreateArray <TradingTime>(dataSet, "TradingTime", Initialize); settingSet.PaymentInstructionRemarks = InitializationHelper.CreateArray <PaymentInstructionRemark>(dataSet, "PaymentInstructionRemark", Initialize); settingSet.ScrapInstruments = InitializationHelper.CreateArray <ScrapInstrument>(dataSet, "ScrapInstrument", Initialize); settingSet.DeliveryCharges = InitializationHelper.CreateArray <DeliveryCharge>(dataSet, "DeliveryCharge", Initialize); settingSet.DeliveryHolidaies = InitializationHelper.CreateArray <DeliveryHolidays>(dataSet, "DeliveryHolidays", Initialize); settingSet.InstalmentPolicies = InitializationHelper.CreateArray <InstalmentPolicy>(dataSet, "InstalmentPolicy", Initialize); settingSet.InstalmentPolicyDetails = InitializationHelper.CreateArray <InstalmentPolicyDetail>(dataSet, "InstalmentPolicyDetail", Initialize); }
public ActionResult Race(RaceViewModel model) { //return RedirectToAction("Race", new { id = model.SurveyID, num = model.RaceNum, tot = model.AfterPoints }); //RaceViewModel model = new RaceViewModel(); OSUSurvey survey = db.Surveys.Find(model.SurveyID); SettingSet settings = db.SettingSets.Find(survey.SettingsID); // Get the Races List <Race> races = db.Races.Where(x => x.SettingSetID == survey.SettingsID).OrderBy(x => x.RaceNum).ToList(); Race lastRace = races.FirstOrDefault(x => x.RaceNum == model.RaceNum); int currentNum = (int)model.RaceNum + 1; if (currentNum < settings.NumberOfRaces) { Race race = races.FirstOrDefault(x => x.RaceNum == currentNum); if (race != null) { model.Race = race; if (lastRace.Winner) { model.UOWins++; } else { if (survey.PointTotal == null) { survey.PointTotal = settings.PointsPerRound; //model.UOWins++; } else { survey.PointTotal += settings.PointsPerRound; } model.OSUWins++; } db.Entry(survey).State = EntityState.Modified; db.SaveChanges(); model.CurrentPoints = (int)survey.PointTotal; if (race.Winner) { model.AfterPoints = model.CurrentPoints; model.AfterUOWins++; } else { model.AfterPoints = model.CurrentPoints + settings.PointsPerRound; model.AfterOSUWins++; } model.RaceID = race.RaceID; model.RaceNum = currentNum; model.SurveyID = survey.SurveyID; ModelState.Clear(); return(View(model)); } } else { if (lastRace.Winner) { model.UOWins++; } else { survey.PointTotal += settings.PointsPerRound; model.OSUWins++; } survey.UOWins = model.UOWins; survey.OSUWins = model.OSUWins; db.Entry(survey).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Bet", new { id = survey.SurveyID })); } return(View(model)); }
public SettingChildPage() { _gameVersionSelectIndex = Global.GameVersion; this.InitializeComponent(); ThemeToggleSwitch.IsOn = SettingSet.ThemeSettingRead(); }
private void ColorPicker_ColorChanged(ColorPicker sender, ColorChangedEventArgs args) { SettingSet.AcrylicColorSettingSet(args.NewColor.ToString()); Global.TinkColor = args.NewColor; SetAcrylicBrush(); }
/// <summary> /// 设置主题 /// </summary> private void ThemeToggleSwitch_Toggled(object sender, RoutedEventArgs e) { SettingSet.ThemeSettingSet(ThemeToggleSwitch.IsOn); ((Frame)Window.Current.Content).RequestedTheme = ThemeToggleSwitch.IsOn ? ElementTheme.Dark : ElementTheme.Light; }
/// <summary> /// 游戏版本改变时自动保存 /// </summary> private async void GameVersionComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { SettingSet.GameVersionSettingSet(GameVersionComboBox.SelectedIndex); Global.GameVersion = GameVersionComboBox.SelectedIndex; await Global.SetAutoSuggestBoxItem(); }
private static SettingSet ToSettingSet(XmlNode content) { SettingSet settingSet = new SettingSet(); List<Instrument> instruments = null; List<Customer> customers = null; List<TradePolicyDetail> tradePolicyDetails = null; List<QuotePolicyDetail> quotePolicyDetails = null; foreach (XmlNode xmlNode in content.ChildNodes) { string name = xmlNode.Name; if (name == "PrivateDailyQuotation") { settingSet.PrivateDailyQuotation = new PrivateDailyQuotation(); settingSet.PrivateDailyQuotation.Initialize(xmlNode); } else if (name == "SystemParameter") { settingSet.SystemParameter = new SystemParameter(); settingSet.SystemParameter.Initialize(xmlNode); } else if (name == "Instruments") { foreach (XmlNode instrumentNode in xmlNode.ChildNodes) { Instrument instrument = new Instrument(); instrument.Initialize(instrumentNode); if (instruments == null) instruments = new List<Instrument>(); instruments.Add(instrument); } } else if (name == "Instrument") { Instrument instrument = new Instrument(); instrument.Initialize(xmlNode); if (instruments == null) instruments = new List<Instrument>(); instruments.Add(instrument); } else if (name == "Account") { Account account = new Account(); account.Initialize(xmlNode); settingSet.Accounts = new Account[] { account }; } else if (name == "Customers") { foreach (XmlNode customerNode in xmlNode.ChildNodes) { Customer customer = new Customer(); customer.Initialize(customerNode); if (customers == null) customers = new List<Customer>(); customers.Add(customer); } } else if (name == "TradePolicyDetail") { TradePolicyDetail tradePolicyDetail = new TradePolicyDetail(); tradePolicyDetail.Initialize(xmlNode); if (tradePolicyDetails == null) tradePolicyDetails = new List<TradePolicyDetail>(); tradePolicyDetails.Add(tradePolicyDetail); } else if (name == "QuotePolicyDetail") { QuotePolicyDetail quotePolicyDetail = new QuotePolicyDetail(); quotePolicyDetail.Initialize(xmlNode); if (quotePolicyDetails == null) quotePolicyDetails = new List<QuotePolicyDetail>(); quotePolicyDetails.Add(quotePolicyDetail); } else if (name == "QuotePolicyDetails") { foreach (XmlNode childNode in xmlNode.ChildNodes) { QuotePolicyDetail quotePolicyDetail = new QuotePolicyDetail(); quotePolicyDetail.Initialize(childNode); if (quotePolicyDetails == null) quotePolicyDetails = new List<QuotePolicyDetail>(); quotePolicyDetails.Add(quotePolicyDetail); } } } settingSet.Instruments = (instruments.IsNullOrEmpty() ? null : instruments.ToArray()); settingSet.Customers = (customers.IsNullOrEmpty() ? null : customers.ToArray()); settingSet.TradePolicyDetails = (tradePolicyDetails.IsNullOrEmpty() ? null : tradePolicyDetails.ToArray()); settingSet.QuotePolicyDetails = (quotePolicyDetails.IsNullOrEmpty() ? null : quotePolicyDetails.ToArray()); return settingSet; }
public ActionResult Rules(int id) { OSUSurvey survey = db.Surveys.Find(id); SettingSet settings = db.SettingSets.Find(survey.SettingsID); string lastRaceNoun = ""; string lastRaceAdjective = ""; string secondToLastRaceNoun = ""; string secondToLastRaceAdjective = ""; switch (settings.NumberOfRaces) { case 5: lastRaceNoun = "five"; lastRaceAdjective = "fifth"; secondToLastRaceNoun = "four"; secondToLastRaceAdjective = "fourth"; break; case 7: lastRaceNoun = "seven"; lastRaceAdjective = "seventh"; secondToLastRaceNoun = "six"; secondToLastRaceAdjective = "sixth"; break; case 9: lastRaceNoun = "nine"; lastRaceAdjective = "ninth"; secondToLastRaceNoun = "eight"; secondToLastRaceAdjective = "eighth"; break; case 11: lastRaceNoun = "eleven"; lastRaceAdjective = "eleventh"; secondToLastRaceNoun = "ten"; secondToLastRaceAdjective = "tenth"; break; } string multiplierVerb = ""; switch (settings.LastRaceMultiplier) { case 2: multiplierVerb = "double"; break; case 3: multiplierVerb = "triple"; break; case 4: multiplierVerb = "quadruple"; break; } ViewBag.MultiplierVerb = multiplierVerb; ViewBag.LastRaceNoun = lastRaceNoun; ViewBag.LastRaceAdjective = lastRaceAdjective; ViewBag.SecondToLastRaceNoun = secondToLastRaceNoun; ViewBag.SecondToLastRaceAdjective = secondToLastRaceAdjective; ViewBag.BeginTotal = settings.PotentialLowScore; ViewBag.MultipliedTotal = 2 * settings.PotentialLowScore; ViewBag.PointsPerRound = settings.PointsPerRound; ViewBag.GiftCertificateAmount = "35"; return(View(survey)); }
public void Set <T>(string settingKey, T value) { ApplicationData.Current.LocalSettings.Values[settingKey] = value; SettingSet?.Invoke(this, settingKey); }
public SettingPage() { this.InitializeComponent(); Theme.SelectedIndex = SettingSet.ThemeSettingRead(); }
public static SettingSet GetExchangeDataChange(string exchangeCode, GroupChangeType type, List<Guid> memberIds, List<Guid> accounts, List<Guid> instruments) { SettingSet set = new SettingSet(); string xmlMemberIds = ExchangeData.GetXmlIds(memberIds); string xmlAccountIds = ExchangeData.GetXmlIds(accounts); string xmlInstrumentIds = ExchangeData.GetXmlIds(instruments); using (SqlConnection con = DataAccess.GetInstance(exchangeCode).GetSqlConnection()) { using (SqlCommand command = con.CreateCommand()) { command.CommandText = "[dbo].[GetInitDataChangeForManager]"; command.CommandType = CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("@type", type)); command.Parameters.Add(new SqlParameter("@xmlMemberIds", xmlMemberIds)); command.Parameters.Add(new SqlParameter("@xmlAccountIds", xmlAccountIds)); command.Parameters.Add(new SqlParameter("@xmlInstrumentIds", xmlInstrumentIds)); using (SqlDataReader reader = command.ExecuteReader()) { if (type == GroupChangeType.Account) { set = SettingsSetHelper.GetExchangeDataChangeByAccountChange(reader); } else { set = SettingsSetHelper.GetExchangeDataChangeByInstrumentChange(reader); } } } } return set; }
public ActionResult Race(int id, int?num) { RaceViewModel model = new RaceViewModel(); OSUSurvey survey = db.Surveys.Find(id); SettingSet settings = db.SettingSets.Find(survey.SettingsID); // Get the Races List <Race> races = db.Races.Where(x => x.SettingSetID == survey.SettingsID).OrderBy(x => x.RaceNum).ToList(); if (num == null) { // We are on the first race Race race = races.FirstOrDefault(x => x.RaceNum == 1); { if (race == null) { // No first race, this is bad. } else { model.Race = race; model.CurrentPoints = 0; model.UOWins = 0; model.OSUWins = 0; if (race.Winner) { model.AfterPoints = 0; model.AfterUOWins = 1; } else { model.AfterPoints = settings.PointsPerRound; model.AfterOSUWins = 1; } model.RaceID = race.RaceID; model.RaceNum = race.RaceNum; model.SurveyID = survey.SurveyID; return(View(model)); } } } else { // We are not on the first race anymore Race lastRace = races.FirstOrDefault(x => x.RaceNum == num); int currentNum = (int)num + 1; if (currentNum < settings.NumberOfRaces) { Race race = races.FirstOrDefault(x => x.RaceNum == currentNum); if (race != null) { model.Race = race; if (lastRace.Winner) { model.UOWins++; } else { if (survey.PointTotal == null) { survey.PointTotal = settings.PointsPerRound; //model.UOWins++; } else { survey.PointTotal += settings.PointsPerRound; } model.OSUWins++; } db.Entry(survey).State = EntityState.Modified; db.SaveChanges(); model.CurrentPoints = (int)survey.PointTotal; if (race.Winner) { model.AfterPoints = model.CurrentPoints; model.AfterUOWins++; } else { model.AfterPoints = model.CurrentPoints + settings.PointsPerRound; model.AfterOSUWins++; } model.RaceID = race.RaceID; model.RaceNum = currentNum; model.SurveyID = survey.SurveyID; return(View(model)); } } else { if (lastRace.Winner) { model.UOWins++; } else { survey.PointTotal += settings.PointsPerRound; model.OSUWins++; } db.Entry(survey).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Bet", new { id = survey.SurveyID })); } } return(View()); }