protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.activity_scoreboard); Window.AddFlags(WindowManagerFlags.DrawsSystemBarBackgrounds); _categoryTextView = FindViewById <TextView>(Resource.Id.sb_category_text_view); _roundTextView = FindViewById <TextView>(Resource.Id.sb_round_text_view); _tourTextView = FindViewById <TextView>(Resource.Id.sb_tour_text_view); _polygonTextView = FindViewById <TextView>(Resource.Id.sb_polygon_text_view); _errorTextView = FindViewById <TextView>(Resource.Id.sb_error_text_view); var tryAgainButton = FindViewById <Button>(Resource.Id.sb_try_again_button); tryAgainButton.Click += TryAgainButtonOnClick; var toolbar = FindViewById <Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar); SetSupportActionBar(toolbar); _loadingLayout = FindViewById <LinearLayout>(Resource.Id.sb_loading); _errorLayout = FindViewById <LinearLayout>(Resource.Id.sb_error_layout); _vm = ServiceProvider.GetService <ScoreBoardViewModel>(); _vm.PropertyChanged += VmOnPropertyChanged; _vm.ErrorOccured += VmOnErrorOccured; _vm.LoadData(); SetViewModelValues(); }
public static ScoreBoard Map(ScoreBoardViewModel viewModel) => new ScoreBoard { UserId = viewModel.UserId, UserName = viewModel.UserName, CompletedQuizzes = viewModel.CompletedQuizzes, TotalScore = viewModel.TotalScore };
/// <summary> /// Initializes a new instance of the <see cref="ScoreBoardManager" /> class. /// Precondition: none /// Postcondition: A new scoreboard manager is created /// </summary> public ScoreBoardManager() { this.ScoreBoard = new ScoreBoard(); this.FileReader = new FileReader(); this.SaveFile = new SaveFileWriter(); this.viewModel = new ScoreBoardViewModel(); }
public override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); _boardViewModel = ServiceProvider.GetService <ScoreBoardViewModel>(); _vm = ServiceProvider.GetService <OmlViewModel>(); _vm.PropertyChanged += VmOnPropertyChanged; if (savedInstanceState != null && savedInstanceState.ContainsKey(SelectedItem)) { _selectedItem = savedInstanceState.GetInt(SelectedItem); } var editFragment = (OmlItemEditFragment)Activity.SupportFragmentManager.FindFragmentByTag(OmlItemEditFragment .FragmentTag); if (editFragment != null) { editFragment.SetItemData(_vm.Teams[_selectedItem]); editFragment.ItemEdited += OnItemEdited; } var confirmationFragment = (OmlSendingConfirmationFragment)Activity.SupportFragmentManager.FindFragmentByTag( OmlSendingConfirmationFragment.FragmentTag); if (confirmationFragment != null) { confirmationFragment.SetViewModelData(_vm.Teams[_selectedItem]); confirmationFragment.Confirmed += ConfirmationDialogOnConfirmed; } }
private ScoreBoardViewModel GetCompleteScoreBoard() { var previousScores = this.repository.GetPreviousScores(); var currentScore = new ScoreBoardViewModel(this.repository.GetScores()); currentScore.SetPrevious(previousScores); return(currentScore); }
public async Task <ResponseMessage> LeaderBoard() { try { const int topN = 10; var user = _db.Users.Find(User.Identity.GetUserId()); var userOrder = await _db.Users.CountAsync(x => x.Score > user.Score); ScoreBoardItemViewModel userItem = null; if (userOrder >= topN) //user is not in topN { userItem = new ScoreBoardItemViewModel { Score = user.Score, Name = user.UserName, Order = userOrder }; } var y = await _db.Users.OrderByDescending(x => x.Score).Take(topN).ToListAsync().ConfigureAwait(false); var items = y.Select((x, i) => new ScoreBoardItemViewModel { Score = x.Score, Name = x.UserName, Order = i + 1 }).ToList(); var challenge = await _db.Challenges.OrderByDescending(x => x.Finish).FirstOrDefaultAsync(); var result = new ScoreBoardViewModel { Items = items, UserItem = userItem, Challenge = challenge }; LogThis.BaseLog(Request, LogLevel.Info, Actions.LeaderBoardRequested, new Dictionary <LogProperties, object> { { LogProperties.AdditionalData, $"رتبه کاربر {userOrder} میباشد" }, { LogProperties.Id, challenge?.Id }, { LogProperties.IdType, challenge?.GetType() }, { LogProperties.Count, items.Count }, { LogProperties.Message, ErrorMessages.Successful } }); return(Tools.ResponseMessage.OkWithResult(result)); } catch (Exception e) { LogThis.BaseLog(Request, LogLevel.Error, Actions.LeaderBoardRequested, new Dictionary <LogProperties, object> { { LogProperties.Error, e } }); return(Tools.ResponseMessage.InternalError); } }
public void ScoreBoardViewModel_Should_Know_The_Players_Evolution() { var player11 = new Model.Player() { Name = "1", Score = 0 }; var player12 = new Model.Player() { Name = "1", Score = 50 }; var player21 = new Model.Player() { Name = "2", Score = 40 }; var player22 = new Model.Player() { Name = "2", Score = 40 }; var score = new Model.ScoreBoard(); score.Players = new System.Collections.Generic.List <Model.Player>() { player12, player22 }; var scorePrevious = new Model.ScoreBoard() { Players = new System.Collections.Generic.List <Model.Player>() { player11, player21 } }; var vm = new ScoreBoardViewModel(score); vm.SetPrevious(scorePrevious); var first = vm.Players.Single(p => p.Name == "1"); Assert.AreEqual(Evolution.UP, first.Evolution); }
public ActionResult GetScores() { ScoreBoardViewModel currentScore = GetCompleteScoreBoard(); return(PartialView("ResultsView", currentScore)); }
public ViewResult Index() { ScoreBoardViewModel currentScore = GetCompleteScoreBoard(); return(View(currentScore)); }
protected override void OnAppearing() { base.OnAppearing(); BindingContext = new ScoreBoardViewModel(); }
public ScoreBoardView() { InitializeComponent(); BindingContext = new ScoreBoardViewModel(); }