html = @file_get_contents(DOKU_PLUGIN.'slideshare/div.htm'); $this->pattern = '/\{\{(\s?)slide>(|link):([^} |]+)\|?(.*?)(\s?)\}\}/'; } function getInfo() { return array( 'author' => 'Detlef Burkhardt', 'email' => 'burkhardt@web.de', 'date' => '2008-04-05', 'name' => 'Slideshare Plugin', 'desc' => 'Slideshare link and object{{slide>[|link]:ID}}', 'url' => 'github commes here', ); } function getType(){ return 'substition'; } function getSort(){ return 159; } function connectTo($mode) { $this->Lexer->addSpecialPattern('\{\{\s?slide>[^}]*\s?\}\}',$mode,'plugin_slideshare'); } function handle($match, $state, $pos, &$handler){ $pm = preg_match_all($this->pattern,$match,$result); $left = ($result[1][0]==" "); $right = ($result[5][0]==" "); $cmd = $result[2][0]; $id = $result[3][0]; $title = $result[4][0]; if ($left==true && $right==true){ $align = 'center'; }else if($left==true){ $align = 'right'; }else if($right==true){ $align = 'left'; } return array($state, array($cmd,$id,$align,$title)); } function render($mode, &$renderer, $data){ if($mode != 'xhtml'){return false;} list($state, $match) = $data; list($cmd,$id,$align,$title) = $match; $id = urlencode($id); $title = urlencode($title); $title = str_replace("+"," ",$title); if ($cmd=='link') { $lnkFormat=''; $href_start=sprintf($lnkFormat,$id,empty($title)?$id:$title.' ('.$id.')'); $renderer->doc.=$href_start.'
'.$title.'
'; return true; } else { if ($align=='center'){$renderer->doc.="
";} $renderer->doc.=sprintf($this->html,$id,425,350,$align,$id,425,350,$align,$title); if ($align=='center'){$renderer->doc.="
";} $renderer->doc.=NL; return true; } /* switch($cmd){ case 'link': $lnkFormat=''; $href_start=sprintf($lnkFormat,$id,empty($title)?$id:$title.' ('.$id.')'); $renderer->doc.=$href_start.'
'.$title.'
'; return true; case "em": if ($align=='center'){$renderer->doc.="
";} $renderer->doc.=sprintf($this->html,$id,425,350,$align,$id,425,350,$align,$title); if ($align=='center'){$renderer->doc.="
";} $renderer->doc.=NL; return true; case 'small': if ($align=='center'){$renderer->doc.="
";} $renderer->doc.=sprintf($this->html,255,210,$id,$align,$title,$id); if ($align=='center'){$renderer->doc.="
";} return true; } */ $renderer->doc.=NL; } } ?>