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));
        }