Overview

Packages

  • None
  • Wicked

Classes

  • Text_Wiki_Parse_Heading2
  • Text_Wiki_Parse_Toc2
  • Text_Wiki_Render_Latex_Heading2
  • Text_Wiki_Render_Latex_Toc2
  • Text_Wiki_Render_Plain_Heading2
  • Text_Wiki_Render_Plain_Toc2
  • Text_Wiki_Render_Rst
  • Text_Wiki_Render_Rst_Blockquote
  • Text_Wiki_Render_Rst_Bold
  • Text_Wiki_Render_Rst_Code
  • Text_Wiki_Render_Rst_Deflist
  • Text_Wiki_Render_Rst_Emphasis
  • Text_Wiki_Render_Rst_Freelink
  • Text_Wiki_Render_Rst_Heading2
  • Text_Wiki_Render_Rst_Links
  • Text_Wiki_Render_Rst_List
  • Text_Wiki_Render_Rst_Newline
  • Text_Wiki_Render_Rst_Paragraph
  • Text_Wiki_Render_Rst_Raw
  • Text_Wiki_Render_Rst_Toc2
  • Text_Wiki_Render_Rst_Tt
  • Text_Wiki_Render_Rst_Url
  • Text_Wiki_Render_Xhtml_Attribute
  • Text_Wiki_Render_Xhtml_Code2
  • Text_Wiki_Render_Xhtml_Freelink2
  • Text_Wiki_Render_Xhtml_Heading2
  • Text_Wiki_Render_Xhtml_Image2
  • Text_Wiki_Render_Xhtml_Interwiki
  • Text_Wiki_Render_Xhtml_Registrylink
  • Text_Wiki_Render_Xhtml_Toc2
  • Text_Wiki_Render_Xhtml_Url
  • Text_Wiki_Render_Xhtml_Wickedblock
  • Text_Wiki_Render_Xhtml_Wikilink2
  • Wicked
  • Wicked_Api
  • Wicked_Driver
  • Wicked_Driver_Sql
  • Wicked_Exception
  • Wicked_Factory_Driver
  • Wicked_Page
  • Wicked_Page_AddPage
  • Wicked_Page_AllPages
  • Wicked_Page_AttachedFiles
  • Wicked_Page_BackLinks
  • Wicked_Page_DeletePage
  • Wicked_Page_EditPage
  • Wicked_Page_LeastPopular
  • Wicked_Page_LikePages
  • Wicked_Page_MergeOrRename
  • Wicked_Page_MostPopular
  • Wicked_Page_NewPage
  • Wicked_Page_RecentChanges
  • Wicked_Page_RevertPage
  • Wicked_Page_Search
  • Wicked_Page_StandardHistoryPage
  • Wicked_Page_StandardPage
  • Wicked_Page_SyncDiff
  • Wicked_Page_SyncPages
  • Wicked_Sync
  • Wicked_Sync_Wicked
  • Wicked_Test
  • Overview
  • Package
  • Class
  • Tree
 1: <?php
 2: /**
 3:  * @package Wicked
 4:  */
 5: class Text_Wiki_Render_Xhtml_Interwiki extends Text_Wiki_Render
 6: {
 7:     public $conf = array(
 8:         'sites' => array(
 9:             'MeatBall' => 'http://www.usemod.com/cgi-bin/mb.pl?%s',
10:             'Advogato' => 'http://advogato.org/%s',
11:             'Wiki'     => 'http://c2.com/cgi/wiki?%s',
12:             'Bookshelved' => 'http://bookshelved.org/cgi-bin/wiki.pl?%s'
13:         ),
14:         'target' => '_blank'
15:     );
16: 
17:     /**
18:      * Renders a token into text matching the requested format.
19:      *
20:      * @param array $options  The "options" portion of the token (second
21:      *                        element).
22:      *
23:      * @return string  The text rendered from the token options.
24:      */
25:     public function token($options)
26:     {
27:         $site = $options['site'];
28:         $page = $options['page'];
29:         $text = $options['text'];
30: 
31:         if (isset($this->conf['sites'][$site])) {
32:             $href = $this->conf['sites'][$site];
33:         } else {
34:             return $text;
35:         }
36: 
37:         // old form where page is at end,
38:         // or new form with %s placeholder for sprintf()?
39:         if (strpos($href, '%s') === false) {
40:             // use the old form
41:             $href = $href . $page;
42:         } else {
43:             // use the new form
44:             $href = sprintf($href, $page);
45:         }
46: 
47:         // allow for alternative targets
48:         $target = $this->getConf('target', '');
49: 
50:         if ($target && trim($target) != '') {
51:             $target = " target=\"$target\"";
52:         }
53: 
54:         return '<a' . $target . ' href="' . Horde::externalUrl($href) . '">' . $text . '</a>';
55:     }
56: }
57: 
API documentation generated by ApiGen