Медијавики:Gadget-PatrolLog.js — разлика између измена
Изглед
Promena koda |
Promena koda |
||
| Ред 1: | Ред 1: | ||
// Gadget: FRQuickLinks (FlaggedRevs + Patrol helpers) | // Gadget: FRQuickLinks (FlaggedRevs + Patrol helpers) | ||
// Toolbox | // Prikazuje linkove u Toolbox-u samo za sysop/patroller | ||
// | // Latinica, prilagodjeno za Vojnu Enciklopediju | ||
$(function () { | $(function () { | ||
// samo clanci | |||
// samo u glavnom imenskom prostoru (clanci) | |||
if (mw.config.get('wgNamespaceNumber') !== 0) return; | if (mw.config.get('wgNamespaceNumber') !== 0) return; | ||
// samo sysop ili patroller | // dozvoli samo sysop ili patroller | ||
var groups = mw.config.get('wgUserGroups') || []; | var groups = mw.config.get('wgUserGroups') || []; | ||
if (!(groups.includes('sysop') || groups.includes('patroller'))) return; | if (!(groups.includes('sysop') || groups.includes('patroller'))) return; | ||
var pageName = mw.config.get('wgPageName'); // npr | var pageName = mw.config.get('wgPageName'); // npr AB_23 | ||
var titleTxt = mw.config.get('wgTitle'); // npr | var titleTxt = mw.config.get('wgTitle'); // npr AB 23 | ||
// ---- 1) Nepregledane (GLOBAL) ---- | // FlaggedRevs stanje | ||
var stableId = mw.config.get('wgStableRevisionId'); // 0 ako nema stabilne | |||
var curId = mw.config.get('wgCurRevisionId'); | |||
var hasStable = !!stableId && stableId !== 0; | |||
var hasPending = hasStable && (stableId !== curId); | |||
// helper: review entry point (stable -> current diff) ili fallback na istoriju | |||
function getReviewEntryUrl() { | |||
if (hasPending) { | |||
return mw.util.getUrl(pageName, { diff: 'cur', oldid: 'stable' }); | |||
} | |||
return mw.util.getUrl('Special:History/' + pageName); | |||
} | |||
function getReviewEntryText() { | |||
if (!hasStable) return 'Nema stabilne → istorija'; | |||
if (hasPending) return 'Ima pending → pregledaj diff'; | |||
return 'Nema pending → istorija'; | |||
} | |||
/* ------------------------------------------------- | |||
* 1) Nepregledane stranice (GLOBAL) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | mw.util.addPortletLink( | ||
'p-tb', | 'p-tb', | ||
| Ред 23: | Ред 47: | ||
); | ); | ||
/ | /* ------------------------------------------------- | ||
* 2) Izmene na čekanju (GLOBAL queue) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | mw.util.addPortletLink( | ||
'p-tb', | 'p-tb', | ||
| Ред 32: | Ред 58: | ||
); | ); | ||
/ | /* ------------------------------------------------- | ||
* 3) Stabilizacija (OVA STRANA) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | mw.util.addPortletLink( | ||
'p-tb', | 'p-tb', | ||
| Ред 38: | Ред 66: | ||
'FlaggedRevs: stabilizacija', | 'FlaggedRevs: stabilizacija', | ||
't-fr-stabilize', | 't-fr-stabilize', | ||
' | 'Podesavanja stabilne verzije za "' + titleTxt + '"' | ||
); | ); | ||
/ | /* ------------------------------------------------- | ||
* 4) Istorija (OVA STRANA) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | mw.util.addPortletLink( | ||
'p-tb', | 'p-tb', | ||
| Ред 50: | Ред 80: | ||
); | ); | ||
/ | /* ------------------------------------------------- | ||
* 5) Pregledaj i proveri (stable → current) | |||
* (ovo je pravi "entry point" za prihvatanje izmena) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | mw.util.addPortletLink( | ||
'p-tb', | 'p-tb', | ||
mw.util.getUrl(pageName, { diff: 'cur', oldid: 'stable' }), | mw.util.getUrl(pageName, { diff: 'cur', oldid: 'stable' }), | ||
'Pregledaj (stable → current)', | 'Pregledaj i proveri (stable → current)', | ||
't-fr-diff-stable', | 't-fr-diff-stable', | ||
'Otvori diff | 'Otvori diff stabilna → trenutna (odavde ide prihvatanje izmene)' | ||
); | ); | ||
/ | /* ------------------------------------------------- | ||
* 6) Pametan link (sam bira: diff ako ima pending, inače istorija) | |||
* ------------------------------------------------- */ | |||
mw.util.addPortletLink( | |||
'p-tb', | |||
getReviewEntryUrl(), | |||
getReviewEntryText(), | |||
't-fr-smart', | |||
'Pametan link: vodi na najlogičniji korak' | |||
); | |||
/* ------------------------------------------------- | |||
* 7) Status: Provereno / Nepregledano (klikabilno) | |||
* ------------------------------------------------- */ | |||
var statusText = (hasStable && !hasPending) ? 'Status: Provereno' : 'Status: Nepregledano'; | |||
statusText | mw.util.addPortletLink( | ||
'p-tb', | |||
getReviewEntryUrl(), | |||
statusText, | |||
't-fr-status', | |||
'Klik vodi na pregled (diff) ili istoriju' | |||
); | |||
}); | }); | ||
Верзија на датум 8. фебруар 2026. у 16:39
// Gadget: FRQuickLinks (FlaggedRevs + Patrol helpers)
// Prikazuje linkove u Toolbox-u samo za sysop/patroller
// Latinica, prilagodjeno za Vojnu Enciklopediju
$(function () {
// samo u glavnom imenskom prostoru (clanci)
if (mw.config.get('wgNamespaceNumber') !== 0) return;
// dozvoli samo sysop ili patroller
var groups = mw.config.get('wgUserGroups') || [];
if (!(groups.includes('sysop') || groups.includes('patroller'))) return;
var pageName = mw.config.get('wgPageName'); // npr AB_23
var titleTxt = mw.config.get('wgTitle'); // npr AB 23
// FlaggedRevs stanje
var stableId = mw.config.get('wgStableRevisionId'); // 0 ako nema stabilne
var curId = mw.config.get('wgCurRevisionId');
var hasStable = !!stableId && stableId !== 0;
var hasPending = hasStable && (stableId !== curId);
// helper: review entry point (stable -> current diff) ili fallback na istoriju
function getReviewEntryUrl() {
if (hasPending) {
return mw.util.getUrl(pageName, { diff: 'cur', oldid: 'stable' });
}
return mw.util.getUrl('Special:History/' + pageName);
}
function getReviewEntryText() {
if (!hasStable) return 'Nema stabilne → istorija';
if (hasPending) return 'Ima pending → pregledaj diff';
return 'Nema pending → istorija';
}
/* -------------------------------------------------
* 1) Nepregledane stranice (GLOBAL)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('Special:UnreviewedPages'),
'FlaggedRevs: nepregledane',
't-fr-unreviewed',
'Sve stranice koje još nisu pregledane'
);
/* -------------------------------------------------
* 2) Izmene na čekanju (GLOBAL queue)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('Special:PendingChanges'),
'FlaggedRevs: izmene na čekanju',
't-fr-pending',
'Sve stranice koje imaju izmene koje čekaju proveru'
);
/* -------------------------------------------------
* 3) Stabilizacija (OVA STRANA)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('Special:Stabilization', { page: pageName }),
'FlaggedRevs: stabilizacija',
't-fr-stabilize',
'Podesavanja stabilne verzije za "' + titleTxt + '"'
);
/* -------------------------------------------------
* 4) Istorija (OVA STRANA)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('Special:History/' + pageName),
'Istorija (pregled izmena)',
't-fr-history',
'Istorija izmena za "' + titleTxt + '"'
);
/* -------------------------------------------------
* 5) Pregledaj i proveri (stable → current)
* (ovo je pravi "entry point" za prihvatanje izmena)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl(pageName, { diff: 'cur', oldid: 'stable' }),
'Pregledaj i proveri (stable → current)',
't-fr-diff-stable',
'Otvori diff stabilna → trenutna (odavde ide prihvatanje izmene)'
);
/* -------------------------------------------------
* 6) Pametan link (sam bira: diff ako ima pending, inače istorija)
* ------------------------------------------------- */
mw.util.addPortletLink(
'p-tb',
getReviewEntryUrl(),
getReviewEntryText(),
't-fr-smart',
'Pametan link: vodi na najlogičniji korak'
);
/* -------------------------------------------------
* 7) Status: Provereno / Nepregledano (klikabilno)
* ------------------------------------------------- */
var statusText = (hasStable && !hasPending) ? 'Status: Provereno' : 'Status: Nepregledano';
mw.util.addPortletLink(
'p-tb',
getReviewEntryUrl(),
statusText,
't-fr-status',
'Klik vodi na pregled (diff) ili istoriju'
);
});