Exemple #1
0
        /// <summary>
        /// Code ajouté lors de la création d'un item
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListCharacters_ItemToCreate(object sender, EventArgs e)
        {
            VO_PlayableCharacter newChar = _Service.CreatePlayer();

            ListPlayers.AddItem(newChar.Id, newChar.Title);
            LoadCharacter(newChar.Id);
        }
Exemple #2
0
        private async Task <List <Player> > GetPlayerList(string loginPart)
        {
            try
            {
                Dictionary <string, object> data = new Dictionary <string, object>()
                {
                    { "player_name", loginPart }
                };

                ListPlayers currentResponse = await PostData <ListPlayers>(FindPlayerCommand, data);

                if (currentResponse != null && currentResponse.Players != null && currentResponse.Players.Count > 0)
                {
                    return(currentResponse.Players);
                }
                else
                {
                    return(null);
                }
            }
            catch (System.Net.WebException)
            {
                return(null);
            }
        }
Exemple #3
0
 /// <summary>
 /// Synchronise le label d'un item avec la liste d'items et le titre dans le formulaire
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void txtName_TextChanged(object sender, EventArgs e)
 {
     if (ListPlayers.ChangeItemName(CurrentCharacter.Id, txtName.Text))
     {
         CurrentCharacter.Title = txtName.Text;
     }
     else
     {
         txtName.Text = CurrentCharacter.Title;
         MessageBox.Show(Errors.ERROR_UNIQUE_TITLE, Errors.ERROR_BOX_TITLE);
     }
 }
Exemple #4
0
 /// <summary>
 /// Survient lorsque le formulaire devient visible
 /// </summary>
 public void InitializeDBPlayers()
 {
     CurrentCharacter = null;
     ProvisionList();
     if (ListPlayers.DataSource.Count > 0)
     {
         Guid firstAnimation = ListPlayers.DataSource[0].Id;
         ListPlayers.SelectItem(firstAnimation);
         LoadCharacter(firstAnimation);
     }
     else
     {
         ListCharacters_ListIsEmpty(this, new EventArgs());
     }
 }
Exemple #5
0
 public Lobby(Player host)
 {
     Host = host;
     ListPlayers.Add(host);
 }
Exemple #6
0
 /// <summary>
 /// Charge la liste de characters
 /// </summary>
 private void ProvisionList()
 {
     ListPlayers.DataSource = _Service.ProvisionList();
     ListPlayers.LoadList();
 }
Exemple #7
0
        // GET: Player/List?{PageNum}
        // If the page number is not included, set it to 0
        public ActionResult List(int PageNum = 0)
        {
            ListPlayers ViewModel = new ListPlayers();

            ViewModel.isadmin = User.IsInRole("Admin");


            // Grab all players
            string url = "playerdata/getplayers";
            // Send off an HTTP request
            // GET : /api/playerdata/getplayers
            // Retrieve response
            HttpResponseMessage response = client.GetAsync(url).Result;

            // If the response is a success, proceed
            if (response.IsSuccessStatusCode)
            {
                // Fetch the response content into IEnumerable<PlayerDto>
                IEnumerable <PlayerDto> SelectedPlayers = response.Content.ReadAsAsync <IEnumerable <PlayerDto> >().Result;

                // -- Start of Pagination Algorithm --

                // Find the total number of players
                int PlayerCount = SelectedPlayers.Count();
                // Number of players to display per page
                int PerPage = 8;
                // Determines the maximum number of pages (rounded up), assuming a page 0 start.
                int MaxPage = (int)Math.Ceiling((decimal)PlayerCount / PerPage) - 1;

                // Lower boundary for Max Page
                if (MaxPage < 0)
                {
                    MaxPage = 0;
                }
                // Lower boundary for Page Number
                if (PageNum < 0)
                {
                    PageNum = 0;
                }
                // Upper Bound for Page Number
                if (PageNum > MaxPage)
                {
                    PageNum = MaxPage;
                }

                // The Record Index of our Page Start
                int StartIndex = PerPage * PageNum;

                //Helps us generate the HTML which shows "Page 1 of ..." on the list view
                ViewData["PageNum"]     = PageNum;
                ViewData["PageSummary"] = " " + (PageNum + 1) + " of " + (MaxPage + 1) + " ";

                // -- End of Pagination Algorithm --


                // Send back another request to get players, this time according to our paginated logic rules
                // GET api/playerdata/getplayerspage/{startindex}/{perpage}
                url      = "playerdata/getplayerspage/" + StartIndex + "/" + PerPage;
                response = client.GetAsync(url).Result;

                // Retrieve the response of the HTTP Request
                IEnumerable <PlayerDto> SelectedPlayersPage = response.Content.ReadAsAsync <IEnumerable <PlayerDto> >().Result;

                ViewModel.players = SelectedPlayersPage;

                //Return the paginated of players instead of the entire list
                return(View(ViewModel));
            }
            else
            {
                // If we reach here something went wrong with our list algorithm
                return(RedirectToAction("Error"));
            }
        }