MediaWiki:Mobile.js: различия между версиями
WikiSysop (обсуждение | вклад) Нет описания правки Метки: с мобильного устройства из мобильной версии |
WikiSysop (обсуждение | вклад) Нет описания правки Метки: с мобильного устройства из мобильной версии |
||
| Строка 58: | Строка 58: | ||
h.click(); | h.click(); | ||
}); | }); | ||
}, | }, 100); | ||
Версия от 23:27, 2 апреля 2024
/* All JavaScript here will be loaded for users of the mobile site */
var formCreatePage = document.querySelector('.createbox');
if (formCreatePage) {
formCreatePage.addEventListener('submit', function(ev) {
console.log('>> submit');
ev.preventDefault();
var pageTitle = formCreatePage.title.value;
var pageContent = "{{" + "Theme\n|parent=" + mw.config.get('wgTitle') + "\n|videoTitle=Подпись под видео\n|audioTitle=Подпись под аудио\n|description=Новый текст\n|result=Идеальный результат\n|chat=\n|graph=\n}}";
// Формирование запроса к API для создания страницы
var params = {
action: 'edit',
title: pageTitle,
text: pageContent,
token: mw.user.tokens.get('csrfToken'), // Получение токена CSRF из MediaWiki
format: 'json'
};
// Отправка запроса POST к API MediaWiki
$.post(mw.util.wikiScript('api'), params, function(data) {
console.log('>>post', data.edit.result);
if (data && data.edit && data.edit.result === 'Success') {
// Если страница успешно создана, перенаправляем пользователя на неё
// window.location.href = mw.util.getUrl(pageTitle);
// остаемся на текущей странице
// window.location.href = mw.util.getUrl(mw.config.get('wgPageName'));
var api = new mw.Api();
api.postWithToken('csrf', {
action: 'purge',
titles: mw.config.get('wgPageName') // Получаем название текущей страницы
}).done(function (data) {
if (data && data.purge) {
console.log('Кэш страницы успешно сброшен.');
location.reload(); // Перезагрузить страницу, чтобы увидеть изменения
} else {
console.log('Ошибка при сбросе кэша страницы.');
}
}).fail(function (error) {
console.log('Не удалось сбросить кэш страницы:', error);
});
} else {
// Обработка ошибок
console.error('Не удалось создать страницу: ', data);
}
});
});
}
// свернуть все заголовки
console.log('Mediawiki:Mobile.js', 7);
setTimeout(function(){
var headings = $.find('.section-heading.open-block');
console.log('>> headings', headings);
headings.forEach(function(h){
h.click();
});
}, 100);