function gen_page_list($parent) { global $database, $admin, $list, $page_titles; $get_pages = $database->query("SELECT * FROM `" . TABLE_PREFIX . "pages` WHERE `parent`= '" . $parent . "' order by `position`"); while (!false == ($page = $get_pages->fetchRow())) { if (method_exists($admin, 'page_is_visible') && !$admin->page_is_visible($page)) { continue; } $title = str_replace(array("\"", "'"), array(""e;", "\\'"), $page['menu_title']); // Add leading -'s so we can tell what level a page is at $leading_dashes = ''; for ($i = 0; $i < $page['level']; $i++) { $leading_dashes .= '- '; } $list .= "[ \"" . $leading_dashes . " " . $title . "\",'[wblink" . $page['page_id'] . "]'],"; $page_titles .= " wblink_titles['[wblink" . $page['page_id'] . "]']='" . $title . "';"; gen_page_list($page['page_id']); } }
function genMuitiPageFile($mp, $spos, $html, $doc_filename, $doc_url) { if($mp[method] == 1) { $page_num = count($spos); for($j=0; $j<$page_num; $j++) { $page_list = gen_page_list($doc_url, $j+1, $page_num); $content = $spos[$j] . $page_list; $rep1 = sprintf('${%s}', $mp[cname]); $multi_html = $html; $multi_html = str_replace($rep1, $content, $multi_html); $pos = strrpos($doc_filename, "."); if($pos) { $pre_path = substr($doc_filename, 0, $pos); $post_path = substr($doc_filename, $pos); } else { $pre_path = $doc_filename; $post_path = ""; } $multi_doc_filename = $doc_filename; if($j>0) { $multi_doc_filename = sprintf("%s_%d%s", $pre_path, $j+1, $post_path); } printf("%s<br>\n", $multi_doc_filename); //printf("%s<br>\n", $page_list); $ret=writeFile($multi_doc_filename, $multi_html); if($ret == 0) { printf("%s", $error_message); } } } else if($mp[method] == 2 && $spos != "") { $j = 0; foreach($spos as $sp) { $content = substr($mp[data], $sp[begin], $sp[end] -$sp[begin] +1); $page_num = count($spos); $page_list = gen_page_list($doc_url, $j+1, $page_num); $content .= $page_list; $rep1 = sprintf('${%s}', $mp[cname]); $multi_html = $html; $multi_html = str_replace($rep1, $content, $multi_html); $pos = strrpos($doc_filename, "."); if($pos) { $pre_path = substr($doc_filename, 0, $pos); $post_path = substr($doc_filename, $pos); } else { $pre_path = $doc_filename; $post_path = ""; } $multi_doc_filename = $doc_filename; if($j>0) { $multi_doc_filename = sprintf("%s_%d%s", $pre_path, $j+1, $post_path); } printf("%s<br>\n", $multi_doc_filename); //printf("%s<br>\n", $page_list); $ret=writeFile($multi_doc_filename, $multi_html); if($ret == 0) { printf("%s", $error_message); } $j++; } } else { $rep1 = sprintf('${%s}', $mp[cname]); $html = str_replace($rep1, $mp[data], $html); writeFile($doc_filename, $html, 0); } }