From 5247aa80f23705c042c5f34b54700271e17dca01 Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Wed, 2 May 2007 14:50:30 +0000 Subject: [PATCH] Fixed a typo in the POD for Asset.pm Fixed a bug in the Help related to HTML::Template v2.9. It does not like variables with empty string names. --- docs/changelog/7.x.x.txt | 2 ++ lib/WebGUI/Asset.pm | 2 +- lib/WebGUI/Operation/Help.pm | 40 ++++++++++++++++++------------------ 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index d1b86b235..ac6ec11fe 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -21,6 +21,8 @@ http://www.plainblack.com/bugs/tracker/asset-tree-cut-and-paste-not-handled-by-search - fix: Fixed a bug where calendars would generate corrupt iCal feed urls (Martin Kamerbeek / Oqapi) + - fix: Help link broken for navigation template (perlDreamer Consulting, LLC) + http://www.plainblack.com/bugs/tracker/help-link-broken-for-navigation-template 7.3.15 - Added more documentation to WebGUI.pm diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm index 769b6e00b..f01f145ac 100644 --- a/lib/WebGUI/Asset.pm +++ b/lib/WebGUI/Asset.pm @@ -1747,7 +1747,7 @@ sub processTemplate { =head2 publish ( arrayref ) Sets an asset and it's descendants to a state of 'published' regardless of it's current state by default. -Otherwise sets state to published only for assests matching one of the states passed in. +Otherwise sets state to published only for assets matching one of the states passed in. =head3 arrayref diff --git a/lib/WebGUI/Operation/Help.pm b/lib/WebGUI/Operation/Help.pm index 45dacf655..908619bd1 100644 --- a/lib/WebGUI/Operation/Help.pm +++ b/lib/WebGUI/Operation/Help.pm @@ -299,7 +299,7 @@ sub www_viewHelp { my $ac = WebGUI::AdminConsole->new($session,"help"); $session->style->setLink($session->url->extras("/help.css"), {rel=>"stylesheet", type=>"text/css"}); my $namespace = $session->form->process("namespace","className") || "WebGUI"; - my $i18n = WebGUI::International->new($session, $namespace); + my $i18n = WebGUI::International->new($session, $namespace); my $help = _get($session,$session->form->process("hid"),$namespace); my @related = @{ $help->{related} }; foreach my $row (@related) { @@ -307,8 +307,8 @@ sub www_viewHelp { next unless (defined $relatedHelp); $ac->addSubmenuItem(_link($session,$row->{tag},$row->{namespace}),$i18n->get($relatedHelp->{title},$row->{namespace})); } - my %vars; - $vars{uiLevelLabel} = $i18n->get('739', 'WebGUI'); + my %vars; + $vars{uiLevelLabel} = $i18n->get('739', 'WebGUI'); if (ref $help->{body} eq 'CODE') { $vars{body} = $help->{body}->($session); } @@ -318,23 +318,23 @@ sub www_viewHelp { my $userUiLevel = $session->user->profileField("uiLevel"); my $uiOverride = $session->form->process("uiOverride"); foreach my $row (@{ $help->{fields} }) { - push @{ $vars{fields} }, - { 'title' => $i18n->get($row->{title},$row->{namespace}), - 'description' => $i18n->get($row->{description},$row->{namespace}), - 'uiLevel' => $row->{uiLevel}, - } if ($uiOverride || ($userUiLevel >= ($row->{uiLevel} || 1))); + push @{ $vars{fields} }, + { 'title' => $i18n->get($row->{title},$row->{namespace}), + 'description' => $i18n->get($row->{description},$row->{namespace}), + 'uiLevel' => $row->{uiLevel}, + } if ($uiOverride || ($userUiLevel >= ($row->{uiLevel} || 1))); } $vars{variable_loop1} = _getTemplateVars($session, 1, $help->{variables}, $i18n); - my $body = WebGUI::Asset::Template->new($session,"PBtmplHelp000000000001")->process(\%vars); + my $body = WebGUI::Asset::Template->new($session,"PBtmplHelp000000000001")->process(\%vars); my $uiOverrideText = $uiOverride ? $i18n->get('show my fields','WebGUI') : $i18n->get('show all fields','WebGUI'); + $ac->addSubmenuItem(_link($session, $session->form->process("hid"), $namespace).";uiOverride=".!$uiOverride, $uiOverrideText) if $userUiLevel < 9; - $ac->addSubmenuItem($session->url->page('op=viewHelpIndex'),$i18n->get(95, 'WebGUI')); - $ac->addSubmenuItem($session->url->page('op=viewHelpTOC'),$i18n->get('help contents', 'WebGUI')); + $ac->addSubmenuItem($session->url->page('op=viewHelpIndex'),$i18n->get(95, 'WebGUI')); + $ac->addSubmenuItem($session->url->page('op=viewHelpTOC'),$i18n->get('help contents', 'WebGUI')); + WebGUI::Macro::process($session,\$body); - return $ac->render( - $body, - $i18n->get(93, 'WebGUI').': '.$i18n->get($help->{title}) - ); + + return $ac->render($body, $i18n->get(93, 'WebGUI').': '.$i18n->get($help->{title})); } #------------------------------------------------------------------- @@ -354,16 +354,16 @@ sub _getTemplateVars { foreach my $row (@{$variables}) { my $indent = []; my $label = ""; + my $templateVar = {}; + $templateVar->{title} = $row->{name}; + $templateVar->{description} = $i18n->get(($row->{description} || $row->{name}), $row->{namespace}); if (exists $row->{variables}) { my $newLevel = $level + 1; $indent = _getTemplateVars($session, $newLevel, $row->{variables}, $i18n); $label = "variable_loop".$newLevel; + $templateVar->{$label} = $indent; } - push ( @{$template}, { - title => $row->{name}, - description=> $i18n->get(($row->{description} || $row->{name}), $row->{namespace}), - $label => $indent - }); + push ( @{ $template }, $templateVar ); } return $template; }