מדיה ויקי:Gadget-browsertab.js: הבדלים בין גרסאות בדף
מראה
אין תקציר עריכה |
שחזור לגרסה 32695815 מ־22:28, 30 בנובמבר 2021 מאת IKhitron |
||
| שורה 55: | שורה 55: | ||
// get the short name | // get the short name | ||
var api = new mw.Api(); | var api = new mw.Api(); | ||
api.get(params) | api.get(params) | ||
.done(function(data) { | .done(function(data) { | ||
// set the new title | // set the new title | ||
$(document) | $(document) | ||
.prop('title', partext + letter + String.fromCharCode(8207) | .prop('title', partext + letter + String.fromCharCode(8207) | ||
גרסה מ־20:50, 30 בנובמבר 2021
/*
This gadget shortens the tab browser title.
For example,
"(1) שיחה:אורי צבי גרינברג – הבדלי גרסאות"
יהפוך להיות
"(1) =ש:אורי צבי גרינברג – השוואה"
To understand RTL, the translated result is
"(1) =ShortNamespacePageName – diff".
The structure of the new title includes:
1) Browser number data, as "(1) ", if existed in the original title.
2) Action symbol, "=" for diff, "!" for editing, ";" for history, nothing for reading.
3) Page name with shortened namespace.
4) Text " – "
5) Action full name, like "ויקיפדיה" for reading, "השוואה", "עריכה", "היסטוריה".
There is no change for two different pages comparing.
*/
$(function () {
//exit on non Hebrew
if (mw.config.get('wgUserLanguage') != 'he')
return;
// data about action symbols and names
var letters = {
view: ['', 'ויקיפדיה'],
purge: ['', 'ויקיפדיה'],
submit: ['!', 'עריכה'],
edit: ['!', 'עריכה'],
history: [';', 'היסטוריה'],
diff: ['=', 'השוואה']
};
// api parameters
var params = {
action: 'expandtemplates',
text: '{{קיצור מרחב השם|' + mw.config.get('wgPageName').replaceAll('_', ' ') + '}}',
prop: 'wikitext',
format: 'json'
};
// find current action
var action, letter, actionname;
if ($('.difference-title').length)
action = 'diff';
else if ($('#contentSub').length && $('#contentSub').text().indexOf('הבדלים בין דפים') !== -1)
// different pages comparing, do not touch
return;
else
action = mw.config.get('wgAction');
// unknown action
if (letters[action] == null)
return;
else
[letter, actionname] = letters[action];
// get browser number data at title start
var oldtext = $(document).prop('title');
var par = oldtext.match(/\([^\)]*\)/);
var partext = par == null || oldtext.indexOf(par[0]) != 0 ? '' : par[0] + ' ';
// get the short name
var api = new mw.Api();
api.get(params)
.done(function(data) {
// set the new title
$(document)
.prop('title', partext + letter + String.fromCharCode(8207)
+ data.expandtemplates.wikitext.replace(''', "'").replace('"', '"') + ' – ' + actionname);
});
});
// dependencies=mediawiki.api