description(); } } if (!is_array($w)) { # print documenation / widget chooser. xhtml_header(); echo '
'; xhtml_footer(); exit; } if (isset($_REQUEST['id'])) { $id=rawurldecode($_REQUEST['id']); } else { $id=rand(10000,99999); # TODO prefix widget name to ID and use substr(md5($id),0,8); } if (isset($_REQUEST['f'])) { $format=rawurldecode($_REQUEST['f']); } else { $format='widget'; } if (isset($_REQUEST['m'])) { $mode=rawurldecode($_REQUEST['m']); } else { $mode='include'; } switch ($format) { case 'js': case 'javascript': require_once('libwidget/out_js.php'); $out_gen = new widget_javascript; break; default: case 'xml': case 'widget': require_once('libwidget/out_xml.php'); $out_gen = new widget_xml; break; } # output widget switch ($mode) { case 'p': case 'presentation': $out_gen->presentation($id, $w); break; case 'example': xhtml_header( /*' ' */ ); echo $out_gen->raw_include($id, $w); xhtml_footer(); break; case 'include': default: xhtml_header(); $out_gen->include_code($id, $w); xhtml_footer(); break; } /* vim: set ts=2 sw=2 et foldmethod=marker enc=utf-8 : */