aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorhttps://id.koumbit.net/anarcat <https://id.koumbit.net/anarcat@web>2012-08-31 01:44:40 -0400
committeradmin <admin@branchable.com>2012-08-31 01:44:40 -0400
commit7a8981437e6f2c2a02b0b212b84f74c895ef66f9 (patch)
tree4103b443820cfe32b2977bd1b27de109f5dfa2ea /doc
parent8f598d529ed448d48f80b3efa91f449e1cd2c73b (diff)
downloadikiwiki-7a8981437e6f2c2a02b0b212b84f74c895ef66f9.tar
ikiwiki-7a8981437e6f2c2a02b0b212b84f74c895ef66f9.tar.gz
a first bugfix for array support
Diffstat (limited to 'doc')
-rw-r--r--doc/plugins/contrib/getfield/discussion.mdwn29
1 files changed, 29 insertions, 0 deletions
diff --git a/doc/plugins/contrib/getfield/discussion.mdwn b/doc/plugins/contrib/getfield/discussion.mdwn
index 3d1d038cb..13ea8b1b3 100644
--- a/doc/plugins/contrib/getfield/discussion.mdwn
+++ b/doc/plugins/contrib/getfield/discussion.mdwn
@@ -16,6 +16,35 @@ yields:
Seems to me this could be checked and `join(" ")`'d. :) -- [[anarcat]]
+> I wrote a stupid fix for this, which works for getfield, but isn't as good for report. It simply does that `join()`. Here's the patch:
+>
+> [[!format diff """
+--- a/IkiWiki/Plugin/field.pm
++++ b/IkiWiki/Plugin/field.pm
+@@ -322,6 +322,9 @@ sub field_get_value ($$;@) {
+ {
+ $basevalue = calculated_values($lc_field_name, $page);
+ }
++ if (ref($basevalue) eq "ARRAY") {
++ $basevalue = join(" ", @{$basevalue}); # hack
++ }
+ if (defined $basevalue)
+ {
+ $Cache{$page}{$basename} = $basevalue;
+@@ -360,6 +363,9 @@ sub field_get_value ($$;@) {
+ {
+ $value = $basevalue;
+ }
++ if (ref($value) eq "ARRAY") {
++ $value = join(" ", @{$value}); # hack
++ }
+ if (defined $value)
+ {
+ $Cache{$page}{$lc_field_name} = $value;
+"""]]
+>
+> Seems to me this should be the default, at the very least in getfield. But at least, with the above patch we don't see expanded Perl ref's. ;) --[[anarcat]]
+
## Templating, and other uses
Like you mentioned in [[ftemplate]] IIRC, it'll only work on the same page. If it can be made to work anywhere, or from a specific place in the wiki - configurable, possibly - you'll have something very similar to mediawiki's templates. I can already think of a few uses for this combined with [[template]] ;) . --[[SR|users/simonraven]]