You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-12-21 23:47:33 +02:00
Base menu ordering on natural ordering in the manifest.
Menu ordering was alphabetical which is not ideal for a user interface. Contributed by Cynthia Shang.
This commit is contained in:
committed by
David Steele
parent
35bbb5bd68
commit
b85e51d6d5
@@ -178,6 +178,9 @@ sub new
|
|||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Preserve natural order
|
||||||
|
push(@{$${oRenderHash}{stryOrder}}, $strKey);
|
||||||
|
|
||||||
$$oRenderOutHash{source} = $strSource;
|
$$oRenderOutHash{source} = $strSource;
|
||||||
|
|
||||||
# Get the filename
|
# Get the filename
|
||||||
|
|||||||
@@ -83,6 +83,7 @@ sub process
|
|||||||
|
|
||||||
# Working variables
|
# Working variables
|
||||||
my $oPage = $self->{oDoc};
|
my $oPage = $self->{oDoc};
|
||||||
|
my $oRender = $self->{oManifest}->renderGet(RENDER_TYPE_HTML);
|
||||||
|
|
||||||
# Initialize page
|
# Initialize page
|
||||||
my $strTitle = $oPage->paramGet('title');
|
my $strTitle = $oPage->paramGet('title');
|
||||||
@@ -126,19 +127,11 @@ sub process
|
|||||||
{
|
{
|
||||||
my $oMenuBody = $oHtmlBuilder->bodyGet()->addNew(HTML_DIV, 'page-menu')->addNew(HTML_DIV, 'menu-body');
|
my $oMenuBody = $oHtmlBuilder->bodyGet()->addNew(HTML_DIV, 'page-menu')->addNew(HTML_DIV, 'menu-body');
|
||||||
|
|
||||||
if ($self->{strRenderOutKey} ne 'index' && defined($self->{oManifest}->renderOutGet(RENDER_TYPE_HTML, 'index', true)))
|
# Get the menu in the order listed in the manifest.xml
|
||||||
|
foreach my $strRenderOutKey (@{${$oRender}{stryOrder}})
|
||||||
{
|
{
|
||||||
my $oRenderOut = $self->{oManifest}->renderOutGet(RENDER_TYPE_HTML, 'index');
|
# Do not output the menu item for the page the user is on (e.g. on Command page, the Command menu item will not appear)
|
||||||
|
if ($strRenderOutKey ne $self->{strRenderOutKey})
|
||||||
$oMenuBody->
|
|
||||||
addNew(HTML_DIV, 'menu')->
|
|
||||||
addNew(HTML_A, 'menu-link', {strContent => $$oRenderOut{menu}, strRef => '{[project-url-root]}'});
|
|
||||||
}
|
|
||||||
|
|
||||||
# ??? The sort order here is hokey and only works for backrest - will need to be changed
|
|
||||||
foreach my $strRenderOutKey (sort {$b cmp $a} $self->{oManifest}->renderOutList(RENDER_TYPE_HTML))
|
|
||||||
{
|
|
||||||
if ($strRenderOutKey ne $self->{strRenderOutKey} && $strRenderOutKey ne 'index')
|
|
||||||
{
|
{
|
||||||
my $oRenderOut = $self->{oManifest}->renderOutGet(RENDER_TYPE_HTML, $strRenderOutKey);
|
my $oRenderOut = $self->{oManifest}->renderOutGet(RENDER_TYPE_HTML, $strRenderOutKey);
|
||||||
|
|
||||||
|
|||||||
@@ -112,7 +112,8 @@ sub process
|
|||||||
# ??? Temp hack for underscores in filename
|
# ??? Temp hack for underscores in filename
|
||||||
$strLatex =~ s/pgaudit\\\_doc/pgaudit\_doc/g;
|
$strLatex =~ s/pgaudit\\\_doc/pgaudit\_doc/g;
|
||||||
|
|
||||||
foreach my $strPageId ($self->{oManifest}->renderOutList(RENDER_TYPE_PDF))
|
# Process the sources in the order listed in the manifest.xml
|
||||||
|
foreach my $strPageId (@{${$self->{oManifest}->renderGet(RENDER_TYPE_PDF)}{stryOrder}})
|
||||||
{
|
{
|
||||||
&log(INFO, " render out: ${strPageId}");
|
&log(INFO, " render out: ${strPageId}");
|
||||||
|
|
||||||
|
|||||||
@@ -93,9 +93,9 @@
|
|||||||
<render type="html">
|
<render type="html">
|
||||||
<render-source key="index" menu="Home"/>
|
<render-source key="index" menu="Home"/>
|
||||||
<render-source key="user-guide" menu="User Guide"/>
|
<render-source key="user-guide" menu="User Guide"/>
|
||||||
|
<render-source key="release" menu="Releases"/>
|
||||||
<render-source key="configuration" source="reference" menu="Configuration"/>
|
<render-source key="configuration" source="reference" menu="Configuration"/>
|
||||||
<render-source key="command" source="reference" menu="Commands"/>
|
<render-source key="command" source="reference" menu="Commands"/>
|
||||||
<render-source key="release" menu="Releases"/>
|
|
||||||
</render>
|
</render>
|
||||||
|
|
||||||
<render type="pdf" file="{[pdf-file]}">
|
<render type="pdf" file="{[pdf-file]}">
|
||||||
|
|||||||
@@ -235,6 +235,14 @@
|
|||||||
</release-improvement-list>
|
</release-improvement-list>
|
||||||
|
|
||||||
<release-development-list>
|
<release-development-list>
|
||||||
|
<release-item>
|
||||||
|
<release-item-contributor-list>
|
||||||
|
<release-item-contributor id="cynthia.shang"/>
|
||||||
|
</release-item-contributor-list>
|
||||||
|
|
||||||
|
<p>Base menu ordering on natural ordering in the manifest.</p>
|
||||||
|
</release-item>
|
||||||
|
|
||||||
<release-item>
|
<release-item>
|
||||||
<p>Replace keywords with more flexible if statements.</p>
|
<p>Replace keywords with more flexible if statements.</p>
|
||||||
</release-item>
|
</release-item>
|
||||||
|
|||||||
Reference in New Issue
Block a user