public async Task <IActionResult> GetApplicationLinks(int applicationId) { IEnumerable <ResourceLink> resourceLinks = await _resourceLinkService.GetResourceLinksForApplication(applicationId); IEnumerable <ResourceLinkViewModel> viewModels = new ResourceLinkViewModel().MapToEnumerable(resourceLinks); return(Json(viewModels)); }
public async Task <IActionResult> GetDatasetLinks(int datasetId) { if (!_securityService.CurrrentUserHasAccessToDataset(datasetId, AccessLevel.Read, CurrentOrganizationId())) { return(Forbid()); } IEnumerable <ResourceLink> resourceLinks = await _resourceLinkService.GetResourceLinksForDataset(datasetId); IEnumerable <ResourceLinkViewModel> viewModels = new ResourceLinkViewModel().MapToEnumerable(resourceLinks); return(Json(viewModels)); }
public async Task <IActionResult> CreateApplicationLink([FromBody] ResourceLinkViewModel resourceLink, int applicationId) { try { var model = new ResourceLinkViewModel().Map(resourceLink, applicationId); var createdResourceLink = await _resourceLinkService.Create(model); return(Json(new ResourceLinkViewModel().Map(createdResourceLink))); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }
public async Task <IActionResult> CreateDatasetLink([FromBody] ResourceLinkViewModel resourceLink, int datasetId) { if (!_securityService.CurrrentUserHasAccessToDataset(datasetId, AccessLevel.Write, CurrentOrganizationId())) { return(Forbid()); } var model = new ResourceLinkViewModel().Map(resourceLink); model.DatasetResourceLinkId = datasetId; var createdResourceLink = await _resourceLinkService.Create(model); return(Json(new ResourceLinkViewModel().Map(createdResourceLink))); }
public async Task <IActionResult> Delete([FromBody] ResourceLinkViewModel resourceLink) { if (resourceLink.Id == 0) { return(BadRequest()); } ResourceLink originalResourceLink = await _resourceLinkService.GetAsync(resourceLink.Id); //if (CurrentOrganizationId() != resourceLink.) //TODO: Security check // return Forbid(); await _resourceLinkService.Delete(resourceLink.Id); return(Ok()); }
public async Task <ActionResult> EditDatasetLink(int datasetId, int id, [FromBody] ResourceLinkViewModel resourceLink) { if (!_securityService.CurrrentUserHasAccessToDataset(datasetId, AccessLevel.Write, CurrentOrganizationId())) { return(Forbid()); } var model = resourceLink.Map(resourceLink); model.Id = id; model.DatasetResourceLinkId = datasetId; var updatedResourceLink = await _resourceLinkService.UpdateAsync(model); return(Json(new ResourceLinkViewModel().Map(updatedResourceLink))); }
public async Task <ActionResult> EditApplicationLink(int applicationId, int id, [FromBody] ResourceLinkViewModel resourceLink) { try { var model = resourceLink.Map(resourceLink, applicationId); model.Id = id; var updatedResourceLink = await _resourceLinkService.UpdateAsync(model); return(Json(new ResourceLinkViewModel().Map(updatedResourceLink))); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); } }