Ejemplo n.º 1
0
        public async Task <ActionResult <PrivateUserDTO> > GetUserById(string userId)
        {
            PrivateUserDTO user = await _userService.FindById(userId);

            user.Links = _linkGenerator.GenerateAllLinks(User, user);
            return(Ok(user));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <FolderDTO> > GetFolder(Guid id)
        {
            FolderDTO folder = await _folderService.GetFolderById(id);

            if (folder == null)
            {
                return(NotFound());
            }

            if (!(await _authorizationService.AuthorizeAsync(
                      User, folder, Operations.Read)).Succeeded)
            {
                return(NotFound("Folder not found."));
            }
            if ((await _authorizationService.AuthorizeAsync(
                     User, folder, Operations.Create)).Succeeded)
            {
                folder.Links = _linkGenerator.GenerateAllLinks(User, folder);
            }
            else
            {
                folder.Links = _linkGenerator.GenerateRestrictedLinks(folder);
            }
            return(Ok(folder));
        }
        public async Task <ActionResult <PrivateUserDTO> > GetOwnInfo()
        {
            PrivateUserDTO info = await _accountService.GetOwnInfo
                                      (User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value);

            info.Links = _linkGenerator.GenerateAllLinks(User, info);

            return(Ok(info));
        }
Ejemplo n.º 4
0
        public async Task <ActionResult <FileDTO> > GetById(Guid id)
        {
            FileDTO file = await _fileService.GetFileById(id);

            if (!(await _authorizationService.AuthorizeAsync(
                      User, file, Operations.Read)).Succeeded)
            {
                return(NotFound("File not found"));
            }
            if ((await _authorizationService.AuthorizeAsync(
                     User, file, Operations.Create)).Succeeded)
            {
                file.Links = _linkGenerator.GenerateAllLinks(User, file);
            }
            else
            {
                file.Links = _linkGenerator.GenerateRestrictedLinks(file);
            }

            return(Ok(file));
        }