throw new RuntimeException( "Form submission was not POSTed" );
}
- $this->title = Title::newFromText( $data['pagetitle' ] );
+ $this->title = Title::newFromText( $data['pagetitle'] );
$user = $this->getUser();
// Check permissions and make sure the user has permission to edit the specific page
$errors = $this->title->getUserPermissionsErrors( 'editcontentmodel', $user );
$out->setPageTitle( $this->msg( 'changecontentmodel-success-title' ) );
$out->addWikiMsg( 'changecontentmodel-success-text', $this->title );
}
+
+ /**
+ * Return an array of subpages beginning with $search that this special page will accept.
+ *
+ * @param string $search Prefix to search for
+ * @param int $limit Maximum number of results to return (usually 10)
+ * @param int $offset Number of results to skip (usually 0)
+ * @return string[] Matching subpages
+ */
+ public function prefixSearchSubpages( $search, $limit, $offset ) {
+ $title = Title::newFromText( $search );
+ if ( !$title || !$title->canExist() ) {
+ // No prefix suggestion in special and media namespace
+ return array();
+ }
+ // Autocomplete subpage the same as a normal search
+ $prefixSearcher = new StringPrefixSearch;
+ $result = $prefixSearcher->search( $search, $limit, array(), $offset );
+ return $result;
+ }
+
+ protected function getGroupName() {
+ return 'pagetools';
+ }
}