Exemple #1
0
        public async Task <bool> SaveDonationAsync(string donationTitle, MediaFile mediaFile, int quantity, string donationType, DateTime expirationDate, TimeSpan expirationTime)
        {
            byte[] filebytes = null;
            if (mediaFile != null)
            {
                filebytes = ReadFully(mediaFile.GetStream());
            }

            var donationCapture = new DonationCapture
            {
                Expiration = expirationDate.Add(expirationTime),
                Image      = filebytes,
                Amount     = quantity,
                Title      = donationTitle,
                Type       = donationType
            };

            var serializedDonationCapture = JsonConvert.SerializeObject(donationCapture);

            var message = new HttpRequestMessage(HttpMethod.Post, App.BackendUrl + "/api/donations");

            message.Content = new StringContent(serializedDonationCapture, Encoding.UTF8, "application/json");

            var response = await App.ApiClient.SendAsync(message);

            return(response.IsSuccessStatusCode);
        }
        private async Task ExecuteRelistCommand(int id)
        {
            DonationCapture capture = new DonationCapture()
            {
                Title      = DonationTitle,
                Type       = DonationType,
                Amount     = Quantity,
                Expiration = ExpirationDate.Add(ExpirationTime)
            };
            var okToProceed = await CheckRemoveRecipient();

            if (okToProceed)
            {
                IsBusy = true;
                EnterCommand.ChangeCanExecute();
                var res = await donationRep.RelistDonationAsync(capture, donation.Id, mediaFile);

                IsBusy = false;
                EnterCommand.ChangeCanExecute();

                if (!res)
                {
                    ShowFailureDialog("Unable to Relist");
                }
                else
                {
                    await Page.Navigation.PopToRootAsync();
                }
            }
        }
Exemple #3
0
        public async Task <bool> RelistDonationAsync(DonationCapture capture, int donationId, MediaFile mediaFile)
        {
            byte[] filebytes = null;
            if (mediaFile != null)
            {
                filebytes = ReadFully(mediaFile.GetStream());
            }

            capture.Image = filebytes;

            var content  = new StringContent(JsonConvert.SerializeObject(capture), Encoding.UTF8, "application/json");
            var response = await App.ApiClient.PutAsync($"api/donations/{donationId}/relist", content);

            return(response.IsSuccessStatusCode);
        }