Implementation Thoughts

Update the wiki markup with the notion of widgets. The widgets follow an interface and are plugged into the wiki markup input and output processors.

For example:

[[Widget: Google Docs|id=xyz|width=500|height=300]]

This translates to the required HTML (an iframe in this case) for embedding on the page.

See http://www.mediawikiwidgets.org/Widget:Google_Document

One concern is that there is a WYSIWYG HTML editor for creating content. This works great for images and video, however it would need to be able to roundtrip the widget input to/from wiki markup. To simplify this, the HTML editor would just show the Wiki Markup as-is and not the embedded content during "edit" mode.

What needs to be done?

  • Each widget needs a structure to hold the name of the widget and its parameters; use a WikiWidgetInterface
  • Each widget needs to specify the HTML output which is pluggable into WikiToHTMLUtils
  • HTMLToWikiUtils needs to pass-through the widget information markup
  • Update WikiPDFUtils
  • In the editor, add a new button to easily insert these types using a form; the form is built from the widget