מדיה ויקי:Common.js: הבדלים בין גרסאות בדף
לפי בקשה |
אין תקציר עריכה |
||
| (61 גרסאות ביניים של 10 משתמשים אינן מוצגות) | |||
| שורה 7: | שורה 7: | ||
function importUserScript() { | function importUserScript() { | ||
'use strict'; | 'use strict'; | ||
var args = arguments; | var args = arguments; | ||
mw.loader.using('mediawiki.util', function() { | mw.loader.using( 'mediawiki.util', function () { | ||
for (var arg = 0; arg < args.length; arg++) { | for ( var arg = 0; arg < args.length; arg++ ) { | ||
try { | try { | ||
importScript( | importScript( 'MediaWiki:סקריפטים/' + args[arg] + '.js' ); | ||
} | |||
catch( e ) { | |||
} | } | ||
} | } | ||
}); | } ); | ||
} | } | ||
/* פונקציה הטוענת פונקציות בעת עליית הדף */ | /* פונקציה הטוענת פונקציות בעת עליית הדף */ | ||
function addLoadEvent() { | function addLoadEvent() { | ||
// Deprecated | |||
} | } | ||
mw.loader.using( 'mediawiki.util', function () { | |||
mw.loader.using( 'mediawiki.util', function() { | |||
'use strict'; | 'use strict'; | ||
importScript( | importScript( 'MediaWiki:Functions.js' ); // פונקציות המצויות בשימוש בסקריפטים שונים | ||
if ( $.inArray( mw.config.get( 'wgPageName' ), [ | if ( $.inArray( mw.config.get( 'wgPageName' ), [ | ||
importScript( | 'עמוד_ראשי', | ||
'שיחה:עמוד_ראשי' | |||
] ) + 1 ) { | |||
importScript( 'MediaWiki:Mainpage.js' ); // שיפורים שונים בעמוד הראשי | |||
if ( mw.config.get( 'wgNamespaceNumber' ) === 0 ) { | if ( mw.config.get( 'wgNamespaceNumber' ) === 0 ) { | ||
importScript( | importScript( 'MediaWiki:Portals.js' ); // פורטלים מתחלפים בעמוד הראשי | ||
} | } | ||
} | |||
if ( mw.config.get( 'wgNamespaceNumber' ) === 6 ) { | |||
mw.loader.load( 'ext.gadget.ime' ); | |||
} | } | ||
// סקריפטים עבור אנונימיים ו/או חדשיםs | |||
if ( $.inArray( 'autoconfirmed', mw.config.get( 'wgUserGroups' ) ) === -1 ) { | |||
importScript( 'MediaWiki:Autopurge.js' ); // הוספת אפשרות לרענון אוטומטי על ידי אנונימיים, ללא מעבר בטופס | |||
importScript( 'MediaWiki:Navtip.js' ); // הוספת התיבה "רוצה טיפ?" בצד למשתמשים אנונימיים | |||
// סקריפטים עבור אנונימיים ו/או | |||
if ( $.inArray( | |||
importScript( | |||
importScript( | |||
} | } | ||
// סקריפטים לדפי עריכה | // סקריפטים לדפי עריכה | ||
if ( ($.inArray( mw.config.get( 'wgAction' ), [ | if ( ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) + 1 ) && | ||
importScript( | !$( '#wpTextbox1' ).prop( 'readonly' ) | ||
) { | |||
importScript( | importScript( 'MediaWiki:Templateslist.js' ); // הצגת רשימת תבניות | ||
importScript( | importScript( 'MediaWiki:Nosaving.js' ); // חיוב תצוגה מקדימה למשתמשים אנונימיים | ||
importScript( | importScript( 'MediaWiki:Edittools.js' ); // שיפור התווים המיוחדים שמתחת לדף העריכה | ||
importScript( 'MediaWiki:Ref2template.js' ); //ref סקריפט שמשנה את התנהגות כפתור "הערה": הוספת תבנית הערה. במקום להוסיף תג | |||
} | } | ||
// סקריפטים לעמודים ספציפיים | // סקריפטים לעמודים ספציפיים | ||
if( mw.config.get( 'wgCanonicalSpecialPageName' ) === | if( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Upload' ) { | ||
importScript( | importScript( 'MediaWiki:Licenses.js' ); // שיפורים ברשיונות ושינויים בדף ההעלאה | ||
} | } | ||
// הופעת [[תבנית:דיון חדש במזנון]] לפני יצירת פסקה חדשה במזנון | // הופעת [[תבנית:דיון חדש במזנון]] לפני יצירת פסקה חדשה במזנון | ||
if(mw.config.get('wgPageName') === 'ויקיפדיה:מזנון') { | if( mw.config.get( 'wgPageName' ) === 'ויקיפדיה:מזנון' ) { | ||
$(document).ready(function() { | $( document ).ready( function() { | ||
var $addSectionLink = $('#ca-addsection a'), | var $addSectionLink = $( '#ca-addsection a' ), | ||
currentHref = $addSectionLink.attr('href'); | currentHref = $addSectionLink.attr( 'href' ); | ||
$addSectionLink.attr('href', currentHref + '&editintro=תבנית:דיון_חדש_במזנון'); | $addSectionLink.attr( 'href', currentHref + '&editintro=תבנית:דיון_חדש_במזנון' ); | ||
}); | } ); | ||
} | } | ||
// link to sub pages | // link to sub pages | ||
if ( mw.config.get('wgNamespaceNumber') > 0 && mw.config.get('wgNamespaceNumber') != 6 && mw.config.get('wgNamespaceNumber') != 14 ) $ ( function(){ | if ( mw.config.get( 'wgNamespaceNumber' ) > 0 && | ||
mw.config.get('wgNamespaceNumber') != 6 && | |||
mw.config.get('wgNamespaceNumber') != 14 | |||
) { | |||
$ ( function() { | |||
var linkText = mw.config.get( 'wgUserLanguage' ) == 'he' ? 'דפי משנה' : 'Sub pages', | |||
linkTitle = mw.config.get( 'wgUserLanguage' ) == 'he' ? 'רשימת דפי המשנה של דף זה' : 'List of the sub pages of this page'; | |||
$( '#t-recentchangeslinked' ).after( $( '<li>' ).append( $( '<a>', { | |||
text: linkText, | |||
href: mw.util.getUrl( 'Special:PrefixIndex/' + mw.config.get( 'wgPageName' ) ), | |||
title: linkTitle | |||
} ) ) ); | |||
} ); | |||
} | |||
/** WikiMiniAtlas ******************************************************* | /** WikiMiniAtlas ******************************************************* | ||
* | * | ||
| שורה 107: | שורה 104: | ||
* Maintainers: [[User:Dschwen]] | * Maintainers: [[User:Dschwen]] | ||
*/ | */ | ||
( function () { | |||
if ( $( 'a.external.text[href*=geohack], div.kmldata' ).length ) { | |||
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript' ); | |||
} | |||
} )(); | |||
/* | /* | ||
| שורה 117: | שורה 114: | ||
* Originally created by [[:en:User:Cacycle]] | * Originally created by [[:en:User:Cacycle]] | ||
*/ | */ | ||
$(function () { | $( function () { | ||
if ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgUserName' )) { | if ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgUserName' ) ) { | ||
var pageName = mw.config.get( 'wgPageName' ); | |||
var slash = pageName.indexOf('/'); | var slash = pageName.indexOf( '/' ); | ||
var norm = pageName.substr(0, slash) + | var norm = pageName.substr( 0, slash ) + mw.config.get( 'wgPageName' ).substr( slash ).toLowerCase(); | ||
var test = 'משתמש:' + mw.config.get( 'wgUserName' ).replace(/ /g, '_') + '/skin.'; | var test = 'משתמש:' + mw.config.get( 'wgUserName' ).replace( / /g, '_' ) + '/skin.'; | ||
var ext = null; | var ext = null; | ||
if (norm === test + 'js') { | |||
if ( norm === test + 'js' ) { | |||
ext = 'js'; | ext = 'js'; | ||
} else if (norm === test + 'css') { | } else if (norm === test + 'css') { | ||
ext = 'css'; | ext = 'css'; | ||
} | } | ||
if (ext !== null) { | |||
window.location.href = window.location.href.replace(/\/skin.(css|js)/i, '/' + mw.config.get( 'skin' ) + '.' + ext); | if ( ext !== null ) { | ||
window.location.href = window.location.href.replace( | |||
/\/skin.(css|js)/i, | |||
'/' + mw.config.get( 'skin' ) + '.' + ext | |||
); | |||
} | } | ||
} | } | ||
// create an event when | // create an event when util.addPortletLink() is called, so scripts that manipulate menus ca readjust. | ||
var oldFunc = mw.util.addPortletLink; | var oldFunc = mw.util.addPortletLink; | ||
if (typeof oldFunc === 'function') { | if ( typeof oldFunc === 'function' ) { | ||
mw.util.addPortletLink = function() { | mw.util.addPortletLink = function () { | ||
var res = oldFunc.apply( this, arguments ); | var res = oldFunc.apply( this, arguments ); | ||
$( document ).trigger( 'new-portlet-link' ); | $( document ).trigger( 'new-portlet-link' ); | ||
return res; | return res; | ||
}; | }; | ||
} | } | ||
}); | } ); | ||
if ( $.inArray( mw.config.get( 'wgPageName' ), [ | if ( $.inArray( mw.config.get( 'wgPageName' ), [ | ||
importScript( | 'ויקיפדיה:בוקמרקלטים', | ||
'שיחת_ויקיפדיה:בוקמרקלטים' | |||
] ) + 1 ) { | |||
importScript( 'MediaWiki:bookmarkletsInit.js' ); // דף הבוקמרקלטים | |||
} | } | ||
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ) { | if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ) { | ||
importScript( | importScript( 'MediaWiki:SearchEngines.js' ); // בחירה במנועי חיפוש שונים | ||
importScript('Mediawiki:Gadget-advanceSearch.js' | importScript( 'Mediawiki:Gadget-advanceSearch.js' ); | ||
} | } | ||
/* | /* | ||
* Adds an automatic | * Adds an automatic '{{תב|מוגן}}' or '{{תב|מוגן חלקית}}' template when the page is protected. | ||
* You can use the {{תב|ללא הודעת הגנה אוטומטית}} to prevent the protection notice from being inserted. | * You can use the {{תב|ללא הודעת הגנה אוטומטית}} to prevent the protection notice from being inserted. | ||
* | * | ||
| שורה 168: | שורה 167: | ||
* | * | ||
*/ | */ | ||
$(function(){ | |||
var restrictionEdit = mw.config.get('wgRestrictionCreate') || mw.config.get('wgRestrictionEdit'); | |||
if( restrictionEdit && | |||
restrictionEdit.length > 0 && | |||
( | |||
restrictionEdit[0] === 'sysop' || | |||
restrictionEdit[0] === 'autoconfirmed' || | |||
restrictionEdit[0] === 'templateeditor' || | |||
restrictionEdit[0] === 'editautopatrolprotected' | |||
) && | |||
$( '#pl-noprotectionnotice, #pl-autoconfirmed, #pl-protected' ).length === 0 && | |||
( $.inArray( mw.config.get( 'wgAction' ), [ 'view', 'submit' ] ) + 1 ) | |||
) { | |||
var restrictionEditMapping = { | |||
'sysop': 'מוגן', | |||
}; | 'templateeditor': 'הגנת ממשק', | ||
'editautopatrolprotected': 'הגנה מוגברת', | |||
'autoconfirmed': 'מוגן חלקית' | |||
}; | |||
$.get( mw.util.wikiScript( 'api' ), { | |||
action: 'parse', | |||
format: 'json', | |||
text: '{{' + restrictionEditMapping[restrictionEdit[0]] + '}}', | |||
prop: 'text|indicators', | |||
title: mw.config.get('wgPageName'), | |||
contentmodel: 'wikitext' | |||
}, function( data ) { | |||
$( function () { | |||
$( '.printfooter' ).before( $( '<div>', { | |||
'class': 'plprotected', | |||
'html': data.parse.text['*'] | |||
} ) ); | |||
var newList = []; | |||
$.each( data.parse.indicators, function ( name, indicator ) { | |||
newList.push( | |||
$( '<div>' ) | |||
.addClass( 'mw-indicator' ) | |||
.attr( 'id', mw.util.escapeIdForAttribute( 'mw-indicator-' + indicator.name ) ) | |||
.html( indicator['*'] ) | |||
.get( 0 ), | |||
// Add a whitespace between the <div>s because | |||
// they get displayed with display: inline-block | |||
document.createTextNode( '\n' ) | |||
); | |||
} ); | |||
$( '.mw-indicators' ).append( newList ); | |||
} ); | |||
} ); | |||
} | |||
}); | |||
} ); | |||
// search meta-commands: make the table display clickabe keywords. | |||
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ) { | |||
mw.hook( 'he.wikipedia.collapsetables.loaded' ).add( function () { | |||
'use strict'; | |||
$ | var $searchBox = $( '#searchText input' ), | ||
$metaStringsTable = $( '#mw-search-meta-strings' ); | |||
$metaStringsTable.find( 'span.mw-search-meta-string' ).wrap( $( '<a>' ) | |||
.click( function( e ) { | |||
var currentText, newText; | |||
e.preventDefault(); | |||
currentText = $searchBox.val(); | |||
newText = $( this ).text(); | |||
$searchBox.val( currentText + newText ); | |||
} ) | } ) | ||
); | ); | ||
} ); | |||
// Make the table appear only after the collapsible styles are loaded, | |||
// so that it won't delay showing the search results | |||
$metaStringsTable.css( 'display', 'table' ); | |||
} ); | |||
} | |||
// | // On demand loading of scripts and gadgets, initial version from ruwiki. | ||
// Detects uses of template "טען סקריפט" | |||
// and loads specifically-named scripts or gadgets. | |||
// for a gadget, its name as defined in gadgets-definition must begin with "ondemand-" | |||
if ( mw.config.get('wgCanonicalNamespace') !== 'Special' ) | |||
mw.hook( 'wikipage.content' ).add( function( content ) { | mw.hook( 'wikipage.content' ).add( function( content ) { | ||
var beenthere = {}; | |||
$( '.executeJS', content ).each( function () { | |||
var gadget = $( this ).data( 'gadgetname' ); | |||
if ( gadget && $.trim( gadget ) ) mw.loader.load( 'ext.gadget.ondemand-' + $.trim( gadget ) ); // np repetitions - resourceloader takes care | |||
} ); | } ); | ||
} ); | } ); | ||