techtonik Tue Nov 2 14:18:33 2004 EDT
Modified files: /phpdoc/htmlhelp filter_files.php Log: handle optional lang attribute in divs more error reporting http://cvs.php.net/diff.php/phpdoc/htmlhelp/filter_files.php?r1=1.7&r2=1.8&ty=u Index: phpdoc/htmlhelp/filter_files.php diff -u phpdoc/htmlhelp/filter_files.php:1.7 phpdoc/htmlhelp/filter_files.php:1.8 --- phpdoc/htmlhelp/filter_files.php:1.7 Sat Oct 30 08:55:21 2004 +++ phpdoc/htmlhelp/filter_files.php Tue Nov 2 14:18:33 2004 @@ -106,7 +106,7 @@ // Replace title with simple <title> content [shorter, without tags] $content = preg_replace( - '!<div><h(\d)[^>]*>.+</h\1></div>!Us', + '!<h(\d)[^>]*>.+</h\1>!Us', "<h1 class=\"masterheader\"><span id=\"pageTitle\">$page_title</span></h1>", $content, 1 @@ -116,8 +116,12 @@ // Add divisions for skin support // Make the document invisible by default, adding a new first div + // with id="pageContent" and opening div with id="pageHeaders" $bodystart_regex = '!(<div class="(\w+)"( lang=\"\w+\")?>)!Us'; - if (preg_match($bodystart_regex, $content)) { + if (!preg_match($bodystart_regex, $content)) { + echo "Can't add first div. No match in $filename\n"; + + } else { $content = preg_replace( $bodystart_regex, '<div id="pageContent" style="display:none;">\1<div id="pageHeaders">', @@ -131,18 +135,17 @@ '</div></body></html>', $content ); - } else { - echo "Can't add first div. No match.\n"; } - // For headers we have several possibilities + // For headers we have several possibilities to close div id="pageHeaders" + // and open div with id="pageText" if (strpos($content, '<div class="refnamediv">') !== FALSE) { // A function page if (!strpos($content, "refsynopsisdiv")) { $content = str_replace( - '</h2></div><div class="refsect1">', - '</h2></div></div><div id="pageText"><div class="refsect1">', + '</h2></div><div class="refsect1"', + '</h2></div></div><div id="pageText"><div class="refsect1"', $content ); } @@ -150,27 +153,16 @@ // The COM or VARIANT classes page (which contain refsynopsisdiv) else { $content = str_replace( - '<div class="refsynopsisdiv">', - '</div><div id="pageText"><div class="refsynopsisdiv">', + '<div class="refsynopsisdiv"', + '</div><div id="pageText"><div class="refsynopsisdiv"', $content ); } } - // Normal page, and not an index - elseif ($filename != $INDEX_FILE) { - - $content = preg_replace( - '!</h1></div>(<p>)?</div>!', - '</h1></div>\\1</div></div><div id="pageText">', - $content - ); - - } - // The index page - else { + elseif ($filename == $INDEX_FILE) { // Delete titlepage div and // add pageHeader end and pageText start @@ -186,6 +178,23 @@ ); } + // Normal page + else { + + $headend_regex = '!</h1></div>!'; + if (!preg_match($headend_regex, $content)) { + echo "Impossible to close pageHeaders div. No match in $filename\n"; + + } else { + $content = preg_replace( + $headend_regex, + '</h1></div></div><div id="pageText">', + $content + ); + } + + } + // End that pageText div before the user notes $content = str_replace( '<a name="_user_notes">',