מדיה ויקי:Gadget-Dwim.js
קפיצה לניווט
קפיצה לחיפוש
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload), או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh), או ללחוץ על צירוף המקשים Ctrl-F5.
- אופרה: ללחוץ על Ctrl-F5.
if ( mw.user.options.get( 'skin' ) === 'vector' ) { // Load the search suggestion logic when focus the search box. function dwimEventListener( e ) { if ( e.target.id === 'searchInput' || /(^|\s)mw-searchInput($|\s)/.test( e.target.className ) ) { enableDwim(); document.removeEventListener( 'focusin', dwimEventListener ); } } document.addEventListener( 'focusin', dwimEventListener ); // Load the search suggestion logic when the search box is already focused // because the user started typing before the JavaScript is loaded. if ( document.activeElement && ( document.activeElement.id === 'searchInput' || /(^|\s)mw-searchInput($|\s)/.test( document.activeElement.className ) ) ) { enableDwim(); } function enableDwimModernVector() { // @todo } function enableDwim() { 'use strict'; if(mw.loader.getState('mediawiki.searchSuggest') === 'registered') { // Vector is using the new version of search. Exit early to avoid running incompatible code. enableDwimModernVector(); return; } setTimeout( function() { var hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ", hebeng = function ( str ) { return ( str || '' ).replace( /./g, function( c ) { var ic = hes.indexOf( c.toLowerCase() ); return ic + 1 ? hes.charAt( ( ic + 29 ) % 58 ) : c; } ); }; var $searchBoxes = $( '#searchInput, #searchInput2, #powerSearchText, #searchText' ); $searchBoxes.suggestions( { fetch: function( query ) { var $this = $( this ), apiUrl = mw.util.wikiScript( 'api' ); if ( query.length !== 0 ) { var params = { action: 'opensearch', search: query, redirects: 'return', suggest: true }; $.ajax( { data: params, url: apiUrl, dataType: 'json', success: function( data ) { if ( $.isArray( data ) && 1 in data ) { var orig = data[1]; $this.suggestions( 'suggestions', orig ); if ( data[1].length < 10 ) { params.search = hebeng( query ); if ( params.search === query ) { return; } params.limit = 10 - data[1].length; $.ajax( { data: params, url: apiUrl, dataType: 'json', success: function( data ) { if ( $.isArray( data ) && 1 in data ) { $this.suggestions( 'suggestions', orig.concat( data[1] ) ); } } } ); } } } } ); } } } ); }, 1200 ); // setTimeout } } // skin === vector