示例#1
0
        public async Task <IActionResult> FshijFoto(int perdoruesId, int id)
        {
            // a eshte kerkesen duke e bere perdoruesi i sakte
            if (perdoruesId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            // mere perdoruesin nga depo
            var user = await _depo.GetPerdoruesin(perdoruesId);

            // a eshte fotoja pjese e kolekcionit te ketij perdoruesit
            if (!user.Fotot.Any(f => f.Id == id))
            {
                return(Unauthorized());
            }

            var fotoNgaDepo = await _depo.GetFoto(id);

            if (fotoNgaDepo.aKryesor)
            {
                return(BadRequest("Nuk mundesh me fshi foton kryesore!"));
            }

            if (fotoNgaDepo.PublikId != null)
            {
                var fshijParametrat = new DeletionParams(fotoNgaDepo.PublikId);

                var result = _cloudinary.Destroy(fshijParametrat);

                if (result.Result == "ok")
                {
                    _depo.Fshij(fotoNgaDepo);
                }
            }

            if (fotoNgaDepo.PublikId == null)
            {
                _depo.Fshij(fotoNgaDepo);
            }

            if (await _depo.RuajGjitha())
            {
                return(Ok());
            }

            return(BadRequest("Deshtoj fshirja e fotos"));
        }
示例#2
0
        public async Task <IActionResult> FshijMesazh(int id, int perdoruesId)
        {
            if (perdoruesId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            var mesazhNgaDepo = await _depo.MerrMesazh(id);

            if (mesazhNgaDepo.DerguesId == perdoruesId)
            {
                mesazhNgaDepo.DerguesiKaFshierMszh = true;
            }

            if (mesazhNgaDepo.MarresId == perdoruesId)
            {
                mesazhNgaDepo.MarresiKaFshierMszh = true;
            }

            if (mesazhNgaDepo.DerguesiKaFshierMszh && mesazhNgaDepo.MarresiKaFshierMszh)
            {
                _depo.Fshij(mesazhNgaDepo);
            }

            if (await _depo.RuajGjitha())
            {
                return(NoContent());
            }

            throw new Exception("Mesazhi nuk mund te fshihet");
        }