public IActionResult GetPreview(string projectId, [FromQuery] string sourcePath, [FromQuery] string dataset, [FromQuery] string userEmail) { try { if (string.IsNullOrEmpty(projectId) || string.IsNullOrEmpty(sourcePath) || string.IsNullOrEmpty(dataset) || string.IsNullOrEmpty(userEmail)) { return(BadRequest("Invalid request parameters")); } var projectDetailsRequestModel = new GetProjectDetailsRequestModel { ProjectId = projectId, ExcludeResources = false, UserEmail = userEmail }; var projectDetails = MongoConnector.GetProjectDetails(projectDetailsRequestModel); var requestModel = new GetResourceDetailsRequestModel { ProjectId = projectId, SourcePath = sourcePath, UserEmail = userEmail }; var resourceDetails = MongoConnector.GetResourceDetails(requestModel); var userId = MongoConnector.GetUserIdFromUserEmail(new GetUserIdRequestModel { UserEmail = userEmail }); var languageEntity = MongoConnector.GetLanguageEntity(new GetLanguageEntityRequestModel { EntityId = projectDetails.SchemaId, }); var partialModel = new GetPartialPagesDetailsRequestModel { ProjectId = projectId, UserEmail = userEmail }; GetPartialPagesDetailsResponseModel partialPages = MongoConnector.GetPartialPagesDetails(partialModel); languageEntity = new KLanguageBase().GetKitsuneLanguage(userEmail, projectId, projectDetails, languageEntity, userId.Id); //Compile and get the call the single page preview api var result = _service.GetPreviewAsync(userEmail, projectId, resourceDetails, projectDetails, languageEntity, partialPages, dataset, userId.Id); if (result != null) { return(Ok(result)); } return(BadRequest("Unable to get the preview")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IActionResult GetPageDetails(string projectId, [FromQuery] string sourcepath, [FromQuery] string user) { try { var requestModel = new GetResourceDetailsRequestModel { ProjectId = projectId, SourcePath = sourcepath, UserEmail = user }; var validationResult = requestModel.Validate(); if (validationResult.Any()) { return(BadRequest(validationResult)); } return(Ok(MongoConnector.GetResourceDetails(requestModel))); } catch (Exception ex) { return(BadRequest(ex)); } }