) */ class RefbaseRendererCite extends RefbaseRenderer { /// Object generating citations private $citationCreator; /** * Constructor (simply inherit from parent) */ public function __construct( $citationType ) { parent::__construct(); $this->citationCreator = new RefbaseCitationCreator( $citationType ); } /** * List fields required to build template */ public function getFieldList() { $citeList = $this->citationCreator->getFieldList(); return array_unique( array_merge( array(), $citeList ) ); } /** * Render output: add wiki link to refbase page, include citation in tooltip */ public function render( $entry, & $cite, $options ) { $citekey = $options['citekey']; $cite = ""; // Simply link to refbase, and add tooltip // (form string [URL KEY ] ) $citation = ""; $this->citationCreator->createCitation( $entry, $citation ); // Use #tag method to properly pass inputs to $cite .= "{{#tag:ref|$citation|name=$citekey}}"; return true; } }