@page @using Microsoft.AspNetCore.Mvc.Localization @using Volo.Abp.AspNetCore.Mvc.UI.Layout @using Volo.Abp.AspNetCore.Mvc.UI.Packages.Anchor @using Volo.Abp.AspNetCore.Mvc.UI.Packages.Clipboard @using Volo.Abp.AspNetCore.Mvc.UI.Packages.MalihuCustomScrollbar @using Volo.Abp.AspNetCore.Mvc.UI.Packages.Popper @using Volo.Abp.AspNetCore.Mvc.UI.Packages.Prismjs @using Volo.Abp.AspNetCore.Mvc.UI.Theming @using Volo.Docs @using Volo.Docs.Localization @using Volo.Docs.Pages.Documents.Project @using Volo.Docs.Pages.Documents.Shared.ErrorComponent @using Volo.Docs.Pages.Shared.Components.Head @inject IThemeManager ThemeManager @inject IPageLayout PageLayout @inject IHtmlLocalizer L @model IndexModel @{ ViewBag.FluidLayout = true; Layout = ThemeManager.CurrentTheme.GetEmptyLayout(); PageLayout.Content.Title = Model.DocumentName?.Replace("-", " "); ViewBag.Description = Model.GetDescription(); ViewBag.CanonicalUrl = Model.IsLatestVersion ? null : Model.GetFullUrlOfTheLatestDocument(); //issue #12355 } @section styles { } @section scripts { @if (Model.LoadSuccess) { } else { } } @if (Model.LoadSuccess) {
@if (Model.ShowProjectsCombobox && Model.ProjectSelectItems.Count > 1) {
@if (Model.ShowProjectsComboboxLabel) { @L["Project"] }
@if (Model.ShowProjectsComboboxLabel) {
} else { }
} @if (Model.VersionSelectItems.Any()) {
@L["Version"]
} @if (Model.LanguageSelectListItems.Count > 1) {
@L["Language"]
@* *@
}
@if (Model.Navigation == null || !Model.Navigation.HasChildItems) {
@L["NavigationDocumentNotFound"]
} else { }
@if (Model.Document != null) {
@if (Model.DocumentPreferences != null && Model.DocumentPreferences.Parameters != null && Model.DocumentPreferences.Parameters.Any()) {

@L["MultipleVersionDocumentInfo"]

@{ const int maxCellCount = 3; var count = Model.DocumentPreferences.Parameters.Count; var rowCount = count / maxCellCount + (count % maxCellCount > 0 ? 1 : 0); var cellSize = 12 / (count > maxCellCount ? maxCellCount : count); var latestCellSize = 12 / count - (rowCount - 1) * maxCellCount; string BuildParameterDivClass(int index) { var row = index / maxCellCount; var isLastRow = row == rowCount - 1; var currentCellSize = isLastRow ? latestCellSize : cellSize; return $"col-12 col-lg-{currentCellSize} mb-lg-{(isLastRow ? "0" : "2")} {(index == count - 1 ? "" : "mb-2")}"; } for (var i = 0; i < count; ++i) { var parameter = Model.DocumentPreferences.Parameters[i];
@(parameter.DisplayName)
} }
}
@L["InThisDocument"]
} else {

@L["DocumentNotFound"]

@L["BackToWebsite"]
}
} else { if (!Model.ProjectFound) { @(await Component.InvokeAsync(new { model = new ErrorPageModel { RedirectUrl = Url.Page("/Projects/Index"), ErrorCode = "404", ErrorMessage = L.GetString("ProjectNotFound") } })) } if (!Model.DocumentFound) { @(await Component.InvokeAsync(new { model = new ErrorPageModel { RedirectUrl = Model.BuildDocumentUrl(Model.ProjectName, Model.LanguageCode, Model.LatestVersionInfo.IsSelected ? DocsAppConsts.Latest : Model.Version, null), ErrorCode = "404", ErrorMessage = L.GetString("DocumentNotFound"), AutoRedirect = !Model.DocumentName.IsNullOrWhiteSpace() } })) } }