I am integrating ErfurtWiki into Geeklog, a CMS which has a strong security model and can easily integrate plugins. Geeklog handles the headers, which sometimes conflicts with ErfurtWiki - would it be possible to have the headers (for ErfurtWiki plugins too) all handled by a single function in the core code that checked for an "embedded_inside" flag (eg Gallery does this)? --*EM

Ewiki is definately designed for easy integration. As long as you render the page before you output anything you should have no trouble with headers. Could you be more specific with what your particular error is and where ewiki is outputting rogue headers? -- Andy

milky: The Geeklog CMS looks quite interesting (I of course checked it immediately), but I couldn't find a header() wrapper function you described. Also I can't imagine that ewikis' header() use could conflict with the container CMS, or if so that such a wrapper could easily resolve HTTP header conflicts. However I think it is possible to let ewiki call the native PHP header() more indirectly so one could plugin ($ewiki_plugins[]) a wrapper call. But anyhow I first must demand to find/see the code inside Geeklog which would work as a header() wrapper function! (no hacking without reviews ;)

Stunningly fast response - I'll get you a detailed reply asap. Thanks. --*EM

Yeah, we have notify tags on this page and tend to check it pretty quick. :-) -- Andy

milky: We could probably want to introduce WebNotify (as seen in TWiki) here too, when the notify: gets to annoying (I will at least patch it to contain a diff of the made changes).

OK, OK. I'll try to keep up! Sign of a healthy project.

And the right response of course. The initial problem I had was with the plugin email_protect - but this is transitory (disappears with refresh). The main point (not really a problem, more just a slight hassle) is with admin functions which output complete HTML pages. The core code gives no trouble at all. Geeklog has a very simple model: it builds pages like this:

  • $display = *COM_siteHeader(); //display site headers
  • $display .= "Here is your html for display";
  • $display .= COM_siteFooter(); // display site footer

All functions/plugins return pure HTML, which is then put together and output. If ErfurtWiki checked this, it would make integration into various platforms much simpler (and keeping up with updates would be easier of course). When a page is built for display, enabled plugins are called to see if they have any code to incorporate in the headers too. If it helps, the header function is here. With that sorted, it should be a doddle to integrate the two. Geeklog allows users access rights (eg. ewiki.admin, ewiki.edit, ewiki.view) which could be mapped to your access rings with a new security plugin with no trouble I think. Let me know if you need any more info at all/if that doesn't answer your questions. To be clear - the core code gives no problems with headers. Thanks. --*EM

milky: ewiki uses almost the same output generation model (I would call that "Perl-like PHP usage"), and I now believe you didn't talk about HTTP headers(), but the HTML <head> of the admin tools/.

The admin tools/ are not part of ewiki, they were never planned to be, and they won't be in the near future. This is because these functions are not very wiki-like and sometimes dangerous to the whole system, and as there is no strong authentication layer in ewiki (or at least not per default) we cannot integrate it. However, there is already work underway to implement a lite per-page control plugin, which obviously then is an integretated thing. The backup and restore thingi is however of little use, and there is probably no need to make it available to the container CMS.

Also I was inspired by the "static pages" extension of Geeklog, and I now plan to do something similar which could allow to make wrapper pages for the tools/ scripts. But this is still an idea nevertheless.

OK - always glad to have provoked something or someone! Cheers, *EM

AndyFundinger: Is this how the MailingList page is being done?

milky: Nop, the MailingList page is an ordinary page plugin, but there wouldn't be any difference if it was a spage file (that extensions is just not activated on sf.net yet).

bottom corner