public IHttpActionResult PostCancelShare() { if (!Session.Authorized) { return(Unauthorized()); } var share = _shareRepo.GetUserActiveShare(Session.User.Id); if (share == null) { return(NotFound()); } if (share.Host.Id != Session.User.Id) { return(NotFound()); } if (share.Status == Status.Canceled) { return(NotFound()); } _shareRepo.CancelShare(share.Id); var guests = _shareRepo.GetShareGuests(share.Id); guests.ForEach(guest => { var msgData = new Dictionary <string, string> { { "TYPE", "SHARE_CANCELED" } }; #pragma warning disable 4014 FirebaseCloudMessanger.SendMessage( guest.User, "Condivisione annullata", Session.User + " ha annullato la condivisione in corso", msgData, "it.gruppoinfor.hometowork.SHARE_CANCELED"); #pragma warning restore 4014 }); return(Ok(true)); }