Not: Yayımladıktan sonra değişiklikleri görmeniz için tarayıcınızın önbelleğini temizlemeniz gerekebilir.
- Firefox / Safari: Shift tuşuna basılıyken Yeniden Yükle'ye tıklayın ya da Ctrl-F5 ya da Ctrl-R tıklayın (Mac için ⌘-R)
- Google Chrome: Ctrl-Shift-R'ye basın. (Mac için ⌘-Shift-R)
- Edge: Ctrl basılıyken Yenile'ye tıklayın ya da Ctrl-F5'e basın.
/** * Add dismiss buttons to watchlist-message, then unhide it * Allows multiple dismiss buttons on [[MediaWiki:Watchlist-messages]] with bumpable cookie IDs (now used for LS). * Note: HTML is backwards compatible with old version, new version ignores old syntax, except for dismissed IDs. * @author: [[:en:User:Ruud Koot]] * @author: [[:en:User:MZMcBride]] */ /*jslint white: true, regexp: true */ /*global jQuery, mediaWiki */ ( function ( mw, $ ) { 'use strict'; var storageKey = 'hidewatchlistmessages'; function getDismissedNotices () { var hiddenNotices = mw.storage.get( storageKey ) || mw.storage.session.get( storageKey ); try { return JSON.parse( hiddenNotices ) || []; } catch (e) { return []; } } function saveDismissedNotices ( notices ) { notices = JSON.stringify( notices ); mw.storage.set( storageKey, notices ) || mw.storage.session.set( storageKey, notices ); } // Remove ids which are no longer defined function expungeOldNotices ( currentList ) { var dismissedNotices = getDismissedNotices(), originalLength = dismissedNotices.length; for ( var i = dismissedNotices.length - 1; i >= 0; i--) { if( !( dismissedNotices[i] in currentList ) ) { dismissedNotices.splice( i, 0 ); } } if( originalLength !== dismissedNotices.length ) { saveDismissedNotices( dismissedNotices ); } } function dismissWatchlistMessage( event ) { var $message = $( this ).closest( '.watchlist-message' ); var cid = $( this ).data( 'watchlistMessage' ).cid; var notices = getDismissedNotices(); $message.hide(); notices.push( cid ); saveDismissedNotices( notices ); event.preventDefault(); } function addDismissButton() { var watchItems = $( 'div.watchlist-message' ); var watchItemIds = []; var dismissedNotices = getDismissedNotices(); var dismissedNoticesLength = dismissedNotices.length; if ( watchItems.length === 0) { watchItems = $( 'li.watchlist-message' ); } if ( watchItems.length === 0) { return; } for ( var i = 0; i < watchItems.length; i++ ) { var watchlistCookieID = parseInt( watchItems[i].className.replace( /.*cookie\-ID\_(\d*).*/ig, '$1' ) ); if ( isNaN( watchlistCookieID ) ) { continue; } watchItemIds.push( watchlistCookieID ); if ( dismissedNotices.indexOf( watchlistCookieID ) !== -1 ) { watchItems[i].style.display = 'none'; continue; } var Button = document.createElement( 'span' ); var ButtonLink = document.createElement( 'a' ); var ButtonText = document.createTextNode( 'kapat' ); ButtonLink.className = 'dismissButton'; ButtonLink.setAttribute( 'href', '#' ); ButtonLink.setAttribute( 'title', 'Bu mesajı gizle' ); ButtonLink.appendChild( ButtonText ); $( ButtonLink ).data( 'watchlistMessage', { index: i, cid: watchlistCookieID } ); $( ButtonLink ).click( dismissWatchlistMessage ); Button.appendChild( document.createTextNode(' [' ) ); Button.appendChild( ButtonLink ); Button.appendChild( document.createTextNode( ']' ) ); watchItems[i].appendChild( Button ); } expungeOldNotices( watchItemIds ); $( '#watchlist-message' ).show(); } $( addDismissButton ); }( mediaWiki, jQuery ) );