function ouwiki_tree_index($pageid, &$index, $subwiki, $cm) { $thispage = $index[$pageid]; $output = '<li>' . ouwiki_display_page_in_index($thispage, $subwiki, $cm); if (count($thispage->children) > 0) { $output .= '<ul>'; foreach ($thispage->children as $childid) { $output .= ouwiki_tree_index($childid, $index, $subwiki, $cm); } $output .= '</ul>'; } $output .= '</li>'; return $output; }
} else { $orphans = true; } } print '</ul>'; } } if ($orphans) { print '<h2 class="ouw_orphans">' . get_string('orphanpages', 'ouwiki') . '</h2>'; print '<ul class="ouw_index">'; foreach ($index as $indexitem) { if (count($indexitem->linksfrom) == 0 && $indexitem->title !== '') { if ($treemode) { $orphanindex = ouwiki_get_sub_tree_from_index($indexitem->pageid, $index); ouwiki_build_tree($orphanindex); print ouwiki_tree_index($func, $indexitem->pageid, $orphanindex, $subwiki, $cm); } else { print '<li>' . ouwiki_display_wikiindex_page_in_index($indexitem, $subwiki, $cm) . '</li>'; } } } print '</ul>'; } $missing = ouwiki_get_subwiki_missingpages($subwiki->id); if (count($missing) > 0) { print '<div class="ouw_missingpages"><h2>' . get_string('missingpages', 'ouwiki') . '</h2>'; print '<p>' . get_string(count($missing) > 1 ? 'advice_missingpages' : 'advice_missingpage', 'ouwiki') . '</p>'; print '<ul>'; $first = true; foreach ($missing as $title => $from) { print '<li>';
ouwiki_get_wikiinfo($selectedact, $selectedsubwiki, $selectedouwiki, $importedfromcourse); echo html_writer::tag('p', get_string('import_selectwiki', 'ouwiki', $selectedact->get_formatted_name())); // Build page selector. $pages = ''; $index = ouwiki_get_subwiki_index($selectedsubwiki->id); ouwiki_build_tree($index); // Print out in hierarchical form... $pages .= html_writer::start_tag('ul', array('class' => 'ouw_indextree')); $pages .= ouwiki_tree_index('ouwiki_display_wikiindex_page_in_index', reset($index)->pageid, $index, $selectedsubwiki, $selectedact, null, true); $pages .= html_writer::end_tag('ul'); $orphans = ''; foreach ($index as $indexitem) { if (count($indexitem->linksfrom) == 0 && $indexitem->title !== '') { $orphanindex = ouwiki_get_sub_tree_from_index($indexitem->pageid, $index); ouwiki_build_tree($orphanindex); $orphans .= ouwiki_tree_index('ouwiki_display_wikiindex_page_in_index', $indexitem->pageid, $orphanindex, $selectedsubwiki, $selectedact, null, true); } } if (!empty($orphans)) { $pages .= $OUTPUT->heading(get_string('orphanpages', 'ouwiki'), 3); $pages .= html_writer::start_tag('ul', array('class' => 'ouw_indextree')); $pages .= $orphans; $pages .= html_writer::end_tag('ul'); } $PAGE->requires->yui_module('moodle-mod_ouwiki-pageselector', 'M.mod_ouwiki.pageselector.init', array($pagelist)); // Prepare form parameters. $wikiinfo = array('importid' => $selectedact->id, 'subwikiid' => $selectedsubwiki->id); $pageparams['step']++; $pageparams['courseid'] = $importedfromcourse->id; $form = new mod_ouwiki_import_pageselect_form(null, array('params' => array_merge($pageparams, $wikiinfo), 'pages' => $pages)); $form->display();
// If tree view specified. if ($treemode && $format == OUWIKI_FORMAT_HTML) { ouwiki_build_tree($index); // Print out in hierarchical form... print '<ul class="ouw_indextree">'; $functionname = 'ouwiki_display_entirewiki_page_in_index'; print ouwiki_tree_index($functionname, reset($index)->pageid, $index, $subwiki, $cm, $context); print '</ul>'; if ($orphans) { print '<h2 class="ouw_orphans">' . get_string('orphanpages', 'ouwiki') . '</h2>'; print '<ul class="ouw_indextree">'; foreach ($index as $indexitem) { if (count($indexitem->linksfrom) == 0 && $indexitem->title !== '') { $orphanindex = ouwiki_get_sub_tree_from_index($indexitem->pageid, $index); ouwiki_build_tree($orphanindex); print ouwiki_tree_index($functionname, $indexitem->pageid, $orphanindex, $subwiki, $cm, $context); } } print '</ul>'; } } else { foreach ($index as $pageinfo) { if (count($pageinfo->linksfrom) != 0 || $pageinfo->title === '') { // Get page details. $pageversion = ouwiki_get_current_page($subwiki, $pageinfo->title); // If the page hasn't really been created yet, skip it. if (is_null($pageversion->xhtml)) { continue; } $markup .= get_online_display_content($format, $pageversion, $context, $subwiki, $cm, $index, $fs, $files); if ($first) {
public function prepare_package() { global $CFG; $pagehtml = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" ' . '"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' . html_writer::start_tag('html', array('xmlns' => 'http://www.w3.org/1999/xhtml')); $content = html_writer::empty_tag('meta', array('http-equiv' => 'Content-Type', 'content' => 'text/html; charset=utf-8')) . html_writer::tag('title', get_string('export', 'forumngfeature_export')); if ($this->tree) { $content .= $this->prepare_tree_inline_styles(); } $pagehtml .= html_writer::tag('head', $content); $pagehtml .= html_writer::start_tag('body') . "\n"; $pagehtml .= html_writer::tag('h1', s($this->ouwiki->name)); if ($this->tree) { $orphans = false; $pagehtml .= '</ul>'; foreach ($this->pageversions as $pageversion) { if (count($pageversion->linksfrom) == 0 && $pageversion->title !== '') { $orphans = true; } else { $pageversion->xhtml = $this->prepare_page($pageversion); } } $pagehtml .= '<ul class="ouw_indextree">'; $func = 'ouwiki_display_portfolio_page_in_index'; $pagehtml .= ouwiki_tree_index($func, reset($this->pageversions)->pageid, $this->pageversions, $this->subwiki, $this->cm); $pagehtml .= '</ul>'; if ($orphans) { $pagehtml .= '<h2 class="ouw_orphans">' . get_string('orphanpages', 'ouwiki') . '</h2>'; $pagehtml .= '<ul class="ouw_indextree">'; foreach ($this->pageversions as $pageversion) { if (count($pageversion->linksfrom) == 0 && $pageversion->title !== '') { $pageversion->xhtml = $this->prepare_page($pageversion); $orphanindex = ouwiki_get_sub_tree_from_index($pageversion->pageid, $this->pageversions); ouwiki_build_tree($orphanindex); $pagehtml .= ouwiki_tree_index($func, $pageversion->pageid, $orphanindex, $this->subwiki, $this->cm); } } $pagehtml .= '</ul>'; } } else { $orphans = false; foreach ($this->pageversions as $pageversion) { if (count($pageversion->linksfrom) == 0 && $pageversion->title !== '') { $orphans = true; } else { $pagehtml .= $this->prepare_page($pageversion); } } if ($orphans) { $pagehtml .= '<h2 class="ouw_orphans">' . get_string('orphanpages', 'ouwiki') . '</h2>'; foreach ($this->pageversions as $pageversion) { if (count($pageversion->linksfrom) == 0 && $pageversion->title !== '') { $pagehtml .= $this->prepare_page($pageversion); } } } } $pagehtml .= html_writer::end_tag('body') . html_writer::end_tag('html'); $content = $pagehtml; $name = $this->make_filename_safe($this->ouwiki->name) . '.html'; $manifest = $this->exporter->get('format') instanceof PORTFOLIO_FORMAT_RICH; $this->copy_files($this->multifiles); $this->get('exporter')->write_new_file($content, $name, $manifest); }