Browse Source

Merge branch 'salihozkara/docsImprovements' into salihozkara/abpUnited

pull/19876/head
Salih 3 years ago
parent
commit
922d73c295
  1. 8
      modules/docs/app/VoloDocs.Web/Pages/Index.cshtml.cs
  2. 8
      modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs
  3. 8
      modules/docs/src/Volo.Docs.Web/Markdown/MarkdownDocumentToHtmlConverter.cs
  4. 25
      modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs

8
modules/docs/app/VoloDocs.Web/Pages/Index.cshtml.cs

@ -25,6 +25,13 @@ namespace VoloDocs.Web.Pages
public virtual async Task<IActionResult> OnGetAsync() public virtual async Task<IActionResult> OnGetAsync()
{ {
if (_urlUiOptions.SingleProjectMode.Enable)
{
return RedirectToPage("/Documents/Project/Index", new Dictionary<string, object> {
{ nameof(Volo.Docs.Pages.Documents.Project.IndexModel.LanguageCode), "en" },
{ nameof(Volo.Docs.Pages.Documents.Project.IndexModel.Version), DocsAppConsts.Latest }
});
}
var projects = await _projectAppService.GetListAsync(); var projects = await _projectAppService.GetListAsync();
if (projects.Items.Count == 1) if (projects.Items.Count == 1)
@ -51,6 +58,7 @@ namespace VoloDocs.Web.Pages
var routeValues = new Dictionary<string, object> { var routeValues = new Dictionary<string, object> {
{ nameof(Volo.Docs.Pages.Documents.Project.IndexModel.LanguageCode), language }, { nameof(Volo.Docs.Pages.Documents.Project.IndexModel.LanguageCode), language },
{ nameof(Volo.Docs.Pages.Documents.Project.IndexModel.Version), version ?? DocsAppConsts.Latest }, { nameof(Volo.Docs.Pages.Documents.Project.IndexModel.Version), version ?? DocsAppConsts.Latest },
{ nameof(Volo.Docs.Pages.Documents.Project.IndexModel.ProjectName), project.ShortName }
}; };
if (!_urlUiOptions.SingleProjectMode.Enable) if (!_urlUiOptions.SingleProjectMode.Enable)

8
modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs

@ -183,14 +183,10 @@ namespace Volo.Docs.Areas.Documents.TagHelpers
var routeValues = new Dictionary<string, object> { var routeValues = new Dictionary<string, object> {
{ nameof(IndexModel.LanguageCode), LanguageCode }, { nameof(IndexModel.LanguageCode), LanguageCode },
{ nameof(IndexModel.Version), Version }, { nameof(IndexModel.Version), Version },
{ nameof(IndexModel.DocumentName), pathWithoutFileExtension } { nameof(IndexModel.DocumentName), pathWithoutFileExtension },
{ nameof(IndexModel.ProjectName), ProjectName }
}; };
if (!_uiOptions.SingleProjectMode.Enable)
{
routeValues.Add(nameof(IndexModel.ProjectName), ProjectName);
}
return _linkGenerator.GetPathByPage("/Documents/Project/Index", values: routeValues); return _linkGenerator.GetPathByPage("/Documents/Project/Index", values: routeValues);
} }

8
modules/docs/src/Volo.Docs.Web/Markdown/MarkdownDocumentToHtmlConverter.cs

@ -178,14 +178,10 @@ namespace Volo.Docs.Markdown
var routeValues = new Dictionary<string, object> { var routeValues = new Dictionary<string, object> {
{ nameof(IndexModel.LanguageCode), languageCode }, { nameof(IndexModel.LanguageCode), languageCode },
{ nameof(IndexModel.Version), version }, { nameof(IndexModel.Version), version },
{ nameof(IndexModel.DocumentName), documentName } { nameof(IndexModel.DocumentName), documentName },
{ nameof(IndexModel.ProjectName), projectShortName }
}; };
if (!_uiOptions.SingleProjectMode.Enable)
{
routeValues.Add(nameof(IndexModel.ProjectName), projectShortName);
}
return _linkGenerator.GetPathByPage("/Documents/Project/Index", values: routeValues); return _linkGenerator.GetPathByPage("/Documents/Project/Index", values: routeValues);
} }
} }

25
modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs

@ -154,6 +154,13 @@ namespace Volo.Docs.Pages.Documents.Project
try try
{ {
await SetProjectAsync(); await SetProjectAsync();
if (Project == null)
{
ProjectFound = false;
Response.StatusCode = 404;
return Page();
}
} }
catch (EntityNotFoundException e) catch (EntityNotFoundException e)
{ {
@ -220,11 +227,10 @@ namespace Volo.Docs.Pages.Documents.Project
return; return;
} }
var singleProjectName = _uiOptions.SingleProjectMode.ProjectName; var singleProjectName = ProjectName ?? _uiOptions.SingleProjectMode.ProjectName;
if (!singleProjectName.IsNullOrWhiteSpace()) if (!singleProjectName.IsNullOrWhiteSpace())
{ {
Project = await _projectAppService.GetAsync(singleProjectName); Project = await _projectAppService.GetAsync(singleProjectName);
ProjectName = singleProjectName;
return; return;
} }
@ -232,17 +238,12 @@ namespace Volo.Docs.Pages.Documents.Project
if (listResult.Items.Count == 1) if (listResult.Items.Count == 1)
{ {
Project = listResult.Items[0]; Project = listResult.Items[0];
ProjectName = Project.ShortName;
return;
} }
ProjectName = singleProjectName;
Project = await _projectAppService.GetAsync(ProjectName);
} }
private async Task SetLanguageList() private async Task SetLanguageList()
{ {
LanguageConfig = await _projectAppService.GetLanguageListAsync(ProjectName, Version); LanguageConfig = await _projectAppService.GetLanguageListAsync(Project.ShortName, Version);
SetDefaultLanguageCode(); SetDefaultLanguageCode();
} }
@ -281,14 +282,10 @@ namespace Volo.Docs.Pages.Documents.Project
var routeValues = new Dictionary<string, object> { var routeValues = new Dictionary<string, object> {
{ nameof(LanguageCode), languageCode }, { nameof(LanguageCode), languageCode },
{ nameof(Version), version }, { nameof(Version), version },
{ nameof(DocumentName), documentName } { nameof(DocumentName), documentName },
{ nameof(ProjectName), projectName }
}; };
if (!_uiOptions.SingleProjectMode.Enable)
{
routeValues.Add(nameof(ProjectName), projectName);
}
return Url.Page("/Documents/Project/Index", routeValues); return Url.Page("/Documents/Project/Index", routeValues);
} }

Loading…
Cancel
Save