private async void RateReviewButton_Click(object sender, RoutedEventArgs e) { await this.window.RunAsyncOperation(async() => { ListingReviewDialogControl reviewControl = new ListingReviewDialogControl(); string result = await MessageBoxHelper.ShowCustomDialog(reviewControl); if (!string.IsNullOrEmpty(result) && result.Equals("True") && reviewControl.Rating > 0 && !string.IsNullOrEmpty(reviewControl.ReviewText)) { StoreListingReviewModel review = new StoreListingReviewModel(this.currentListing, reviewControl.Rating, reviewControl.ReviewText); StoreListingReviewModel existingReview = this.currentListing.Reviews.FirstOrDefault(r => r.UserID.Equals(ChannelSession.User.id)); if (existingReview != null) { review.ID = existingReview.ID; await ChannelSession.Services.MixItUpService.UpdateStoreReview(review); } else { await ChannelSession.Services.MixItUpService.AddStoreReview(review); } await this.StoreListingSelected(this.currentListing); } }); }
public ListingUserReviewControl(StoreListingReviewModel review) { this.DataContext = this.review = review; InitializeComponent(); this.Loaded += ListingUserReviewControl_Loaded; }
public async Task UpdateStoreReview(StoreListingReviewModel review) { await this.PutAsync("store/reviews", review); }
public async Task AddStoreReview(StoreListingReviewModel review) { await this.PostAsync("store/reviews", review); }