Esempio n. 1
0
        private async void FavoriteButton_Click(object sender, RoutedEventArgs e)
        {
            var Item = this.DefaultViewModel[Restaurant] as Restaurant;

            var statusBar = StatusBar.GetForCurrentView();

            statusBar.ProgressIndicator.Text          = ResourceLoader.GetForCurrentView("Resources").GetString("UpdateMessage");
            statusBar.ProgressIndicator.ProgressValue = null;
            await statusBar.ProgressIndicator.ShowAsync();

            this.FavoriteButton.IsEnabled = false;

            if (Item.RestaurantSocial.FavoriteId == -1)
            {
                bool isSuccess = await RestaurantPageSource.AddToFavoriteAsync(Item.Id);

                await statusBar.ProgressIndicator.HideAsync();

                if (isSuccess)
                {
                    ShowMessageAsync(ResourceLoader.GetForCurrentView("Resources").GetString("FavoriteSuccessfulAdding"));
                }
                else
                {
                    ShowMessageAsync(ResourceLoader.GetForCurrentView("Resources").GetString("ErrorMessage"));
                }

                FavoriteButtonToggle();
            }
            else
            {
                bool isSuccess = await RestaurantPageSource.RemoveFromFavoriteAsync(Item.Id);

                await statusBar.ProgressIndicator.HideAsync();

                if (isSuccess)
                {
                    ShowMessageAsync(ResourceLoader.GetForCurrentView("Resources").GetString("FavoriteSuccessfulRemoving"));
                }
                else
                {
                    ShowMessageAsync(ResourceLoader.GetForCurrentView("Resources").GetString("ErrorMessage"));
                }

                FavoriteButtonToggle();
            }

            this.FavoriteButton.IsEnabled = true;
        }