array( 'method' => 'POST', 'content' => file_get_contents("php://input"), 'header' => "Content-type: application/x-www-form-urlencoded\r\n" ) )); } else if (isset($_SERVER["QUERY_STRING"]) && $_SERVER["QUERY_STRING"]) { $uri .= '?'; if (isset($_SERVER["PATH_INFO"]) && $_SERVER["PATH_INFO"] != '/') { $uri .= 'id='.substr($_SERVER["PATH_INFO"],1).'&'; } $uri .= $_SERVER["QUERY_STRING"]; } else if (isset($_SERVER["PATH_INFO"]) && $_SERVER["PATH_INFO"] != '/') { $uri .= '?'.substr($_SERVER["PATH_INFO"],1); } $this->content_ = file_get_contents($uri,false,$context); if ($this->content_ && $this->content_ != '') { $this->_init_html(); } $this->head_content_ .= << HTML ; } function content_head() { print $this->head_content_; } function content() { if ($this->content_ && $this->content_ != '') { $this->_content_html(); } } function _init_html() { preg_match('@text/html; charset=([^\s"]+)@i',$this->content_,$charset); if (isset($charset[1])) { $this->head_content_ .= << HTML ; } else { $this->head_content_ .= << HTML ; } preg_match('@([^<]+)@i',$this->content_,$title); if (isset($title[1])) { $this->head_content_ .= <<Boost C++ Libraries - ${title[1]} HTML ; } else { $this->head_content_ .= <<Boost C++ Libraries - Wiki HTML ; } } function _content_html() { $text = $this->content_; $text = preg_replace( '@href="?http://www.boost.org/?([^"\s]*)"?@i', 'href="/${1}"', $text ); $text = preg_replace( '@href="?(?:\.\./)+people/(.*\.htm)"?@i', 'href="/users/people/${1}l"', $text ); $text = preg_replace( '@href="?(?:\.\./)+(LICENSE_.*\.txt)"?@i', 'href="/${1}"', $text ); $text = preg_replace( '@@i',$text,$body_begin,PREG_OFFSET_CAPTURE); preg_match('@@i',$text,$body_end,PREG_OFFSET_CAPTURE); break; case 'post': preg_match('@
@i',$text,$body_begin,PREG_OFFSET_CAPTURE); preg_match('@@i',$text,$body_end,PREG_OFFSET_CAPTURE); break; default: preg_match('@
@i',$text,$body_begin,PREG_OFFSET_CAPTURE); preg_match('@
]*>@i',$text,$body_end,PREG_OFFSET_CAPTURE); break; } if (!isset($body_begin[0])) { return; } else if (!isset($body_end[0])) { $text = substr($text, $body_begin[0][1]+strlen($body_begin[0][0])); } else { $text = substr($text, $body_begin[0][1]+strlen($body_begin[0][0]), $body_end[0][1]-($body_begin[0][1]+strlen($body_begin[0][0])) ); } $text = preg_replace( '@<[/]?(font|hr)[^>]*>@i', '', $text ); $text = preg_replace( '@[\s]+(border|cellpadding|cellspacing|width|height|valign|align|frame|rules|naturalsizeflag|background|wrap)=[^\s>]+@i', '', $text ); $edit_html = <<
HTML; switch (isset($_REQUEST["action"]) ? $_REQUEST["action"] : 'display') { case 'edit': $text = preg_replace( '@
@i', '', $text ); $text .= $edit_html; break; case 'post': $text = preg_replace( '@@i', '', $text ); $text = preg_replace( '@

Preview only, not yet saved

([^\r\n]*[\r\n]*)*@i', '', $text ); $text = preg_replace( '@([^\r\n]*[\r\n]*){3}@i', $edit_html . <<

Preview only, not yet saved

HTML ,$text ); break; default: break; } print $text; } } ?>