summaryrefslogtreecommitdiff
path: root/includes/pear/Text/Wiki/Render/Latex/Wikilink.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/pear/Text/Wiki/Render/Latex/Wikilink.php')
-rw-r--r--includes/pear/Text/Wiki/Render/Latex/Wikilink.php60
1 files changed, 60 insertions, 0 deletions
diff --git a/includes/pear/Text/Wiki/Render/Latex/Wikilink.php b/includes/pear/Text/Wiki/Render/Latex/Wikilink.php
new file mode 100644
index 0000000..5b4cdba
--- /dev/null
+++ b/includes/pear/Text/Wiki/Render/Latex/Wikilink.php
@@ -0,0 +1,60 @@
+<?php
+
+class Text_Wiki_Render_Latex_Wikilink extends Text_Wiki_Render {
+ var $conf = array(
+ 'pages' => array(),
+ 'view_url' => 'http://example.com/index.php?page=%s',
+ 'new_url' => 'http://example.com/new.php?page=%s',
+ 'new_text' => '?'
+ );
+
+ /**
+ *
+ * Renders a token into XHTML.
+ *
+ * @access public
+ *
+ * @param array $options The "options" portion of the token (second
+ * element).
+ *
+ * @return string The text rendered from the token options.
+ *
+ */
+
+ function token($options)
+ {
+ // make nice variable names (page, anchor, text)
+ extract($options);
+
+ // are we checking page existence?
+ $list = $this->getConf('pages');
+ if (is_array($list)) {
+ // yes, check against the page list
+ $exists = in_array($page, $list);
+ } else {
+ // no, assume it exists
+ $exists = true;
+ }
+
+ // convert *after* checking against page names so as not to mess
+ // up what the user typed and what we're checking.
+ $page = $this->textEncode($page);
+ $anchor = $this->textEncode($anchor);
+ $text = $this->textEncode($text);
+
+ $href = $this->getConf('view_url');
+
+ if (strpos($href, '%s') === false) {
+ // use the old form (page-at-end)
+ $href = $href . $page . $anchor;
+ } else {
+ // use the new form (sprintf format string)
+ $href = sprintf($href, $page . $anchor);
+ }
+
+ // get the CSS class and generate output
+ $css = $this->formatConf(' class="%s"', 'css');
+ return $text . '\footnote{' . $href . '}';
+ }
+}
+?>