Difference between revisions of "XmlWiki"

From Organic Design wiki
Line 12: Line 12:
 
'''The hack requires four hooks into the current Wiki environment'''
 
'''The hack requires four hooks into the current Wiki environment'''
  
*articleRender '''(done)'''
+
'''INIT'''
*articleRequest '''(done)'''
+
*get wiki/request env
*articleChange '''(done)'''
+
*get article
*userName '''(done)'''
+
*permissions
 +
'''INPUT'''
 +
*if valid xml posted, update article-dom
 +
*put into POST as text for MediaWiki
 +
'''OUTPUT'''
 +
*trap MediaWiki output
 +
*extract content and links
 +
*add xml link
 +
*render transform article if view/preview
 +
*render description-textarea if editing
 +
*render xml-textarea(xw.xml) if $action=xwXML
 +
*render wiki content if special
 +
*publish article if saving
 +
FUNCTION
 +
*get article as dom
 +
*etxract hrefs from text
 +
*message
 +
ADMIN
 +
*enable patch
 +
*disable patch
  
  

Revision as of 10:40, 26 May 2005

File:Xmlwiki

xmlWiki is a hack not done the proper way: it is a modification of the index.php page offering new features which are all maintained from editing normal wiki articles.

  • All articles are XML
  • An additional xml page allows editing the data aspect of an article as a tree.
  • A permissions structure offering basic read/write control over articles with users and groups.
  • PHP Functions can be created and maintained by developers and can be dynamically applied to articles before rendering.
  • Articles can made to automatically publish remotely over HTTP or FTP when edits are saved.


The hack requires four hooks into the current Wiki environment

INIT

  • get wiki/request env
  • get article
  • permissions

INPUT

  • if valid xml posted, update article-dom
  • put into POST as text for MediaWiki

OUTPUT

  • trap MediaWiki output
  • extract content and links
  • add xml link
  • render transform article if view/preview
  • render description-textarea if editing
  • render xml-textarea(xw.xml) if $action=xwXML
  • render wiki content if special
  • publish article if saving

FUNCTION

  • get article as dom
  • etxract hrefs from text
  • message

ADMIN

  • enable patch
  • disable patch


Implimenting the Hack

Use the xmlwiki.php script to enable or disable the xml parsing of MediaWiki content.