Go to the FreeLists Home Page Home Signup Help Login
 



[dokuwiki] || [Date Prev] [05-2007 Date Index] [Date Next] || [Thread Prev] [05-2007 Thread Index] [Thread Next]

[dokuwiki] Re: Plugin Methodology

  • From: Myron Turner <turnermm02@xxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Mon, 07 May 2007 10:29:09 -0500
Chris Smith wrote:
Myron Turner wrote:

Based on something I read or thought I read when I began the project, I was under the impression that I had to use the <html> tags because DokuWiki already supported embedded HTML and that the markup had to go both through DouWiki's native html parser and my own plugin. But this morning it dawned on me that this might be unnecessary doubling up. I changed the tag to to an arbitrary test name, <html_2>. . .</html_2>
and there was no change in behavior.
I was wondering if anyone could clarify the relationships here. Do I in fact have to engage the native DokuWiki html functionality? And is there in fact some doubling up? Or is there perhaps time saved, because if $conf['htmlok'] is set to true, then the DukuWiki parser can ignore HTML altogether?

Thanks,


Myron Turner

DokuWiki doesn't have an html parser. iirc, the contents between <html> tags are output directly without any subsequent parsing by DW (ie, its a protected syntax mode). There isn't any doubling up either. If you use the same tag as DW, then as long as you use a lower sort number your syntax mode will be used. The DW syntax mode is still there, just never accessed. A couple of notes, feel free to ignore them if you have already considered these issues.

- DW has a two stage cache. In the first stage the page is converted to instructions. The second stage generates the output format (normally html). Normally the first stage happens when the wiki data is edited and only rarely otherwise (after configuration changes, plugin alterations). Unless you have disabled caching of a page, mostly the page will be served from the output cache - where there is no ability to check the page contents. An action plugin can intervene in the determination of cache use.

- DW access is based on the current visitor rather than on the editor.


Chris
Thanks.  That's very helpful.

I've been using the PARSER_CACHE_USE event to disable caching during the editing process. And I've also enabled a "Refresh" button which I will be recommending for use just before the user logs out; this also triggers a PARSER_CACHE_USE event and causes the cache to be updated. Normally, this isn't an issue. But under some conditions, what the visitor sees might be different from what the logged in user sees, unless the cache is refreshed.

Thanks again,

Myron

--

_____________________
Myron Turner
http://www.room535.org
http://www.bstatzero.org
http://www.mturner.org/XML_PullParser/


--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist




[ Home | Signup | Help | Login | Archives | Lists ]

All trademarks and copyrights within the FreeLists archives are owned by their respective owners.
Everything else ©2007 Avenir Technologies, LLC.