X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fspecials%2FSpecialFileDuplicateSearch.php;h=bb57ee055a554ec603ece7f521fa1d991e62265a;hb=7b0d1e1590f87871cb25441e4d20b7c5ae80813e;hp=4c0c75fbe220060e9d01b8b3f2cb9af0a4f63a43;hpb=c175b53c0e4bf06a00345d15cd370258f41ba865;p=lhc%2Fweb%2Fwiklou.git
diff --git a/includes/specials/SpecialFileDuplicateSearch.php b/includes/specials/SpecialFileDuplicateSearch.php
index 4c0c75fbe2..bb57ee055a 100644
--- a/includes/specials/SpecialFileDuplicateSearch.php
+++ b/includes/specials/SpecialFileDuplicateSearch.php
@@ -151,6 +151,7 @@ class FileDuplicateSearchPage extends QueryPage {
if ( $img ) {
$thumb = $img->transform( array( 'width' => 120, 'height' => 120 ) );
if ( $thumb ) {
+ $out->addModuleStyles( 'mediawiki.special' );
$out->addHTML( '
' .
$thumb->toHtml( array( 'desc-link' => false ) ) . '
' .
$this->msg( 'fileduplicatesearch-info' )->numParams(
@@ -231,6 +232,30 @@ class FileDuplicateSearchPage extends QueryPage {
return "$plink . . $user . . $time";
}
+ /**
+ * 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->getNamespace() !== NS_FILE ) {
+ // No prefix suggestion outside of file namespace
+ return array();
+ }
+ // Autocomplete subpage the same as a normal search, but just for files
+ $prefixSearcher = new TitlePrefixSearch;
+ $result = $prefixSearcher->search( $search, $limit, array( NS_FILE ), $offset );
+
+ return array_map( function ( Title $t ) {
+ // Remove namespace in search suggestion
+ return $t->getText();
+ }, $result );
+ }
+
protected function getGroupName() {
return 'media';
}