Exemple #1
0
        async Task ExecuteLoadItemsCommand(int?categoryId = null)
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Offers.Clear();

                var items = await DataStore.GetItemsAsync(true, categoryId);

                foreach (var item in items)
                {
                    Offers.Add(item);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Exemple #2
0
        public void ResetFilter(bool applyToOutgoing = true)
        {
            log.Trace($"Resetting filter {(applyToOutgoing ? "Outgoing" : "Incoming")} offers");
            if (applyToOutgoing)
            {
                if (_outgoingOffers != null)
                {
                    OutgoingOffers.Clear();

                    foreach (var offer in _outgoingOffers)
                    {
                        OutgoingOffers.Add(offer);
                    }
                }
            }
            else
            {
                if (_offers != null)
                {
                    Offers.Clear();

                    foreach (var offer in _offers)
                    {
                        Offers.Add(offer);
                    }
                }
            }
        }
Exemple #3
0
        public async Task Load()
        {
            using (var client = new HttpClient())
            {
                URLBuilder url = new URLBuilder(_filter, controler);
                url.URL += "&ShowMyOffers=false";
                var request = new HttpRequestMessage()
                {
                    RequestUri = new Uri(url.URL),
                    Method     = HttpMethod.Get
                };
                request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", _authenticationUser.UserId.ToString(), _authenticationUser.Password))));
                var response = await client.SendAsync(request);

                var contents = await response.Content.ReadAsStringAsync();

                List <SellOfferDto> result = JsonConvert.DeserializeObject <List <SellOfferDto> >(contents);
                Offers.Clear();
                foreach (SellOfferDto bo in result)
                {
                    SellOfferWrapper boffer = bo.createSellOffer();
                    Offers.Add(boffer);
                }
            }
        }
        protected override async void LoadContent(bool forced = false, Language forLanguage = null, Location forLocation = null)
        {
            Offers?.Clear();
            // wait until this resource is free
            await Task.Run(() =>
            {
                while (IsBusy) /*empty body*/ } {
});
Exemple #5
0
        public void ClearOffers()
        {
            log.Trace("Clearing offers");
            AppService.Instance.FocusGame();
            Offers.Clear();


            while (OverflowOffers.Count > 0)
            {
                Offers.Add(OverflowOffers.Dequeue());
            }

            OnPropertyChanged("IsOffersFilterVisible");
        }
Exemple #6
0
 private void RefillOffers(IEnumerable <Ticket.UserTicket> userTickets)
 {
     InvokeOnMainThread(() => Offers.Clear());
     foreach (var userTicket in userTickets)
     {
         InvokeOnMainThread(
             () =>
             Offers.Add(new TicketOfferViewModel(userTicket.BinaryId, userTicket.Id, TicketId,
                                                 Ticket.UserServerId.Equals(ServiceBus.UserService.CurrentUser.ServerId))
         {
             NotifyOfferDeleted = OfferDeleted
         }));
     }
 }
Exemple #7
0
        public void FilterOffers(string searchText, bool applyToOutgoing = true)
        {
            log.Trace($"Filtering {(applyToOutgoing ? "Outgoing" : "Incoming")} offers with {searchText}");

            searchText = searchText.ToLower().Trim();

            ResetFilter(applyToOutgoing);

            if (applyToOutgoing)
            {
                var results = OutgoingOffers.ToList().FindAll(e => e.ItemName.ToLower().IndexOf(searchText) != -1 || e.PlayerName.ToLower().IndexOf(searchText) != -1);

                if (_outgoingOffers == null)
                {
                    _outgoingOffers = new Offer[OutgoingOffers.Count];
                }

                OutgoingOffers.CopyTo(_outgoingOffers, 0);
                OutgoingOffers.Clear();

                foreach (var r in results)
                {
                    OutgoingOffers.Add(r);
                }
            }
            else
            {
                var results = Offers.ToList().FindAll(e => e.ItemName.ToLower().IndexOf(searchText) != -1 || e.PlayerName.ToLower().IndexOf(searchText) != -1);

                if (_offers == null)
                {
                    _offers = new Offer[Offers.Count];
                }

                Offers.CopyTo(_offers, 0);
                Offers.Clear();

                foreach (var r in results)
                {
                    Offers.Add(r);
                }
            }
        }
Exemple #8
0
        private void UpdateOffers()
        {
            log.Trace("Updating offers");
            Offer[] buffer = new Offer[Offers.Count];
            Offers.CopyTo(buffer, 0);
            Offers.Clear();

            foreach (var o in buffer)
            {
                Offers.Add(o);
            }

            Offer[] buffer2 = new Offer[OutgoingOffers.Count];
            OutgoingOffers.CopyTo(buffer2, 0);
            OutgoingOffers.Clear();

            foreach (var o in buffer2)
            {
                OutgoingOffers.Add(o);
            }

            OnPropertyChanged("IsOffersFilterVisible");
            OnPropertyChanged("IsOutgoingOffersFilterVisible");
        }