MediaWiki:Common.js
Материал из doc.abonent.plus
Версия от 09:41, 16 ноября 2016; V.nazarkin (обсуждение | вклад)
Замечание. Возможно, после сохранения вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl-F5 или Ctrl-R (⌘-R на Mac)
- Google Chrome: Нажмите Ctrl-Shift-R (⌘-Shift-R на Mac)
- Internet Explorer: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl-F5
- Opera: Выберите очистку кэша в меню Инструменты → Настройки
/* Размещённый здесь JavaScript код будет загружаться всем пользователям при обращении к каждой странице */
/* ВК Виджет «Мне нравится» — начало */
importScriptURI("http://vk.com/js/api/openapi.js?121");
window.onload = function() {
VK.init({
apiId: 5347266,
onlyWidgets: true
});
$('<div id="vk_like"></div><script type="text/javascript">VK.Widgets.Like("vk_like", {type: "mini"});</script>').insertAfter('#WikiaPageHeader > .talk');
};
/* ВК Виджет «Мне нравится» — конец */
/* Автообновление — начало */
window.AjaxRCRefreshText = 'Автообновление';
window.AjaxRCRefreshHoverText = 'Включить автообновление страницы';
window.ajaxPages = [
"Служебная:RecentChanges",
"Служебная:WikiActivity",
"Служебная:NewFiles"
];
/* Автообновление — конец */
// *****************************************************
// * Experimental javascript countdown timer (Splarka) *
// * Version 0.0.3 *
// *****************************************************
//
// Usage example:
// <span class="countdown" style="display:none;">
// Only <span class="countdowndate">January 01 2007 00:00:00 PST</span> until New years.
// </span>
// <span class="nocountdown">Javascript disabled.</span>
function updatetimer(i) {
var now = new Date();
var then = timers[i].eventdate;
var diff = count = Math.floor((then.getTime() - now.getTime()) / 1000);
// catch bad date strings
if (isNaN(diff)) {
timers[i].firstChild.nodeValue = '** ' + timers[i].eventdate + ' **';
return;
}
// determine plus/minus
if (diff < 0) {
diff = -diff;
}
var tpm = '';
// Calculate the diff - Modified by Eladkse
if ((diff % 60) == 1) {
left = (diff % 60) + ' секунды';
} else {
left = (diff % 60) + ' секунда';
}
diff = Math.floor(diff / 60);
if (diff > 0) {
if ((diff % 60) == 1) {
left = (diff % 60) + ' минута, и ' + left;
} else {
left = (diff % 60) + ' минут, и ' + left;
}
}
diff = Math.floor(diff / 60);
if (diff > 0) {
if ((diff % 24) == 1) {
left = (diff % 24) + ' час, ' + left;
} else {
left = (diff % 24) + ' часов, ' + left;
}
}
diff = Math.floor(diff / 24);
if (diff > 0) {
if (diff == 1) {
left = diff + ' день, ' + left;
} else {
left = diff + ' дней, ' + left;
}
}
timers[i].firstChild.nodeValue = tpm + left;
// a setInterval() is more efficient, but calling setTimeout()
// makes errors break the script rather than infinitely recurse
timeouts[i] = setTimeout('updatetimer(' + i + ')', 1000);
}
$(function checktimers() {
//hide 'nocountdown' and show 'countdown'
var nocountdowns = getElementsByClassName(document, 'span', 'nocountdown');
for (var i in nocountdowns) nocountdowns[i].style.display = 'none';
var countdowns = getElementsByClassName(document, 'span', 'countdown');
for (var i in countdowns) countdowns[i].style.display = 'inline';
//set up global objects timers and timeouts.
timers = getElementsByClassName(document, 'span', 'countdowndate'); //global
timeouts = new Array(); // generic holder for the timeouts, global
if (timers.length === 0) return;
for (var i in timers) {
timers[i].eventdate = new Date(timers[i].firstChild.nodeValue);
updatetimer(i); //start it up
}
});
// **************************************************
// - end - Experimental javascript countdown timer
// **************************************************
// ============================================================
// BEGIN Dynamic Navigation Bars (experimantal)
// This script is from Wikipedia. For author attribution, please see http://en.wikipedia.org/w/index.php?title=MediaWiki:Common.js&action=history
/* Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: User:Mike Dillon, User:R. Koot, User:SG
*/
var hasClass = (function() {
var reCache = {};
return function(element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
var autoCollapse = 1;
var collapseCaption = "скрыть";
var expandCaption = "показать";
function collapseTable(tableIndex) {
var Button = document.getElementById("collapseButton" + tableIndex);
var Table = document.getElementById("collapsibleTable" + tableIndex);
if (!Table || !Button) {
return false;
}
var Rows = Table.rows;
if (Button.firstChild.data == collapseCaption) {
for (var i = 1; i < Rows.length; i++) {
Rows[i].style.display = "none";
}
Button.firstChild.data = expandCaption;
} else {
for (var i = 1; i < Rows.length; i++) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
$(function createCollapseButtons() {
var tableIndex = 0;
var collapseIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName("table");
for (var i = 0; i < Tables.length; i++) {
if (hasClass(Tables[i], "collapsible")) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName("tr")[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName("th")[0];
if (!Header) continue;
NavigationBoxes[tableIndex] = Tables[i];
Tables[i].setAttribute("id", "collapsibleTable" + tableIndex);
var Button = document.createElement("span");
var ButtonLink = document.createElement("a");
var ButtonText = document.createTextNode(collapseCaption);
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "5em";
Button.className = "t_show_hide";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute("id", "collapseButton" + tableIndex);
ButtonLink.setAttribute("href", "javascript:collapseTable(" + tableIndex + ");");
ButtonLink.appendChild(ButtonText);
Button.appendChild(document.createTextNode("["));
Button.appendChild(ButtonLink);
Button.appendChild(document.createTextNode("]"));
Header.insertBefore(Button, Header.childNodes[0]);
if (!hasClass(Tables[i], "nocount")) {
collapseIndex++;
}
tableIndex++;
}
}
for (var i = 0; i < tableIndex; i++) {
if (hasClass(NavigationBoxes[i], "collapsed") || (collapseIndex >= autoCollapse && hasClass(NavigationBoxes[i], "autocollapse"))) {
collapseTable(i);
} else if (hasClass(NavigationBoxes[i], "innercollapse")) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if (hasClass(element, "outercollapse")) {
collapseTable(i);
break;
}
}
}
}
});
// ============================================================
// END Collapsible tables
// ============================================================
//Тест
//A script that adds a "Back To Top" option in the footer of the Oasis theme.
//Created by Noemon from Dead Space Wiki, translate from ru.elderscrolls.wikia
function hideFade() {
// hide #backtotop first
$("#backtotop").hide();
// fade in #backtotop
$(function() {
$(window).scroll(function() {
if ($(this).scrollTop() > ButtonStart) {
$('#backtotop').fadeIn();
} else {
$('#backtotop').fadeOut();
}
});
});
}
function goToTop() {
// scroll body to 0px on click
$('body,html').animate({
scrollTop: 0
}, ScrollSpeed);
return false;
}
function addBackToTop() {
if (skin == 'oasis') {
$('<li id="backtotop" style="position: absolute; right:20px; top:0px; border:none;"><button type="button" value="Наверх" onClick="goToTop();">Наверх</button></li>').appendTo('#WikiaBarWrapper .toolbar > .tools');
hideFade();
}
}
var ButtonStart = 800;
var ScrollSpeed = 600;
if (!window.BackToTop) {
$(document).ready(function() {
addBackToTop();
});
}
var BackToTop = true; // prevent duplication
/* Плашки */
//добавляет новые "статусы" участников, и, опционально - картинки к ним. Прав не даёт.
//Originaly made for ru-Mass Effect Wiki http://ru.masseffect.wikia.com/
//Images inserting added by Wildream
$(function() {
var rights = {};
var image = {};
var ImgStart = '<a href="http://ru.masseffect.wikia.com/wiki/Блог_участника:V.V.S./Командная_работа"><img src=" ';
var ImgEnd = '"></a>';
rights["R256S"] = ["ЖУКОКРАТ"];
image["R256S"] = [ImgStart + 'http://images.wikia.com/masseffect/ru/images/4/42/N7MasteryBanner.png' + ImgEnd];
rights["Mercenary2811"] = ["Ветеран ME wiki"];
rights["Iskandra"] = ["Специалист по протеанам"];
if (typeof rights[wgTitle] != "undefined") {
// remove old rights
$('.UserProfileMasthead .masthead-info span.tag').remove();
for (var i = 0, len = rights[wgTitle].length; i < len; i++) {
if (typeof image[wgTitle] != "undefined") {
// add new rights
$('<span class="tag">' + rights[wgTitle][i] + '</span><span style="position:relative; left:60px;">' + image[wgTitle] + '</span>').appendTo('.masthead-info hgroup');
} else {
// add new rights
$('<span class="tag">' + rights[wgTitle][i] + '</span>').appendTo('.masthead-info hgroup');
}
}
}
});
InactiveUsers = {
months: 1,
text: 'НЕАКТИВНЫЙ УЧАСТНИК'
};
function infoboxToggle() {
var page = window.pageName.replace(/\W/g, '_');
var nowShown;
if (document.getElementById('infoboxtoggle').innerHTML == '[Hide]') {
document.getElementById('infoboxinternal').style.display = 'none';
document.getElementById('infoboxtoggle').innerHTML = '[Show]';
nowShown = false;
} else {
document.getElementById('infoboxinternal').style.display = 'block';
document.getElementById('infoboxtoggle').innerHTML = '[Hide]';
nowShown = true;
}
if (window.storagePresent) {
var storage = globalStorage[window.location.hostname];
storage.setItem('infoboxshow-' + page, nowShown);
}
}
/**
* jQuery version of fillEditSummaries
* @author Grunny
*/
function fillEditSummaries() {
if (!$('#wpSummaryLabel').length) {
return;
}
var summaryOptionsHtml = '',
$summaryOptionsList;
$.get(wgScript, {
title: 'Template:Stdsummaries',
action: 'raw',
ctype: 'text/plain'
}, function(data) {
var lines = data.split('\n');
for (var i = 0; i < lines.length; i++) {
var value = (lines[i].indexOf('-- ') === 0) ? lines[i].substring(3) : "";
summaryOptionsHtml += '<option value="' + value + '">' + lines[i] + '</option>';
}
$summaryOptionsList = $('<select />').attr('id', 'stdEditSummaries').html(summaryOptionsHtml).change(function() {
var value = $(this).val();
if (value !== '') {
if (skin === 'oasis') {
$('#wpSummary').text(value);
} else {
$('#wpSummary').val(value);
}
}
});
$('#wpSummaryLabel').prepend('Standard summaries: ', $summaryOptionsList, '<br />');
});
}
/**
* jQuery version of fillPreloads
* @author Grunny
*/
function fillPreloads() {
if (!$('#lf-preload').length) {
return;
}
var preloadOptionsHtml = '',
$preloadOptionsList;
$('#lf-preload').attr('style', 'display: block');
$.get(wgScript, {
title: 'Template:Stdpreloads',
action: 'raw',
ctype: 'text/plain'
}, function(data) {
var lines = data.split('\n');
for (var i = 0; i < lines.length; i++) {
var value = (lines[i].indexOf('-- ') === 0) ? lines[i].substring(3) : "";
preloadOptionsHtml += '<option value="' + value + '">' + lines[i] + '</option>';
}
$preloadOptionsList = $('<select />').attr('id', 'stdSummaries').html(preloadOptionsHtml).change(function() {
var value = $(this).val();
if (value !== '') {
value = 'Template:' + value + '/preload';
value = value.replace(' ', '_');
$.get(wgScript, {
title: value,
action: 'raw',
ctype: 'text/plain'
}, function(data) {
insertAtCursor(document.getElementById('wpTextbox1'), data);
});
}
});
$('#lf-preload-cbox').html($preloadOptionsList);
});
$('#lf-preload-pagename').html('<input type="text" class="textbox" />');
$('#lf-preload-button').html('<input type="button" class="button" value="Insert" onclick="doCustomPreload()" />');
}
function doCustomPreload() {
var value = $('#lf-preload-pagename > input').val();
value = value.replace(' ', '_');
$.get(wgScript, {
title: value,
action: 'raw',
ctype: 'text/plain'
}, function(data) {
insertAtCursor(document.getElementById('wpTextbox1'), data);
});
}
/* Дополнительные варианты в поиске */
/* Закрытие блога для комментирования */
if (wgPageName != "Блог_участника:V.V.S./Командная_работа") {
window.LockOldBlogs = {
expiryDays: 30,
expiryMessage: "Этот блог был неактивен в течение <expiryDays> дней. Просьба не редактировать его.",
nonexpiryCategory: "Заархивированные блоги"
};
}
/* Удаление ссылки изображения вместе с изображением */
// Fixes a weird bug with the MW parser that adds lots of empty parapgraphs
$('.switch-infobox > p, .switch-infobox-triggers > p').each(function() {
if ($(this).children('br').length) {
$(this).remove();
} else {
$(this).replaceWith(this.innerHTML);
}
});
// Appends the switch triggers to every item
$('.switch-infobox').each(function() {
// The switch triggers
var triggers = $(this).children('.switch-infobox-triggers');
$(this).children('.item').find('caption').append(triggers);
});
// Does the actual switching
$('.switch-infobox').find('.switch-infobox-triggers').children('.trigger').click(function() {
// The parent .switch-infobox of the clicked trigger
var parentSwitchInfobox = $(this).parents('.switch-infobox');
// Hides items showing
parentSwitchInfobox.children('.item.showing').removeClass('showing');
// Show the relevant item
parentSwitchInfobox.children('.item[data-id="' + this.getAttribute('data-id') + '"]').addClass('showing');
});
// Finishes loading and makes switch infoboxes functional
$('.switch-infobox.loading').removeClass('loading');
//Custom achievements module. Made for ru.masseffect.wikia.com by Wildream.
var element = document.getElementsByClassName('AchievementsModule');
if (element) {
if (skin == "oasis" && wgNamespaceNumber == 2 && wgPageName == "Участник:V.V.S.") { //Вместо "Имя участника" нужно, соответственно, ввести имя участника, у которого будут отображаться эти ачивки
addOnloadHook(AddCustomAchievements);
}
function AddCustomAchievements() {
$('<section class="CustomAchievements module"><h1 style="margin-top:0px; margin-bottom:10px;">Отличительные медали этого участника</h1><div><p><table><tr><td><div class="custom-achievements-VVS-1" /><td><div class="custom-achievements-VVS-2" /><td><div class="custom-achievements-VVS-3" /></td><tr><td><div class="custom-achievements-VVS-4" /></tr></table></p></div></section>').insertAfter('.AchievementsModule');
}
if (skin == "oasis" && wgNamespaceNumber == 2 && wgPageName == "Участник:R256S") {
addOnloadHook(AddCustomAchievements3);
}
function AddCustomAchievements3() {
$('<section class="CustomAchievements module"><h1 style="margin-top:0px; margin-bottom:10px;">Отличительные медали этого участника</h1><div><p><table><td><div class="custom-achievements-R256S-1" /><td><div class="custom-achievements-R256S-2" /></table></p></div></section>').insertAfter('.ChatModule');
}
if (skin == "oasis" && wgNamespaceNumber == 2 && wgPageName == "Участник:Nidred") {
addOnloadHook(AddCustomAchievements4);
}
function AddCustomAchievements4() {
$('<section class="CustomAchievements module"><h1 style="margin-top:0px; margin-bottom:10px;">Отличительные медали этого участника</h1><div><p><table><td><div class="custom-achievements-Nidred-1" /><td><div class="custom-achievements-Nidred-2" /></table></p></div></section>').insertAfter('.AchievementsModule');
}
if (skin == "oasis" && wgNamespaceNumber == 2 && wgPageName == "Участник:Mercenary2811") {
addOnloadHook(AddCustomAchievements5);
}
function AddCustomAchievements5() {
$('<section class="CustomAchievements module"><h1 style="margin-top:0px; margin-bottom:10px;">Отличительные медали этого участника</h1><div><p><table><td><div class="custom-achievements-Mercenary2811-1" /><td><div class="custom-achievements-Mercenary2811-2" /></table></p></div></section>').insertAfter('.AchievementsModule');
}
if (skin == "oasis" && wgNamespaceNumber == 2 && wgPageName == "Участник:Iskandra") {
addOnloadHook(AddCustomAchievements6);
}
function AddCustomAchievements6() {
$('<section class="CustomAchievements module"><h1 style="margin-top:0px; margin-bottom:10px;">Отличительные медали этого участника</h1><div><p><table><td><div class="custom-achievements-Iskandra-1" /><td><div class="custom-achievements-Iskandra-2" /></table></p></div></section>').insertAfter('.AchievementsModule');
}
}
/**
* jQuery version of fillEditSummaries
* @author Grunny
*/
function fillEditSummaries() {
if (!$('#wpSummaryLabel').length) {
return;
}
var summaryOptionsHtml = '',
$summaryOptionsList;
$.get(wgScript, {
title: 'Template:Stdsummaries',
action: 'raw',
ctype: 'text/plain'
}, function(data) {
var lines = data.split('\n');
for (var i = 0; i < lines.length; i++) {
var value = (lines[i].indexOf('-- ') === 0) ? lines[i].substring(3) : "";
summaryOptionsHtml += '<option value="' + value + '">' + lines[i] + '</option>';
}
$summaryOptionsList = $('<select />').attr('id', 'stdEditSummaries').html(summaryOptionsHtml).change(function() {
var value = $(this).val();
if (value !== '') {
if (skin === 'oasis') {
$('#wpSummary').text(value);
} else {
$('#wpSummary').val(value);
}
}
});
$('#wpSummaryLabel').prepend('Standard summaries: ', $summaryOptionsList, '<br />');
});
}
//Wildream's few scripts
$('body').append('<span id="reapersound" style="display:none;"></span>');
$('#blocklaser').hover(function() {
document.getElementById('reapersound').innerHTML = '<audio src="http://images.wikia.com/wildreamtestfacility/ru/images/a/a6/Mass_Effect_3_-_Reaper_laser.ogg" autoplay=""></audio>';
});
((window.dev = window.dev || {}).ReferencePopups = dev.ReferencePopups || {}).lockdown = true;
/* Иконки социальных сетей
This module cannot be placed outside the Wikia skin
$('.WikiaRail').prepend('<div style="right:-31px; top:108px; position: absolute;"><div style="position: absolute;" class="SocialIcon"><div style="float:right;"><a href="http://vk.com/masseffectwikia"><img src="http://img4.wikia.nocookie.net/__cb20140227085821/masseffect/ru/images/e/e6/VKontakte.png"></a></div></div><div style="position: absolute; margin-top:42px" class="SocialIcon"><div style="float:right;"><a href="http://social.bioware.com"><img src="http://images.wikia.com/masseffect/ru/images/8/8d/SocialBioware.png"></a></div></div><div style="position: absolute; margin-top:84px" class="SocialIcon"><div style="float:right;"><a href="https://www.origin.com"><img src="http://images.wikia.com/masseffect/ru/images/0/0d/OrginSocial.png"></a></div></div><div style="position: absolute; margin-top:126px" class="SocialIcon"><div style="float:right;"><a href="http://social.bioware.com/n7hq"><img src="http://images.wikia.com/masseffect/ru/images/2/2a/N7HQSocial.png"></a></div></div>');
*/
function initVisibility() {
var storage = globalStorage[window.location.hostname];
var page = window.pageName.replace(/\W/g, '_');
var show = storage.getItem('infoboxshow-' + page);
if (show == 'false') {
infoboxToggle();
}
var hidables = getElementsByClass('hidable');
for (var i = 0; i < hidables.length; i++) {
show = storage.getItem('hidableshow-' + i + '_' + page);
if (show == 'false') {
var content = getElementsByClass('hidable-content', hidables[i]);
var button = getElementsByClass('hidable-button', hidables[i]);
if (content !== null && content.length > 0 &&
button !== null && button.length > 0 && content[0].style.display != 'none') {
button[0].onclick('bypass');
}
} else if (show == 'true') {
var content = getElementsByClass('hidable-content', hidables[i]);
var button = getElementsByClass('hidable-button', hidables[i]);
if (content !== null && content.length > 0 &&
button !== null && button.length > 0 && content[0].style.display == 'none') {
button[0].onclick('bypass');
}
}
}
}
/* Слайдеры */
mw.loader.using(['jquery.ui.tabs'], function() {
$(function() {
var $tabs = $("#portal_slider").tabs({
fx: {
opacity: 'toggle',
duration: 100
}
});
$("[class^=portal_sliderlink]").click(function() { // bind click event to link
$tabs.tabs('select', this.className.replace("portal_sliderlink_", ""));
return false;
});
$('#portal_next').click(function() {
$tabs.tabs('select', ($tabs.tabs('option', 'selected') == ($tabs.tabs('length')) - 1) ? 0 : $tabs.tabs('option', 'selected') + 1); // switch to next tab
return false;
});
$('#portal_prev').click(function() { // bind click event to link
$tabs.tabs('select', ($tabs.tabs('option', 'selected') === 0) ? ($tabs.tabs('length') - 1) : $tabs.tabs('option', 'selected') - 1); // switch to previous tab
return false;
});
});
});
/*Fluid images template by Wildream */
var InputsCount = $('.inp').size();
var InputIDNumber = 0;
$(".inp").each(function() {
if ($(this).attr('id') === undefined) {
$(this).attr('id', 'inp-' + InputIDNumber);
InputIDNumber++;
}
});
var OutputIDNumber = 0;
$(".output").each(function() {
if ($(this).attr('id') === undefined) {
$(this).attr('id', 'out-' + OutputIDNumber);
OutputIDNumber++;
}
});
for (ChangesCount = 0; ChangesCount < InputsCount; ChangesCount++) {
var UrlImg = "http://" + $('#inp-' + ChangesCount).text();
$('body').append('<img src="' + UrlImg + '" style="display:none" id="realsize-img-' + ChangesCount + '">');
$('#out-' + ChangesCount).click(function() {
window.open(UrlImg);
});
}
function ChangeFlImgSize() {
for (ChangesCount = 0; ChangesCount < InputsCount; ChangesCount++) {
var UrlBg = 'url("http://' + $('#inp-' + ChangesCount).text() + '") no-repeat center';
var IndexSize = parseInt($("#realsize-img-" + ChangesCount).width(), 10) / parseInt($("#realsize-img-" + ChangesCount).height(), 10);
$('#out-' + ChangesCount).css({
'background': UrlBg,
'width': '100%',
'height': (parseInt($('.WikiaArticle').width(), 10) / IndexSize),
'background-size': 'contain',
'-o-background-size': 'contain',
'-webkit-background-size': 'contain',
'-moz-background-size': 'contain'
});
}
}
setTimeout(ChangeFlImgSize, 500);
$(window).resize(function() {
ChangeFlImgSize();
});
/* Tooltip code by Wildream */
$('.article-tooltip').mouseover(function() {
$('.article-tooltip-hidden').fadeIn(400);
});
$('.article-tooltip').mouseout(function() {
$('.article-tooltip-hidden').fadeOut(400);
});
$('.article-tooltip').mousemove(
function(a) {
if (a.pageX === null && a.clientX !== null) {
var html = document.documentElement;
var body = document.body;
a.pageX = a.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0);
a.pageY = a.clientY + (html && html.scrollTop || body && body.scrollTop || 0) - (html.clientTop || 0);
}
$('.article-tooltip-hidden').css({
left: a.pageX - 150,
top: a.pageY - 270
});
});
//Emoticons link
if (wgPageName == 'Служебная:Chat') {
$('.public').append('<a class="EmoLinks" href="/wiki/MediaWiki:Emoticons" target="_blank">Смайлики!</a>');
$('.EmoLinks').css({
'position': 'relative',
'left': '400px'
});
}
//Scrolls Games left and right
$('.GamesArrowLeft').click(function() {
scroll = $('#GamesCarousel').scrollLeft();
$('#GamesCarousel').animate({
'scrollLeft': scroll - 284
}, 0);
});
$('.GamesArrowRight').click(function() {
scroll = $('#GamesCarousel').scrollLeft();
$('#GamesCarousel').animate({
'scrollLeft': scroll + 284
}, 0);
});
if (wgPageName == "Участник:V.V.S.") {
$('body').css('background', 'url(http://vignette3.wikia.nocookie.net/masseffect/images/c/c2/Фон_Тучанка.png/revision/latest?cb=20131114191116&path-prefix=ru) no-repeat center center fixed #000000');
}
if (wgPageName == "Участник:R256S") {
$('body').css('background', 'url(http://vignette2.wikia.nocookie.net/masseffect/images/9/9a/Капсулы_на_корабле_Коллекционеров.jpg/revision/latest?cb=20140221210745&path-prefix=ru) no-repeat center center fixed #000000');
}
/* Приветствие форума*/
$(function() {
$('.boards').prepend("<div class=forumwelcome style='text-align:center; color:white; text-shadow: #555 1px 1px 3px; padding:2px; width:100%;'>Добро пожаловать на форум Mass Effect Wiki<br>Это идеальное место, чтобы начать обсуждение, задать вопросы и пообщаться с сообществом вики.<br>Если это ваш первый визит на форум Mass Effect Wiki, пожалуйста, нажмите на кнопку «Правила Форума и Справка» выше, чтобы ознакомиться с работой этого форума и его правилами.</div>");
});
//Изображения в профиле
var img = {};
img["Mercenary2811"] = ['<img src="http://img1.wikia.nocookie.net/__cb20140531182009/masseffect/ru/images/e/ec/Кнопка_Batman.png" width="320px" height="80px">'];
if (typeof img[wgTitle] != "undefined") {
$('<div style="position:absolute; left:5px; top:85px;">' + img[wgTitle] + '</div>').appendTo('.masthead-info');
}
/*************************************************/
/* spoilers by User:Tierrie from Dragon Age Wiki */
/*************************************************/
var showSpoiler = new Array();
function showSpoilers(splrType) {
var Divs = document.getElementsByTagName("div");
for (i = 0; i < Divs.length; i++) {
// allows the child to be something besides a div (a table for example)
if (hasClass(Divs[i], 'splr') && hasClass(Divs[i].childNodes[0], 'splr_' + splrType)) {
var warning = Divs[i].childNodes[0].childNodes[1];
warning.className = warning.className.replace('show_warning', 'hide_warning');
var spoiler = Divs[i].childNodes[1];
spoiler.className = spoiler.className.replace('hide_spoiler', 'show_spoiler');
}
}
document.cookie = 'showspoiler_' + splrType + '=1; path=/';
}
function hideSpoilers(splrType) {
var Divs = document.getElementsByTagName("div");
for (i = 0; i < Divs.length; i++) {
// allows the child to be something besides a div (a table for example)
if (hasClass(Divs[i], 'splr') && hasClass(Divs[i].childNodes[0], 'splr_' + splrType)) {
var warning = Divs[i].childNodes[0].childNodes[1];
warning.className = warning.className.replace('hide_warning', 'show_warning');
var spoiler = Divs[i].childNodes[1];
spoiler.className = spoiler.className.replace('show_spoiler', 'hide_spoiler');
}
}
document.cookie = 'showspoiler_' + splrType + '=0; path=/';
}
function toggleSpoilers(ev) {
var splrType = this.className.split('_')[1];
showSpoiler[splrType] = showSpoiler[splrType] ? 0 : 1;
if (showSpoiler[splrType])
showSpoilers(splrType);
else
hideSpoilers(splrType);
//ev.target.focus(); /* focus back on the element because large spoilers tend to move the page around */
}
function initSpoilers() {
var Divs = document.getElementsByTagName("div");
for (i = 0; i < Divs.length; i++) {
if (hasClass(Divs[i], 'splr')) {
Divs[i].childNodes[0].onclick = toggleSpoilers;
var warning = Divs[i].childNodes[0].childNodes[1];
warning.className = warning.className.replace('hide_warning', 'show_warning');
var spoiler = Divs[i].childNodes[1];
spoiler.className = spoiler.className.replace('show_spoiler', 'hide_spoiler');
}
}
var cookies = document.cookie.split("; ");
for (var i = 0; i < cookies.length; i++) {
// a name/value pair (a crumb) is separated by an equal sign
if (cookies[i].indexOf('showspoiler') != -1) {
var crumbs = cookies[i].split("=");
var splrType = crumbs[0].split('_')[1]; /* cookie="showspoiler_me=1", crumbs[0] = "showspoiler_me", splrType="me" */
var splrValue = parseInt(crumbs[1]);
showSpoiler[splrType] = splrValue;
if (splrValue)
showSpoilers(splrType);
else
hideSpoilers(splrType);
}
}
}
var spoilers = true;
function loadSpoilers() {
if (spoilers) initSpoilers();
}
addOnloadHook(loadSpoilers);
importArticles({
type: 'script',
articles: [
'u:deadisland:User:Jgjake2/js/DISPLAYTITLE.js',
'u:ru.c:MediaWiki:FluidSlider/code.js',
]
});