[wellwell-devel] [wellwell] Add support for Wiki formatter options.
Stefan Hornburg
wellwell-devel at rt.icdevgroup.org
Wed Jun 9 10:57:39 UTC 2010
commit 502ea64ba9dce08ddc58b26940300622dc2882ab
Author: Stefan Hornburg (Racke) <racke at linuxia.de>
Date: Wed Jun 9 12:57:19 2010 +0200
Add support for Wiki formatter options.
lib/Vend/Wiki.pm | 14 +++++++++++---
plugins/wiki/README | 11 +++++++++++
2 files changed, 22 insertions(+), 3 deletions(-)
---
diff --git a/lib/Vend/Wiki.pm b/lib/Vend/Wiki.pm
index 93da09b..91aa21e 100644
--- a/lib/Vend/Wiki.pm
+++ b/lib/Vend/Wiki.pm
@@ -514,7 +514,8 @@ sub load_formatter {
$edit_prefix = join($Global::UrlSepChar, '?action=edit', 'page=');
$fmt->{object} = $fmt->{class}->new (store => $self->{store},
node_prefix => '?page=',
- edit_prefix => $edit_prefix);
+ edit_prefix => $edit_prefix,
+ %{$fmt->{options}});
};
if ($@) {
die "Failed to instantiate $fmt->{class}: $@\n";
@@ -607,7 +608,7 @@ sub parse_wiki {
}
elsif ($param eq 'formatter') {
# add to our list of formatters
- my $class;
+ my ($class, %options);
if ($value =~ /::/) {
# formatter with different namespace, breakout name
@@ -622,8 +623,15 @@ sub parse_wiki {
unless (exists $C->{$item}->{$name}->{$param}->{hash}->{$value}) {
push(@{$C->{$item}->{$name}->{$param}->{array}}, $value);
}
+
+ # possible additional parameters for the constructor
+ for (@args) {
+ my ($opt_name, $opt_value) = split(/=/, $_, 2);
+
+ $options{$opt_name} = $opt_value;
+ }
- $C->{$item}->{$name}->{$param}->{hash}->{$value} = {class => $class};
+ $C->{$item}->{$name}->{$param}->{hash}->{$value} = {class => $class, options => \%options};
}
elsif ($param eq 'plugin') {
# add to our list of plugins
diff --git a/plugins/wiki/README b/plugins/wiki/README
index 7ae63ea..f4dfec5 100644
--- a/plugins/wiki/README
+++ b/plugins/wiki/README
@@ -9,6 +9,17 @@ Wiki wiki dbname wiki
Wiki wiki dbuser __SQLUSER__
Wiki wiki dbpass __SQLPASS__
+Formatter
+---------
+
+Specify the formatter:
+
+Wiki wiki formatter UseMod
+
+Specify the formatter along with constructor option:
+
+Wiki wiki formatter UseMod extended_links=1
+
Front page
----------
More information about the wellwell-devel
mailing list