function wikiplugin_zoterolist($data, $params) { if (! isset($params['tag'])) { return WikiParser_PluginOutput::argumentError(array('tag')); } $cachelib = TikiLib::lib('cache'); $tikilib = TikiLib::lib('tiki'); $cacheKey = 'zoterolist.' . $params['tag']; if ($cached = $cachelib->getSerialized($cacheKey, 'zotero')) { if (($cached['created'] + 3600) > $tikilib->now) { return WikiParser_PluginOutput::html($cached['data']); } } $zoterolib = TikiLib::lib('zotero'); $html = $zoterolib->get_formatted_references($params['tag']); $cachelib->cacheItem($cacheKey, serialize(array('created' => $tikilib->now, 'data' => $html)), 'zotero'); if ($html) { return WikiParser_PluginOutput::html($html); } else { return WikiParser_PluginOutput::error(tra('Error'), tra('No results obtained. The Zotero citation server may be down.')); } }
function testHtmlToHtmlOutput() { $output = WikiParser_PluginOutput::html('<div>Hello</div>'); $this->assertEquals('<div>Hello</div>', $output->toHtml()); }
private function convert_plugin_output($output, $from, $to, $parseOptions) { if (!$output instanceof WikiParser_PluginOutput) { if ($from === 'wiki') { $output = WikiParser_PluginOutput::wiki($output); } elseif ($from === 'html') { $output = WikiParser_PluginOutput::html($output); } } if ($to === 'html') { return $output->toHtml($parseOptions); } elseif ($to === 'wiki') { return $output->toWiki(); } }