Exemplo n.º 1
0
	public static function process($strHTML)
	{
		$html = $strHTML;
		
		//$arr = Wiki2html::get_pres('<pre class="brush: js">p111</pre>...<pre class="brush: css">p222</pre>');
		//var_dump($arr);
		$arr = Wiki2html::get_pre_tags($html);
		for ($i = 0, $cnt = count($arr); $i < $cnt; $i++) {
			$html = str_replace(
						$arr[$i]['pretag'].$arr[$i]['content'].'</pre>',
						'!pre'.$i.'!',
					$html);
		}
		
		// Wiki2html Parser
		$html = html_entity_decode($html);
		$html = str_replace('&ndash;','-',$html);
		$html = str_replace('&quot;','"',$html);
		$html = preg_replace('/\&amp;(nbsp);/','&${1};',$html);				
		$html = convertTables($html);
		$html = simpleText("\n".$html);
		
		$tmp = preg_match_all("/!pre(\d)!/s", $html, $patterns);
		//var_dump($patterns);
		for ($i = 0, $cnt = count($patterns[1]); $i < $cnt; $i++) {
	    	$precontent = html_entity_decode($arr[$i]['content2']);
            $precontent = str_replace('<', '&lt;', $precontent); // to prevent output <?php
            $precontent = str_replace('>', '&gt;', $precontent);
            $html = str_replace('!pre'.$i.'!',
							"\n".$arr[$i]['pretag'].$precontent.'</pre>', $html);
		}
						
		return $html;
	}
Exemplo n.º 2
0
 public function view()
 {
     $s = file_get_contents(BASEVIEW . '/' . v('wiki_test.html'));
     $s = Wiki2html::process($s);
     $s = SyntaxHighlighter::process($s);
     $v = $this->smarty;
     $v->assign('inc_content', v('wiki_test_footer.html'));
     $v->assign('content', $s);
     $this->display($v, v('index.html'));
 }
Exemplo n.º 3
0
 public function view()
 {
     if ($this->isPosting()) {
         return $this->processPost();
     }
     $postId = $this->params[0];
     $dao = DAO::getDAO('PostDAO');
     $post = $dao->getById($postId);
     $postContent = $post['content'];
     $postContent = html_entity_decode($postContent);
     $postContent = Wiki2html::process($postContent);
     $v = $this->smarty;
     $v->setTemplateDir(BASEEXT . '/blog/view');
     $v->assign('post', $post);
     $v->assign('postContent', $postContent);
     $this->display($v, 'blog_edit.html');
 }