aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/external.pm
diff options
context:
space:
mode:
authorJoey Hess <joey@kitenet.net>2007-12-08 17:40:50 -0500
committerJoey Hess <joey@kitenet.net>2007-12-08 17:40:50 -0500
commit055179cb4cc9b8bc9b204e1a9f83b1f59e13824e (patch)
tree1a48f2f93684238180b355df67f2aa48dcfb1be4 /IkiWiki/Plugin/external.pm
parent2fbca21390d2752a89a2e1167fe33d4d201359cf (diff)
downloadikiwiki-055179cb4cc9b8bc9b204e1a9f83b1f59e13824e.tar
ikiwiki-055179cb4cc9b8bc9b204e1a9f83b1f59e13824e.tar.gz
* Finally implemented a simple per-page data storage mechanism for plugins,
via the %pagestate hash. * Use pagestate in meta to detect potential redir loops.
Diffstat (limited to 'IkiWiki/Plugin/external.pm')
-rw-r--r--IkiWiki/Plugin/external.pm18
1 files changed, 18 insertions, 0 deletions
diff --git a/IkiWiki/Plugin/external.pm b/IkiWiki/Plugin/external.pm
index f76b42c99..8d1baa587 100644
--- a/IkiWiki/Plugin/external.pm
+++ b/IkiWiki/Plugin/external.pm
@@ -132,6 +132,24 @@ sub setvar ($$$;@) { #{{{
return $ret;
} #}}}
+sub getstate ($$$$) { #{{{
+ my $plugin=shift;
+ my $page=shift;
+ my $id=shift;
+ my $key=shift;
+
+ return $IkiWiki::pagestate{$page}{$id}{$key};
+} #}}}
+
+sub setstate ($$$$;@) { #{{{
+ my $plugin=shift;
+ my $page=shift;
+ my $id=shift;
+ my $key=shift;
+
+ return $IkiWiki::pagestate{$page}{$id}{$key}=@_;
+} #}}}
+
sub inject ($@) { #{{{
# Bind a given perl function name to a particular RPC request.
my $plugin=shift;