From: Victor Vasiliev Date: Sun, 16 Dec 2007 15:46:27 +0000 (+0000) Subject: * Introduce new user preference: ajaxsearch X-Git-Tag: 1.31.0-rc.0~50396 X-Git-Url: http://git.cyclocoop.org/%24image?a=commitdiff_plain;h=2b41e5bc426205fcad7d9780596b519b614546d1;p=lhc%2Fweb%2Fwiklou.git * Introduce new user preference: ajaxsearch * Drop strange status bar message --- diff --git a/includes/OutputPage.php b/includes/OutputPage.php index f1738bb9a3..de6bb5b402 100644 --- a/includes/OutputPage.php +++ b/includes/OutputPage.php @@ -599,7 +599,7 @@ class OutputPage { wfRunHooks( 'AjaxAddScript', array( &$this ) ); - if( $wgAjaxSearch ) { + if( $wgAjaxSearch && $wgUser->getBoolOption( 'ajaxsearch' ) ) { $this->addScript( "\n" ); $this->addScript( "\n" ); } diff --git a/includes/SpecialPreferences.php b/includes/SpecialPreferences.php index 0bc362a8fd..9fecba1082 100644 --- a/includes/SpecialPreferences.php +++ b/includes/SpecialPreferences.php @@ -24,7 +24,7 @@ class PreferencesForm { var $mRows, $mCols, $mSkin, $mMath, $mDate, $mUserEmail, $mEmailFlag, $mNick; var $mUserLanguage, $mUserVariant; var $mSearch, $mRecent, $mRecentDays, $mHourDiff, $mSearchLines, $mSearchChars, $mAction; - var $mReset, $mPosted, $mToggles, $mSearchNs, $mRealName, $mImageSize; + var $mReset, $mPosted, $mToggles, $mUseAjaxSearch, $mSearchNs, $mRealName, $mImageSize; var $mUnderline, $mWatchlistEdits; /** @@ -65,6 +65,7 @@ class PreferencesForm { $this->mSuccess = $request->getCheck( 'success' ); $this->mWatchlistDays = $request->getVal( 'wpWatchlistDays' ); $this->mWatchlistEdits = $request->getVal( 'wpWatchlistEdits' ); + $this->mUseAjaxSearch = $request->getCheck( 'wpUseAjaxSearch' ); $this->mSaveprefs = $request->getCheck( 'wpSaveprefs' ) && $this->mPosted && @@ -285,6 +286,7 @@ class PreferencesForm { $wgUser->setOption( 'thumbsize', $this->mThumbSize ); $wgUser->setOption( 'underline', $this->validateInt($this->mUnderline, 0, 2) ); $wgUser->setOption( 'watchlistdays', $this->validateFloat( $this->mWatchlistDays, 0, 7 ) ); + $wgUser->setOption( 'ajaxsearch', $this->mUseAjaxSearch ); # Set search namespace options foreach( $this->mSearchNs as $i => $value ) { @@ -395,6 +397,7 @@ class PreferencesForm { $this->mWatchlistEdits = $wgUser->getOption( 'wllimit' ); $this->mUnderline = $wgUser->getOption( 'underline' ); $this->mWatchlistDays = $wgUser->getOption( 'watchlistdays' ); + $this->mUseAjaxSearch = $wgUser->getBoolOption( 'ajaxsearch' ); $togs = User::getToggles(); foreach ( $togs as $tname ) { @@ -512,7 +515,7 @@ class PreferencesForm { global $wgRCShowWatchingUsers, $wgEnotifRevealEditorAddress; global $wgEnableEmail, $wgEnableUserEmail, $wgEmailAuthentication; global $wgContLanguageCode, $wgDefaultSkin, $wgSkipSkins, $wgAuth; - global $wgEmailConfirmToEdit; + global $wgEmailConfirmToEdit, $wgAjaxSearch; $wgOut->setPageTitle( wfMsg( 'preferences' ) ); $wgOut->setArticleRelated( false ); @@ -970,7 +973,13 @@ class PreferencesForm { $wgOut->addHtml( '' ); # Search + $ajaxsearch = $wgAjaxSearch ? + $this->addRow( + wfLabel( wfMsg( 'useajaxsearch' ), 'wpUseAjaxSearch' ), + wfCheck( 'wpUseAjaxSearch', $this->mUseAjaxSearch, array( 'id' => 'wpUseAjaxSearch' ) ) + ) : ''; $wgOut->addHTML( '
' . wfMsg( 'searchresultshead' ) . '' . + $ajaxsearch . $this->addRow( wfLabel( wfMsg( 'resultsperpage' ), 'wpSearch' ), wfInput( 'wpSearch', 4, $this->mSearch, array( 'id' => 'wpSearch' ) ) diff --git a/languages/messages/MessagesEn.php b/languages/messages/MessagesEn.php index 54dfe1856a..635fcdebfe 100644 --- a/languages/messages/MessagesEn.php +++ b/languages/messages/MessagesEn.php @@ -2965,6 +2965,7 @@ $1', 'searchnamed' => "Search for pages named ''$1''.", 'articletitles' => "Pages starting with ''$1''", 'hideresults' => 'Hide results', +'useajaxsearch' => 'Use AJAX search', # Separators for various lists 'catseparator' => '|', # don't translate or duplicate this message to other languages diff --git a/languages/messages/MessagesRu.php b/languages/messages/MessagesRu.php index ca5cfc2ec8..5edfb18653 100644 --- a/languages/messages/MessagesRu.php +++ b/languages/messages/MessagesRu.php @@ -2358,6 +2358,7 @@ $1', 'searchnamed' => 'Поиск статей с названием $1.', 'articletitles' => 'Статьи, начинающиеся с «$1»', 'hideresults' => 'Скрыть результаты', +'useajaxsearch' => 'Использовать AJAX-поиск', # Multipage image navigation 'imgmultipageprev' => '← предыдущая страница', diff --git a/maintenance/language/messages.inc b/maintenance/language/messages.inc index d2d6800a78..8948186fd3 100644 --- a/maintenance/language/messages.inc +++ b/maintenance/language/messages.inc @@ -2198,6 +2198,7 @@ $wgMessageStructure = array( 'searchnamed', 'articletitles', 'hideresults', + 'useajaxsearch', ), 'separators' => array( 'catseparator', diff --git a/skins/common/ajaxsearch.js b/skins/common/ajaxsearch.js index 1e972236ea..b9fb56f391 100644 --- a/skins/common/ajaxsearch.js +++ b/skins/common/ajaxsearch.js @@ -23,7 +23,6 @@ function Searching_Go() function Search_Typing() { started=true; typing=true; - window.status = "Waiting until you're done typing..."; setTimeout("Search_doneTyping()", 500); // I believe these are needed by IE for when the users press return?