MediaWiki:Common.js
Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.
- Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
- Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
- Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
- Opera: натисніть Ctrl-F5
// сортування українських букв
mw.config.set( 'tableSorterCollation', {'ґ':'гя', 'і':'ия', 'ї':'ияя', 'є':'ея'} );
/**
* Скрипти для списку спостереження.
*/
if( $( '#watchlist-message' ).length > 0 ) {
importScript( 'MediaWiki:Common.js/watchlist.js' );
}
//Завантаження зображень
function uploadPage() {
$('#wpUploadDescription').val('{{Опис зображення\n|опис =\n|автор =\n|джерело =\n|інше =\n\}\}\n\n{{nofop\}\}');
$('#wpUploadDescription').focus();
}
//</nowiki>
if (mw.config.get('wgCanonicalNamespace') == 'Special' && mw.config.get('wgCanonicalSpecialPageName') == 'Upload') {
$(document).ready(function(){uploadPage();});
$('#mw-upload-permitted').html("<p>Дозволені типи файлів: png, jpg, jpeg, svg</p>");
}
// Disabled due to loading external resource. -- Reedy 07/08/2014
//Embedded maps
/*$(document).ready(function() {
var exhtml = 'http://maps.wikivoyage-ev.org/w/poimap2.php?';
var map = $("#mapdiv");
var exsrc = exhtml+'lat='+map.data("lat")+'&lon='+map.data("long")
+'&zoom='+map.data("zoom")+'&layer=O&lang='+wgContentLanguage+'&name='+wgPageName;
var ifstr = '<iframe src="'+exsrc+'" width="'+map.data("width")+'" height="'+map.data("height")
+'"></iframe><div class="thumbcaption"><a target="_blank" href='+exsrc+'>Відкрити в новому вікні</a></div>';
map.html(ifstr);
});*/
// Базується на скрипті з англійської версії Wikivoyage
// Add listing buttons in edit toolbar
var customizeToolbar = function() {
$( function() {
if ( typeof $.fn.wikiEditor != 'undefined' ) {
$( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
'section': 'main',
'group': 'insert',
'tool': 'reference'
});
}
});
//Вікіфікатор у верхній панелі. Оригінал: http://ru.wikipedia.org/wiki/MediaWiki:Editpage.js
if(mw.config.get('wgAction') == 'edit' || mw.config.get('wgAction') == 'submit')
importScript('MediaWiki:Wikificator.js');
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'main',
'group': 'format',
'tools': {
'Listings': {
label: 'Вікіфікатор — стандартизація тексту',
type: 'button',
icon: '//upload.wikimedia.org/wikipedia/commons/0/06/Wikify-toolbutton.png',
action: {
type: 'callback',
execute: function(context){
Wikify();
}
}
}
}
} );
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'main',
'groups': {
'listings': {
'label': 'Listings' // or use labelMsg for a localized label, see above
}
}
} );
function currentLastEditDate() {
// return the date as "2015-01-15"
var d = new Date();
var year = d.getFullYear();
// Date.getMonth() returns 0-11
var month = d.getMonth() + 1;
if (month < 10) month = '0' + month;
var day = d.getDate();
if (day < 10) day = '0' + day;
return year + '-' + month + '-' + day;
}
var CURRENT_LAST_EDIT_DATE = currentLastEditDate();
var LISTING_TOOLBAR_ITEMS = {
'see': {
label: 'Що відвідати', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/b/b7/Italian_traffic_signs_-_icona_museo.svg/22px-Italian_traffic_signs_-_icona_museo.svg.png',
options: {
pre: '* \{\{see\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'do': {
label: 'Чим зайнятись', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/3/30/Pictograms-nps-bicycle_trail-2.svg/22px-Pictograms-nps-bicycle_trail-2.svg.png',
options: {
pre: '* \{\{do\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'buy': {
label: 'Що купувати', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Italian_traffic_signs_-_icona_supermercato.svg/22px-Italian_traffic_signs_-_icona_supermercato.svg.png',
options: {
pre: '* \{\{buy\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'eat': {
label: 'Де поїсти', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/2/2c/Italian_traffic_signs_-_icona_ristorante.svg/22px-Italian_traffic_signs_-_icona_ristorante.svg.png',
options: {
pre: '* \{\{eat\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'drink': {
label: 'Де розважитись', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/a/a5/Verre_cocktail.svg/22px-Verre_cocktail.svg.png',
options: {
pre: '* \{\{drink\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'sleep': {
label: 'Де зупинитись', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/2/25/Pictograms-nps-lodging.svg/22px-Pictograms-nps-lodging.svg.png',
options: {
pre: '* \{\{sleep\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| checkin= | checkout= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
},
'listing': {
label: 'Інший лістинг', // or use labelMsg for a localized label, see above
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/7/7e/Italian_traffic_signs_-_icona_informazioni.svg/22px-Italian_traffic_signs_-_icona_informazioni.svg.png',
options: {
pre: '* \{\{listing\n| name=',
post: ' | alt= | url= | email=\n| wikidata= | wikipedia=\n| address= | lat= | long= | directions=\n| phone= | tollfree= | fax=\n| hours= | price=\n| lastedit=' + CURRENT_LAST_EDIT_DATE + '\n| content=\n}}' // text to be inserted
}
}
};
$.each(LISTING_TOOLBAR_ITEMS, function(index, element) {
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'main',
'group': 'listings',
'tools': {
'Listings': {
label: element.label,
type: 'button',
icon: element.icon,
action: {
type: 'encapsulate',
options: element.options
}
}
}
} );
});
};
/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar . . . */
if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) !== -1 ) {
mw.loader.using( 'user.options', function () {
if ( mw.user.options.get('usebetatoolbar') ) {
mw.loader.using( 'ext.wikiEditor', function () {
$(document).ready( customizeToolbar );
} );
}
} );
}
//<nowiki>
//Покращений Edittools
importScript('MediaWiki:EditTools.js')
var dot = "·п";
if (!window.spOptions)
window.spOptions = {
subsets : [
//<nowiki>
{caption:'Вікіфікація', symbols:[{cap:"Вікіфікатор", func:function(){Wikify();}}, dot, ["[[Категорія:$+]]", "[[Категорія:]]"], dot, ["[[$+]]", "[[]]"], dot, ["[[$+|]]", "[[|]]"], dot, ["{{$+}}", "{{}}"]]},
{caption:'Лістинги', symbols:[["{{listing |map = <!-- номер -->|type = see|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Що відвідати"], "·п", ["{{listing |map = <!-- номер -->|type = do|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Чим зайнятись"], "·п", ["{{listing |map = <!-- номер -->|type = buy|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Покупки"], "·п", ["{{listing |map = <!-- номер -->|type = eat|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Де поїсти"], "·п", ["{{listing |map = <!-- номер -->|type = sleep|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Де зупинитись"], "·п", ["{{listing |map = <!-- номер -->|type = drink|lat = <!-- широта -->|long = <!-- довгота -->|name = <!-- назва -->|alt = <!-- інша назва -->|address = <!-- адреса -->|directions = <!-- опис, транспорт, тощо -->|url = <!-- інтернет -->|facebook = <!-- Facebook -->|vkontakte = <!-- ВКонтакті -->|phone = <!-- телефон -->|fax = <!-- факс -->|email = <!-- ел. пошта -->|skype = <!-- скайп -->|hours = <!-- графік -->|price = <!-- ціни -->|description = <!-- опис -->}}", "Де розважитись"], dot, dot, {cap:"Документація по шаблонах", func: function () { window.open("http://uk.wikivoyage.com/wiki/Template:Listing"); }} ]},
{caption:'Обговорення', symbols:[["~~~~","~~~~ (підпис)"], "·п", ["{{subst:Welcome}} --~~~~", "{{subst:Welcome}}"], "·п", ["{{subst:Joinus}} --~~~~", "{{subst:Joinus}}"]]},
{caption:'Символи', symbols:[['\'', '\' (апостроф)'], dot, ['«$+»', '«»'], '·п — ·п', ['|', '| (модуль)'], '·п ² ·п • ·п ° ·п °C ·п ~ ·п ·п ', ["₴","₴ (гривня)"], "·п", ["€","€ (євро)"], "·п", ["£","£ (фунт)"], "·п", ["¥","¥ (єна)"], "·п Ґ ·п ґ"]},
{caption:'Вікімандри', symbols:[["{{delete|Причина}}", "{{delete}} (на вилучення)"], "·п", ["{{В|$+}}", "Шаблон:В"], "·п", ["[[wikipedia:uk:$+]]","Стаття у Вікіпедії"], "·п", ["[[commons:Category:$+]]","Стаття у Вікісховищі"]]},
{caption:'Вікітеги', symbols:[["<noinclude>$+<//noinclude>", "<noinclude></noinclude>"], "·п", ["<includeonly>$+<//includeonly>", "<includeonly></includeonly>"], "·п", ["<nowiki>$+<//nowiki>", "<nowiki></nowiki>"], "·п", ["<big>$+<//big>", "<big></big>"], "·п", ["<small>$+<//small>", "<small></small>"], "·п", ["<code>$+<//code>", "<code></code>"], "·п", "<br//>"]}
//</nowiki>
],
sections :
[/* bg color, default subset*/
{tabColor: '#97DEFF', defaultSubset: 0},
{tabColor: '#EEEE55', defaultSubset: 1},
]}
//</nowiki>
/* Hide normal page title and move location of geo map symbol when a page has a pagebanner */
$(".topbanner").closest(".mw-body").children(".firstHeading").hide();
$(".topbanner").closest("#mw-content-text").children("#geoCoord").css({top:0});
function proportionalResize() {
var EXPECTED_PAGE_WIDTH = 900.00;
$('.js-proportonal-resize').each(function() {
var fontSizeCss= (($(this).width() / EXPECTED_PAGE_WIDTH) * 100.00) + '%';
$(this).css("font-size", fontSizeCss);
$(this).find('img').css('height', '100%').css('width', '100%');
});
}
$(document).ready(function(e) {
proportionalResize();
});
$(window).on('load', function() {
// the main page carousel text boxes aren't being initialized to the
// correct size on IE, so add a second resize post-DOM-ready
$('#mainbanner').show();
proportionalResize();
});
$(window).resize(function(e) {
proportionalResize();
});