MediaWiki:Common.js: различия между версиями

Нет описания правки
Метка: отменено
мНет описания правки
 
(не показано 9 промежуточных версий этого же участника)
Строка 63: Строка 63:
name: "server-marines",
name: "server-marines",
connect: "https://game1.station14.ru/marines-main/server/status",
connect: "https://game1.station14.ru/marines-main/server/status",
serverconnect: "ss14s://corvaxcm.space/marines"
serverconnect: "ss14s://corvaxforge.ru/server/cm"
}, {
}, {
name: "server-wega",
name: "server-wega",
Строка 676: Строка 676:
if (!jsonPath) return String(wikiText || '');
if (!jsonPath) return String(wikiText || '');


return '{{#vardefine:JsonPath|' + jsonPath + '}}\n' + String(wikiText || '');
return '{{#vardefine:JsonPath|' + jsonPath + '}}' + String(wikiText || '');
}
}


Строка 723: Строка 723:


initAjaxLoader(root);
initAjaxLoader(root);
initCheckboxCreator(root);
initPage();
registerCheckboxExpander('js-checkbox-mw-collapsible');
}
}


Строка 789: Строка 788:


var ajaxContainers = root.querySelectorAll('.ajax-load, .ajax-load-link');
var ajaxContainers = root.querySelectorAll('.ajax-load, .ajax-load-link');
var BATCH_SIZE = 1000;
var BATCH_SIZE = 3;
var queue = [];
var queue = [];
var processing = false;
var processing = false;
Строка 866: Строка 865:
// Для "Шаблон:CheckboxCreator"
// Для "Шаблон:CheckboxCreator"
function initCheckboxCreator() {
function initCheckboxCreator() {
root = root || document;
var containers = document.getElementsByClassName('js-checkbox-generator');
var containers = root.getElementsByClassName('js-checkbox-generator');


function parseBool(v) {
function parseBool(v) {
Строка 1086: Строка 1084:
// Для "Шаблон:Переключатель_проекта"
// Для "Шаблон:Переключатель_проекта"
function initProjectSelectionGenerator() {
function initProjectSelectionGenerator() {
var COOKIE_PROJECT = 'ss14_preferredProject';
var containers = document.getElementsByClassName('js-project-selection-generator');
var containers = document.getElementsByClassName('js-project-selection-generator');


Строка 1093: Строка 1092:
.replace(/\s+/g, '-')
.replace(/\s+/g, '-')
.replace(/[^A-Za-z0-9_\-\u0400-\u04FF]/g, '');
.replace(/[^A-Za-z0-9_\-\u0400-\u04FF]/g, '');
}
function normalizeProjectName(s) {
return String(s === undefined || s === null ? '' : s)
.trim()
.toLowerCase();
}
}


Строка 1175: Строка 1180:
if (projects.length <= 1) {
if (projects.length <= 1) {
continue;
continue;
}
var preferredProject = $.cookie(COOKIE_PROJECT) || '';
var preferredNorm = normalizeProjectName(preferredProject);
var activeProject = projects[0];
if (preferredProject && preferredNorm !== 'corvax') {
for (var p = 0; p < projects.length; p++) {
if (normalizeProjectName(projects[p]) === preferredNorm) {
activeProject = projects[p];
break;
}
}
}
}


if (!getCurrentJsonPath()) {
if (!getCurrentJsonPath()) {
setCurrentJsonPath(projects[0]);
setCurrentJsonPath(activeProject);
}
}


Строка 1196: Строка 1215:
input.id = projectId;
input.id = projectId;


if (j === 0) {
if (projectName === activeProject) {
input.checked = true;
input.checked = true;
}
}
Строка 1225: Строка 1244:
});
});
})(form);
})(form);
if (preferredProject && preferredNorm !== 'corvax') {
for (var k = 0; k < projects.length; k++) {
if (normalizeProjectName(projects[k]) === preferredNorm) {
refreshForProject(projects[k]);
break;
}
}
}
}
}
function initPage() {
var checkboxExist = document.querySelectorAll('.js-checkbox-generator');
if (checkboxExist.length > 0) {
initCheckboxCreator();
}
}
registerCheckboxExpander('js-checkbox-mw-collapsible');
}
}
const currentPageTitle = document.title;
const currentPageTitle = document.title;
Строка 1328: Строка 1363:
}
}
var checkboxExist = document.querySelectorAll('.js-checkbox-generator');
initPage();
if (checkboxExist.length > 0) {
initCheckboxCreator();
}
registerCheckboxExpander('js-checkbox-mw-collapsible');
});
});
/*WikiEditor/Викификатор*/
/*WikiEditor/Викификатор*/