FANDOM


AjaxDelete дазваляе выдаляць і аднаўляць старонкі, не прымушаючы пакідаць старонку, на якой карыстальнік знаходзіцца цяпер. Скрыпт працуе з мадальным акном, якое з'яўляецца пры націску на спасылку выдалення.

Заўвага: Мадальнае акно не з'явіцца, калі адначасова заціснуць кнопкі Shift або Ctrl. Гэта дазваляе карыстальнікам ў звычайным рэжыме выдаляць/аднаўляць старонкі.

Усталёўка

Дадайце гэты JavaScript на Вашу вікі:

Глабальны Персанальны Лакальны
w:Special:Mypage/global.js Special:Mypage/common.js MediaWiki:Common.js
importArticles({
    type: "script",
    articles: [
        "u:dev:AjaxDelete/code.js"
    ]
});
importArticles — лепшы спосаб ўстаноўкі скрыптоў у Fandom'е
Функцыя importArticles выкарыстоўваецца для аб'яднання некалькіх HTTP-запытаў у адзін, дазваляючы мноству скрыптоў загружацца і выконваць сваю працу хутчэй. Калі Вы ўсталёўваеце некалькі розных скрыптоў, магчыма, у кодзе ёсць некалькі непатрэбных імпартаў. Націсніце кнопку Разгарнуць, каб паглядзець, як эфектыўна ўсталяваць скрыпты адным імпартам, павялічыўшы хуткасць іх працы і ачысціўшы лішні код. Яшчэ адзін метад - выкарыстанне старонкі MediaWiki:ImportJS.
Калі ў вашым файле JavaScript ёсць мноства радкоў з імпартам importScript, importScriptPage або importArticles, то іх можна злучыць! Так Ваш код будзе хутчэй загружаць скрыпты з аднаго імпарту, і яго выгляд будзе акуратней. Разгледзьце ўзоры ніжэй. Магчыма, у гэты момант Ваш код падобны на ўзор злева. Справа ж паказана, як Вы можаце яго змяніць.
Некалькі імпартаў — непрыгожа і павольна Адзін імпарт — чыста і эфектыўна
importScriptPage('AjaxRC/code.js','dev');
 
importScript('MediaWiki:localScript.js');
 
importArticle({
  type: 'script',
  article: 'u:dev:FloatingToc/code.js'
});
 
importScriptPage('page1.js', 'wikiname');
 
importScriptPage('page2.js', 'wikiname');
importArticles({
    type: 'script',
    articles: [
        'u:dev:AjaxRC/code.js',
        'MediaWiki:localScript.js',
        'u:dev:FloatingToc/code.js',
        'u:wikiname:page1.js',
        'u:wikiname:page2.js'
    ]
});
Увага: Звярніце асаблівую ўвагу на расстаноўку косак і сінтаксіс у дадзеным прыкладзе. Часцяком карыстальнікі, мала знаёмыя з праграмаваннем (і не толькі!), выпадкова здзяйсняюць памылку, няправільна паставіўшы коску пры напісанні кода, забываючы напісаць знак ці неспадзявана выдаліўшы яго. Гэта прыводзіць да сінтаксічнай памылцы, якая ламае код. Акуратна імпартуйце скрыпты, прытрымліваючыся інструкцыі вышэй.
Аднак, існуе яшчэ мноства патрабаванняў да выкарыстання importArticles!


Выкарыстанне

Мадальнае акно з'явіцца пры націску на любую кнопку "Выдаліць" з спасылкай ?action=delete, выкарыстанне чаго асабліва не патрабуе тлумачэнняў. Абярыце прычыну выдалення/аднаўлення з прапанаваных або увядзіце яё самастойна. Вы можаце ўсталяваць часта выкарыстоўваную прычыну, пасля якой ідзе Ваш тэкст, што будзе выглядаць наступным чынам: <звычайная прычына>: <даданый Вамі тэкст>. Калі Вы жадаеце сачыць за старонкай, націсніце кнопку "Сачыць за старонкай" і выдаліць старонку, або націсніце "Адмяніць", каб закрыць мадальнае акно.

Пры аднаўленні старонкі, ў мадальнам акне Вам спатрэбіцца ўпісаць прычыну. Затым націсніце "Аднавіць" для творы дадзенага дзеяння, альбо "Адмяніць", каб закрыць мадальнае акно.

Асабістыя налады

Усе індывідуальныя зменныя размешчаны ў аб'екце window.AjaxDelete.

Каб стварыць зменныя прычын выдалення, Вам трэба проста ў аб'ект window.AjaxDelete.deleteReasons дадаць код з наступным сінтаксам: 'упісаны тэкст': 'тэкст, які адлюстроўваецца',. А каб дадаць прычыны для выдалення малюнкаў, зрабіце тое ж самае, але ў аб'екце window.AjaxDelete.imageDeleteReasons.

Адсочванне аддаленых старонак абрана па змаўчанні. Калі Вы не хочаце гэтай функцыі, усталюйце ў канфігурацыі параметр autoCheckWatch значэнне false.

Таксама ў скрыпце ёсць мадальнае акно аднаўлення праз AJAX. Калі Вы не жадаеце, каб яно з'яўлялася, зменіце параметр noUndelete на значэнне true.

Прыклад канфігурацый:

window.AjaxDelete = {
    deleteReasons: {
        '[[w:Help:Vandalism]]': 'Vandalism',
        '[[w:Help:Spam]]': 'Spam',
        'Marked for speedy deletion': 'Speedy',
        'Empty page': 'Empty',
        'Author request': 'Author request',
        'Irrelevant to <insert wiki topic here>': 'Irrelevant',
        'Failed to comply with the [[Project:Manual of Style|manual of style]] for over 6 months': 'MoS'
    },
    imageDeleteReasons: {
        'Offensive': 'Offensive',
        'Innapropiate': 'Innapropiate',
        'Harassment': 'Harassment',
        'Housekeeping/Unused': 'Unused',
        'Copyright infringement': 'Copyright',
        'Author request': 'Author request'
    },
    autoCheckWatch: false,
    noUndelete: true
};

Усе устаноўленыя зменныя ўзятыя з старонак MediaWiki (MediaWiki:Deletereason-dropdown і MediaWiki:Filedelete-reason-dropdown).

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.