MediaWiki:Common.js: Difference between revisions
No edit summary Tag: Manual revert |
No edit summary |
||
| Line 109: | Line 109: | ||
}() ); | }() ); | ||
mw.loader.using(['mediawiki.util']).then(function () { | |||
if (mw.config.get('wgPageName') !== 'Main_Page') return; | |||
// Create top bar | |||
var bar = document.createElement('div'); | |||
bar.id = 'grantha-topbar'; | |||
bar.innerHTML = ` | |||
<div class="gt-left"> | |||
<img src="/favicon.ico" class="gt-icon"> | |||
<span class="gt-title">Grantha</span> | |||
</div> | |||
<div class="gt-right" id="gt-right"></div> | |||
`; | |||
document.body.appendChild(bar); | |||
// Admin check | |||
var groups = mw.config.get('wgUserGroups') || []; | |||
var isAdmin = groups.indexOf('sysop') !== -1; | |||
if (isAdmin) { | |||
var btn = document.createElement('button'); | |||
btn.innerText = '+ New Document'; | |||
btn.className = 'gt-btn'; | |||
btn.onclick = function () { | |||
var name = prompt('Enter new page name:'); | |||
if (!name) return; | |||
// Normalize title | |||
name = name.trim().replace(/\s+/g, '_'); | |||
var url = mw.util.getUrl(name, { action: 'edit' }); | |||
window.location.href = url; | |||
}; | |||
document.getElementById('gt-right').appendChild(btn); | |||
} | |||
}); | |||