+ $out = "<div class='namespaceselector'><form method='get' action='{$wgScript}'>";
+ $out .= '<input type="hidden" name="title" value="'.$t->getPrefixedText().'" />';
+ $out .= "
+<table id='nsselect' class='allpages'>
+ <tr>
+ <td align='right'>" . wfMsg('allpagesfrom') . "</td>
+ <td align='left'><label for='nsfrom'>$frombox</label></td>
+ </tr>
+ <tr>
+ <td align='right'><label for='nsselectbox'>" . wfMsg('namespace') . "</label></td>
+ <td align='left'>
+ $namespaceselect $submitbutton $invertbox
+ <label for='nsinvert'>" . wfMsg('invert') . "</label>
+ </td>
+ </tr>
+</table>
+";
+ $out .= '</form></div>';
+ return $out;
+}
+
+/**
+ * @param integer $namespace (default NS_MAIN)
+ * @param bool $invert true if we want the namespaces inverted (default false)
+ */
+function indexShowToplevel ( $namespace = NS_MAIN, $invert = false, $including = false ) {
+ global $wgOut, $indexMaxperpage, $toplevelMaxperpage, $wgContLang, $wgRequest, $wgUser;
+ $sk = $wgUser->getSkin();
+ $fname = "indexShowToplevel";
+
+ # TODO: Either make this *much* faster or cache the title index points
+ # in the querycache table.
+
+ $dbr =& wfGetDB( DB_SLAVE );
+ $page = $dbr->tableName( 'page' );
+ $fromwhere = "FROM $page WHERE page_namespace" .
+ ($invert ? '!' : '') . "=$namespace";
+ $order_arr = array ( 'ORDER BY' => 'page_title' );
+ $order_str = 'ORDER BY page_title';