User:SHEIKH/MobileMenu.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
//মূল [[:en:User:Ainz Ooal Gown/mobilemorelinks.js]]
//বাংলা উইকির জন্য কাস্টমাইজেশন- [[User:Yahya]]
//অনুবাদ ও পরামর্শ-[[User:SHEIKH]]
//মূল নামস্থান
$.when(mw.loader.using(['mediawiki.util', 'oojs-ui-core','oojs-ui.styles.icons-editing-core', 'oojs-ui.styles.icons-movement', 'oojs-ui.styles.icons-interactions','oojs-ui.styles.icons-content','oojs-ui.styles.icons-wikimedia','oojs-ui.styles.icons-editing-citation'])).then(function () {
// JavaScript variables
var oobutton = OO.ui.ButtonWidget,
oomenuoption = OO.ui.MenuOptionWidget,
namespaceNumber = mw.config.get('wgNamespaceNumber'),
serverName = mw.config.get('wgServerName'),
siteName = mw.config.get('wgSiteName'),
contentLanguage = mw.config.get('wgContentLanguage'),
wikidataId = mw.config.get('wgWikibaseItemId'),
articleId = mw.config.get('wgArticleId'),
noticeProject = mw.config.get('wgNoticeProject'),
getUrl = mw.util.getUrl,
mainpagecheck = mw.config.get('wgIsMainPage'),
amcMode = mw.config.get('wgMFAmc'),
pageName = mw.config.get('wgPageName'),
escapedPageName = pageName.replace( /[!'"()*]/g, escape ),
encodedPageName = encodeURIComponent(pageName),
curRevId = mw.config.get('wgCurRevisionId') ,
mwDBname = mw.config.get( 'wgDBname' ),
encodedTitle = encodeURIComponent( mw.config.get( 'wgTitle' ) );
if ( articleId && articleId !== 0 ) {
// Button links
var commonlink = function($) {
var whatlinks = getUrl( 'Special:WhatLinksHere', { hideredirs: 1, target: pageName} ) ,
pageviews = '//tools.wmflabs.org/pageviews/?project=' + serverName +'&platform=all-access&agent=user&range=latest-90&pages=' + encodedPageName ,
infos = '//tools.wmflabs.org/xtools-articleinfo/index.php?project='+ serverName +'&article='+ encodedPageName ,
rename = getUrl( 'Special:MovePage/' + pageName),
logs = getUrl( 'Special:Log', { action: 'view', page: pageName} ) ,
purge = getUrl( pageName, { action: 'purge', forcelinkupdate: 'true' } ),
subpage = getUrl( 'Special:PrefixIndex/' + pageName),
searchinwp = '//www.google.com/search?safe=off&hl=' + contentLanguage + '&q='+ encodedPageName +'+site%3A' + serverName ,
latestdiff = getUrl( pageName, { action: 'view', diff: curRevId} ) ,
permalink = getUrl( pageName, { action: 'view', oldid: curRevId} ),
sbyc = '//xtools.wmflabs.org/topedits/' + serverName + '?namespace=' + namespaceNumber + '&page=' + encodedTitle ,
wikiblame = 'http://wikipedia.ramselehof.de/wikiblame.php?lang=' + contentLanguage + '&project=' + noticeProject + '&article=' + encodedPageName ,
croptool = '//tools.wmflabs.org/croptool/?title=https%3A%2F%2F'+ encodeURIComponent(serverName) +'%2Fwiki%2F'+ encodedPageName ,
wikidatalink = '//m.wikidata.org/wiki/' + wikidataId ,
reasonator = '//tools.wmflabs.org/reasonator/?lang=' + contentLanguage + '&q=' + wikidataId ,
refill = '//tools.wmflabs.org/refill/ng/result.php?method-wiki=Fix+page&addblankmetadata=on&wiki=' + contentLanguage + '&usedomainaswork=on&page=' + encodedPageName ,
iabot = '//tools.wmflabs.org/iabot/index.php?page=runbotsingle&wiki=' + mwDBname + '&pagesearch=' + pageName ,
copy = '//tools.wmflabs.org/copyvios?action=search&turnitin=1&use_engine=1&use_links=1&lang=' + contentLanguage + '&project=' + noticeProject +'&title=' + encodedPageName ,
commonshelper = '//tools.wmflabs.org/commonshelper/?language='+ contentLanguage +'&project='+ noticeProject +'&image='+ encodedTitle ,
etocom = '//commons.m.wikimedia.org/wiki/Special:ImportFile?importSource=FileExporter&clientUrl=%2F%2F'+ serverName +'%2Fwiki%2F'+ encodedPageName ,
sigma = '//tools.wmflabs.org/sigma/articleinfo.py?page=' + encodedPageName + '&server=' + mwDBname ,
shortLink= '//bn.m.wikipedia.org/?curid=' + articleId,
upload = getUrl( 'Special:Upload' ),
dellog = getUrl( 'Special:Log', { type: 'delete', page: pageName} ) ,
protectlog = getUrl( 'Special:Log', { type: 'protect', page: pageName} ) ,
pagemovelog = getUrl( 'Special:Log', { type: 'move', page: pageName} ) ,
pendingchangeslog = getUrl( 'Special:Log', { type: 'stable', page: pageName} ) ,
pageinfo = getUrl( null, { action: 'info'} ) ;
//Button widgets
var whatlinksBtn = new oobutton({
label: 'সংযুক্ত পাতাসমূহ',
href: whatlinks ,
icon: 'articleRedirect'
}),
permalinkBtn = new oobutton({
label: 'স্থায়ী সংযোগ',
href: permalink ,
icon: 'link'
}),
croptoolBtn = new oobutton({
label: 'ক্রপ টুল',
href: croptool
}),
wikidataBtn = new oobutton({
label: 'উইকিউপাত্ত',
href: wikidatalink ,
icon: 'logoWikidata'
}),
reasonatorBtn = new oobutton({
label: 'রিজোনেটর',
href: reasonator ,
icon: 'logoWikidata',
flags: 'progressive'
}),
etocomBtn = new oobutton({
label: 'কমন্সে রপ্তানি করুন',
href: etocom ,
flags: ['primary','progressive'] ,
icon: 'logoWikimediaCommons'
}),
chBtn = new oobutton({
label: 'কমন্স হেল্পার',
href: commonshelper ,
flags: 'progressive' ,
icon: 'logoWikimediaCommons'
}),
pageinfoBtn = new oobutton({
label: 'মৌলিক তথ্য',
href: pageinfo ,
icon: 'info'
});
// Common drop-down start
var commondropdown = new OO.ui.FieldLayout( new OO.ui.Widget({
content: [
new OO.ui.DropdownWidget({
label: 'পাতার মেনু',
menu: {
items: [
// Page logs
new OO.ui.DropdownWidget({
label: 'পাতার লগ',
menu: {
items: [
new oomenuoption({
label: $( '<a href='+ logs +'>সকল লগ</a>')
}),
new oomenuoption({
label: $( '<a href='+ dellog +'>অপসারণ লগ</a>')
}),
new oomenuoption({
label: $( '<a href='+ pagemovelog +'>স্থানান্তর লগ</a>')
}),
new oomenuoption({
label: $( '<a href='+ pendingchangeslog +'>অপর্যালোচিত পরিবর্তন লগ</a>')
}),
new oomenuoption({
label: $( '<a href='+ protectlog +'>সুরক্ষা লগ</a>')
})
],
hideOnChoose: false
}
}),
// Page analysis
new OO.ui.DropdownWidget({
label: 'পাতা বিশ্লেষণ',
menu: {
items: [
new oomenuoption({
label: $( '<a href='+ infos +'>বিশ্লেষণ – এক্স সরঞ্জাম</a>'),
icon: 'infoFilled'
}),
new oomenuoption({
label: $( '<a href='+ sigma +'>বিশ্লেষণ – Σ</a>')
}),
new oomenuoption({
label: $( '<a href='+ pageviews +'>পাতা পরিদর্শন প্রতিবেদন</a>'),
icon: 'info'
})
],
hideOnChoose: false
}
}),
//Other tools
new OO.ui.DropdownWidget({
label: 'অন্যান্য',
menu: {
items: [
new oomenuoption({
label: $( '<a href='+ latestdiff +'>সর্বশেষ পার্থক্য</a>')
}),
new oomenuoption({
label: $( '<a href='+ rename +'>পাতা স্থানান্তর</a>'),
icon: 'move'
}),
new oomenuoption({
label: $( '<a href='+ purge +'>ক্যাশে শোধন</a>'),
icon: 'reload'
}),
new oomenuoption({
label: $( '<a href='+ sbyc +'>অবদানকারীর ভিত্তিতে খুঁজুন</a>'),
icon: 'articleSearch'
}),
new oomenuoption({
label: $( '<a href='+ wikiblame +'>সংস্করণ ইতিহাস খুঁজুন</a>'),
icon: 'articleSearch'
}),
new oomenuoption({
label: $( '<a href='+ subpage +'>উপপাতা</a>'),
}),
new oomenuoption({
label: $( '<a href='+ shortLink +'>সংক্ষিপ্ত লিংক</a>'),
}),
new oomenuoption({
label: $( '<a href='+ upload +'>চিত্র আপলোড</a>'),
}),
],
hideOnChoose: false
}
})
]
}
})
]
}));
//Common drop-down end
//Article and draft tools
var toolsdropdown = new OO.ui.FieldLayout( new OO.ui.Widget({
content: [
new OO.ui.DropdownWidget({
label: 'সরঞ্জাম',
menu: {
items: [
new oomenuoption({
label: $( '<a href='+ copy +'>কপিরাইট লঙ্ঘন শনাক্তকরণ</a>')
}),
new oomenuoption({
label: $( '<a href='+ refill +'>সূত্র পূরণ</a>'),
icon: 'references'
}),
new oomenuoption({
label: $( '<a href='+ iabot +'>অকার্যকর সংযোগ ঠিক করুন</a>'),
icon: 'robot'
})
],
hideOnChoose: false
}
})
]
}));
//Change link order here
//Don't show if AMC mode is enabled
if (amcMode == false) {
$("#bodyContent").append( pageinfoBtn.$element, permalinkBtn.$element, whatlinksBtn.$element );
}
// File only buttons
if ( namespaceNumber == 6 ) {
//CropTool. Only load on file pages in specified format, and that have files in it (not file redirects.
if ( document.getElementById('file') && /(PNG|GIF|JPE?G|DJVU|PDF|TIF?F)$/i.test( mw.config.get( 'wgTitle' ) ) ) {
$("#bodyContent").append( croptoolBtn.$element );
}
// Move to Commons start. Doesn't load on Commons and test-wiki
if ( noticeProject !== "commons" && noticeProject !== "test" ) {
$("#bodyContent").append( chBtn.$element, etocomBtn.$element );
}
//Move to Commons end
}
// Does not load on pages that are not connected to Wikidata
if ( wikidataId && wikidataId !== null ) {
$("#bodyContent").append( reasonatorBtn.$element );
// Show if AMC mode is not enabled or it's a main page
if (amcMode == false || mainpagecheck == true) {
$("#bodyContent").append( wikidataBtn.$element );
}
}
//Common drop down
$("#bodyContent").append( commondropdown.$element );
//Only load in pages that are in draft or main namespace. Don't load in main page
if ((pageName.indexOf('Draft:') !== -1) || (namespaceNumber == 0) && (mainpagecheck == null)) {
//Only load in Wikipedias
if ( noticeProject === "wikipedia" ) {
$("#bodyContent").append( toolsdropdown.$element );
}
}
// Article and draft only links end
}}
$(document).ready(commonlink);
});
//ব্যবহারকারী নামস্থান
$.when(mw.loader.using(['mediawiki.util','oojs-ui-widgets', 'oojs-ui-core','oojs-ui.styles.icons-alerts','oojs-ui.styles.icons-content', 'oojs-ui.styles.icons-interactions','oojs-ui.styles.icons-location','oojs-ui.styles.icons-user'])).then(function () {
// JavaScript variables
var oobutton = OO.ui.ButtonWidget,
namespaceNumber = mw.config.get('wgNamespaceNumber'),
serverName = mw.config.get('wgServerName'),
siteName = mw.config.get('wgSiteName'),
userGroups = mw.config.get('wgUserGroups'),
contentLanguage = mw.config.get('wgContentLanguage'),
noticeProject = mw.config.get('wgNoticeProject'),
pageName = mw.config.get('wgPageName'),
userName = mw.config.get('wgRelevantUserName'),
getUrl = mw.util.getUrl,
mwDBname = mw.config.get('wgDBname'),
escapedUserName = userName.replace( /[?!'()*]/g, escape ),
encodedUserName = encodeURIComponent(userName);
// Namespace module
// Only works in userspace
if ( namespaceNumber === 2 || namespaceNumber === 3 || mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Contributions' || !!mw.util.getParamValue("user") ) {
//Button links
var userBtnLinks = function($) {
var contribs = getUrl( 'Special:Contributions/' + userName ) ,
email = getUrl( 'Special:EmailUser/' + userName ) ,
localusergroup = getUrl( 'Special:ListUsers', { limit: 1, username: userName } ) ,
rightchange = '//xtools.wmflabs.org/ec-rightschanges/' + serverName + '/' + encodedUserName ,
thanksreceived = getUrl( 'Special:Log', { page: 'User:' + userName, type: 'thanks' } ) ,
useruploads = getUrl( 'Special:ListFiles', { ilshowall: '1', user: userName} ) ,
alluserlog = getUrl( 'Special:Log', { action: 'view', user: userName} ) ,
abuselog = getUrl( 'Special:AbuseLog', { wpSearchUser: userName} ) ,
spamlog = getUrl( 'Special:Log', { type: 'spamblacklist', user: userName} ) ,
thankslog = getUrl( 'Special:Log', { type: 'thanks', user: userName} ) ,
globalinfo = getUrl( 'Special:CentralAuth', { target: userName} ),
movelog = getUrl( 'Special:Log', { type: 'move', user: userName} ) ,
uploadlog = getUrl( 'Special:Log', { type: 'upload', user: userName} ) ,
titleblacklistlog = getUrl( 'Special:Log', { type: 'titleblacklist', user: userName} ) ,
usercreationlog = getUrl( 'Special:Log', { type: 'newusers', user: userName} ) ,
useranalysis = '//xtools.wmflabs.org/ec/' + serverName + '/' + encodedUserName ,
articlescreated = '//xtools.wmflabs.org/pages/' + serverName + '/' + encodedUserName + '/0',
summaryusage = '//xtools.wmflabs.org/editsummary/' + serverName + '/' + encodedUserName ,
nonautomatededits = '//xtools.wmflabs.org/autoedits/' + serverName + '/' + encodedUserName ,
globalcontribs = '//tools.wmflabs.org/guc/?user=' + encodedUserName + '&blocks=true' ,
topedits = '//xtools.wmflabs.org/topedits/' + serverName + '/' + encodedUserName + '/0' ,
summarysearch = '//tools.wmflabs.org/sigma/summary.py?name=' + encodedUserName +'&server=' + mwDBname ;
// Drop-down widget start
var userdropdown = new OO.ui.FieldLayout( new OO.ui.Widget({
content: [
// Multi drop-down menu start
new OO.ui.DropdownWidget({
label: 'ব্যবহারকারী মেনু',
menu: {
items: [
//Analysis menu start
new OO.ui.DropdownWidget({
label: 'ব্যবহারকারী বিশ্লেষণ',
menu: {
items: [
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ useranalysis +'>বিশ্লেষণ-এক্সটুলস</a>'),
icon: 'info'
}),
new OO.ui.MenuOptionWidget({
icon: 'articles',
label: $( '<a href='+ articlescreated +'>প্রণীত নিবন্ধ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ summaryusage +'>সম্পাদনা সারাংশের ব্যবহার</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ summarysearch +'>সম্পাদনা সারাংশ খুঁজুন</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ globalcontribs +'>বৈশ্বিক অবদান</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ nonautomatededits +'>অ-স্বয়ংকৃয় সম্পাদনা</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ topedits +'>শীর্ষ সম্পাদনা</a>')
})
],
hideOnChoose: false
}
}),
//Logs Drop-down menu start
new OO.ui.DropdownWidget({
label: 'ব্যবহারকারী লগ',
menu: {
items: [
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ abuselog +'>অপব্যবহার ফিল্টার লগ</a>')
}),
new OO.ui.MenuOptionWidget({
icon: 'userAvatarOutline',
label: $( '<a href='+ alluserlog +'>সকল লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ movelog +'>স্থানান্তর লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ spamlog +'>স্পাম কালোতালিকা লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ titleblacklistlog +'>শিরোনাম কালো তালিকাভুক্ত লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ uploadlog +'>আপলোড লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ usercreationlog +'>ব্যবহারকারী সৃষ্টির লগ</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ thankslog +'>ধন্যবাদ লগ</a>')
})
],
hideOnChoose: false
}
}),
//Other user tools drop-down menu start
new OO.ui.DropdownWidget({
label: 'ব্যবহারকারী সরঞ্জাম',
menu: {
items: [
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ contribs +'>অবদানসমূহ</a>')
}),
new OO.ui.MenuOptionWidget({
icon: 'message',
label: $( '<a href='+ email +'>ইমেইল করুন</a>')
}),
new OO.ui.MenuOptionWidget({
icon: 'upload',
label: $( '<a href='+ useruploads +'>আপলোডকৃত ফাইল</a>')
}),
new OO.ui.MenuOptionWidget({
icon: 'globe',
label: $( '<a href='+ globalinfo +'>বৈশ্বিক অ্যাকাউন্টের তথ্য</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ localusergroup +'>স্থানীয় ব্যবহারকারী অধিকার</a>')
}),
new OO.ui.MenuOptionWidget({
label: $( '<a href='+ rightchange +'>ব্যবহারকারীর অধিকার পরিবর্তন</a>')
}),
new OO.ui.MenuOptionWidget({
icon: 'speechBubbles',
label: $( '<a href='+ thanksreceived +'>ব্যবহারকারীর ধন্যবাদ প্রাপ্তি</a>')
})
],
hideOnChoose: false
}
})
// Multi drop-down end
]
}
}),
//End
]
}));
//Append the drop-down menu and button within the bodyContent id
$("#bodyContent").append( userdropdown.$element );
}}
$(document).ready(userBtnLinks);
});