package WebGUI::Help::Macros; our $HELP = { 'macros list' => { title => 'macros list title', body => sub { my $session = shift; my $dir = join '/', $session->config->getWebguiRoot,"lib","WebGUI","Macro"; opendir (DIR,$dir) or $session->errorHandler->fatal("Can't open Macro directory: $dir!"); my @macros = map { s/\.pm//; $_; } grep { /\.pm$/ } readdir(DIR); ##list of namespaces closedir(DIR); ##Build list of enabled macros, by namespace, by reversing session hash: my %macros = reverse %{ $session->config->get("macros") }; my $i18n = WebGUI::International->new($session, 'Macros'); my $yes = $i18n->get(138, 'WebGUI'); my $no = $i18n->get(139, 'WebGUI'); my $macro_table = join "\n", map { join '', '', $_, '', ($macros{$_} ? $yes : $no), '', ($macros{$_} ? ('^', $macros{$_}, '();') : ' '), '' } @macros; $macro_table = join("\n", $i18n->get('macros list body'), '', '',$macro_table,'
',$i18n->get('macro name'), '', $i18n->get('macro enabled header'), '', $i18n->get('macro shortcut'), '
'); }, fields => [], related => [], }, }; 1;