automatically generated documentation has to get a session var, too
This commit is contained in:
parent
f55e487d3e
commit
cc370e180f
3 changed files with 34 additions and 19 deletions
|
|
@ -227,21 +227,23 @@ our $HELP = {
|
|||
body => 'asset list body',
|
||||
fields => [
|
||||
],
|
||||
related => [ map {
|
||||
my ($namespace) = /::(\w+)$/;
|
||||
my $tag = $namespace;
|
||||
$tag =~ s/([a-z])([A-Z])/$1 $2/g; #Separate studly caps
|
||||
$tag =~ s/([A-Z]+(?![a-z]))/$1 /g; #Separate acronyms
|
||||
$tag = lc $tag;
|
||||
$namespace = join '', 'Asset_', $namespace;
|
||||
{ tag => "$tag add/edit",
|
||||
namespace => $namespace }
|
||||
}
|
||||
grep { $_ } ##Filter out empty entries
|
||||
@{ $self->session->config->get("assets") },
|
||||
@{ $self->session->config->get("assetContainers") },
|
||||
@{ $self->session->config->get("utilityAssets") },
|
||||
],
|
||||
related => sub {
|
||||
my ($session) = @_;
|
||||
map {
|
||||
my ($namespace) = /::(\w+)$/;
|
||||
my $tag = $namespace;
|
||||
$tag =~ s/([a-z])([A-Z])/$1 $2/g; #Separate studly caps
|
||||
$tag =~ s/([A-Z]+(?![a-z]))/$1 /g; #Separate acronyms
|
||||
$tag = lc $tag;
|
||||
$namespace = join '', 'Asset_', $namespace;
|
||||
{ tag => "$tag add/edit",
|
||||
namespace => $namespace }
|
||||
}
|
||||
grep { $_ } ##Filter out empty entries
|
||||
@{ $session->config->get("assets") },
|
||||
@{ $session->config->get("assetContainers") },
|
||||
@{ $session->config->get("utilityAssets") },
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ our $HELP = {
|
|||
body => 'macros list body',
|
||||
fields => [
|
||||
],
|
||||
related => [
|
||||
related => sub { ##Hey, you gotta pass in the session var, right?
|
||||
my $session = shift;
|
||||
sort { $a->{tag} cmp $b->{tag} }
|
||||
map {
|
||||
$tag = $_;
|
||||
|
|
@ -33,8 +34,8 @@ our $HELP = {
|
|||
{ tag => $tag,
|
||||
namespace => $namespace }
|
||||
}
|
||||
values %{ $self->session->config->get("macros") }
|
||||
],
|
||||
values %{ $session->config->get("macros") }
|
||||
},
|
||||
},
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -95,6 +95,17 @@ sub _getHelpName {
|
|||
return $i18n->get($helpName,$file);
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub _related {
|
||||
my ($session, $related) = @_;
|
||||
if (ref $related eq 'CODE') {
|
||||
return $related->($session);
|
||||
}
|
||||
else {
|
||||
return @{ $related };
|
||||
}
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub www_viewHelp {
|
||||
my $session = shift;
|
||||
|
|
@ -103,7 +114,8 @@ sub www_viewHelp {
|
|||
my $namespace = $session->form->process("namespace") || "WebGUI";
|
||||
my $i18n = WebGUI::International->new($session, $namespace);
|
||||
my $help = _get($session->form->process("hid"),$namespace);
|
||||
foreach my $row (@{$help->{related}}) {
|
||||
my @related = _related($session, $help->{related});
|
||||
foreach my $row (@related) {
|
||||
my $relatedHelp = _get($row->{tag},$row->{namespace});
|
||||
$ac->addSubmenuItem(_link($row->{tag},$row->{namespace}),$i18n->get($relatedHelp->{title},$row->{namespace}));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue