_formatData() public method

Return XHTML formated data, depending on column type
public _formatData ( array $column, string $value, Doku_Renderer_xhtml $R ) : string
$column array
$value string
$R Doku_Renderer_xhtml
return string
コード例 #1
0
 function testFormatData()
 {
     global $conf;
     $helper = new helper_plugin_data();
     $renderer = new data_dummy_renderer();
     $this->assertEquals('value1, value2, val', $helper->_formatData(array('type' => ''), "value1\n value2\n val", $renderer));
     $this->assertEquals('link: page ', $helper->_formatData(array('type' => 'page'), "page", $renderer));
     $this->assertEquals('link: page title', $helper->_formatData(array('type' => 'title'), "page|title", $renderer));
     $this->assertEquals('link: page title', $helper->_formatData(array('type' => 'pageid'), "page|title", $renderer));
     $this->assertEquals('link: :key:page ', $helper->_formatData(array('type' => 'nspage', 'key' => 'key'), "page", $renderer));
     $conf['mailguard'] = '';
     $this->assertEquals('<a href="mailto:pa:ge" class="mail" title="pa:ge">pa:ge</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge", $renderer));
     $this->assertEquals('<a href="mailto:pa:ge" class="mail" title="pa:ge">some user</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge some user", $renderer));
     $conf['mailguard'] = 'visible';
     $this->assertEquals('<a href="mailto:pa%3Age" class="mail" title="pa%3Age">pa:ge</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge", $renderer));
     $this->assertEquals('<a href="mailto:pa%3Age" class="mail" title="pa%3Age">some user</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge some user", $renderer));
     $this->assertEquals('<a href=\'url\' class=\'urlextern\' rel="nofollow">url</a>', $helper->_formatData(array('type' => 'url'), "url", $renderer));
     $this->assertEquals('<a href="' . wl('start', array('dataflt[0]' => '_=value')) . '" title="Show pages matching \'value\'" class="wikilink1">value</a>', $helper->_formatData(array('type' => 'tag'), "value", $renderer));
     $this->assertEquals(strftime('%Y/%m/%d %H:%M', 1234567), $helper->_formatData(array('type' => 'timestamp'), "1234567", $renderer));
     $this->assertEquals('<strong>bla</strong>', $helper->_formatData(array('type' => 'wiki'), '|**bla**', $renderer));
     $this->assertEquals('<a href="' . ml('wiki:dokuwiki-128.png') . '" class="media" rel="lightbox"><img src="' . ml('wiki:dokuwiki-128.png', array('w' => 300)) . '" alt=": dokuwiki-128.png" title=": dokuwiki-128.png" width="300" /></a>', $helper->_formatData(array('type' => 'img300'), 'wiki:dokuwiki-128.png', $renderer));
 }
コード例 #2
0
 function testFormatData()
 {
     global $conf;
     global $ID;
     $ID = '';
     $helper = new helper_plugin_data();
     $renderer = new data_dummy_renderer();
     $dwVersion = getVersionData();
     $matchString = '<a href=\'http://www.dokuwiki.org\' class=\'urlextern\' rel="nofollow">http://www.dokuwiki.org</a>';
     if (isset($dwVersion['date'])) {
         preg_match('/(\\d+)-(\\d+)-(\\d+)/', $dwVersion['date'], $dwDate);
         if (mktime(0, 0, 0, $dwDate[2], $dwDate[3], $dwDate[1]) > mktime(0, 0, 0, 7, 30, 2015)) {
             $matchString = '<a href="http://www.dokuwiki.org" class="urlextern" title="http://www.dokuwiki.org"  rel="nofollow">http://www.dokuwiki.org</a>';
         }
     }
     $this->assertEquals('value1, value2, val', $helper->_formatData(array('type' => ''), "value1\n value2\n val", $renderer));
     $this->assertEquals('link: :page ', $helper->_formatData(array('type' => 'page'), "page", $renderer));
     $this->assertEquals('link: :page title', $helper->_formatData(array('type' => 'title'), "page|title", $renderer));
     $this->assertEquals('link: page title', $helper->_formatData(array('type' => 'pageid'), "page|title", $renderer));
     $this->assertEquals('link: :key:page ', $helper->_formatData(array('type' => 'nspage', 'key' => 'key'), "page", $renderer));
     $conf['mailguard'] = '';
     $this->assertEquals('<a href="mailto:pa:ge" class="mail" title="pa:ge">pa:ge</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge", $renderer));
     $this->assertEquals('<a href="mailto:pa:ge" class="mail" title="pa:ge">some user</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge some user", $renderer));
     $conf['mailguard'] = 'visible';
     $this->assertEquals('<a href="mailto:pa%3Age" class="mail" title="pa:ge">pa:ge</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge", $renderer));
     $this->assertEquals('<a href="mailto:pa%3Age" class="mail" title="pa:ge">some user</a>', $helper->_formatData(array('type' => 'mail'), "pa:ge some user", $renderer));
     $this->assertEquals('url', $helper->_formatData(array('type' => 'url'), "url", $renderer));
     // This test's output is different across dokuwiki versions (order of arguments)
     $this->assertEquals($matchString, $helper->_formatData(array('type' => 'url'), "http://www.dokuwiki.org", $renderer));
     $this->assertEquals('link: ?dataflt%5B0%5D=_%3Dvalue value', $helper->_formatData(array('type' => 'tag'), "value", $renderer));
     $this->assertEquals(strftime('%Y/%m/%d %H:%M', 1234567), $helper->_formatData(array('type' => 'timestamp'), "1234567", $renderer));
     $this->assertEquals('<strong>bla</strong>', $helper->_formatData(array('type' => 'wiki'), '|**bla**', $renderer));
     $this->assertEquals('<a rel="lightbox" href="' . ml('wiki:dokuwiki-128.png', array('cache' => null)) . '" class="media" title="wiki:dokuwiki-128.png"><img src="' . ml('wiki:dokuwiki-128.png', array('w' => 300, 'cache' => null)) . '" class="media" title=": dokuwiki-128.png" alt=": dokuwiki-128.png" width="300" /></a>', $helper->_formatData(array('type' => 'img300'), 'wiki:dokuwiki-128.png', $renderer));
 }