לדלג לתוכן

מדיה ויקי:Gadget-browsertab.js: הבדלים בין גרסאות בדף

מתוך צפונות ויקי
אין תקציר עריכה
אין תקציר עריכה
שורה 6: שורה 6:
"(1) =אורי צבי גרינברג – השוואה"
"(1) =אורי צבי גרינברג – השוואה"
To understand RTL, the translated result is
To understand RTL, the translated result is
"(1) =PageName — diff".
"(1) =PageName – diff".
The structure of the new title includes:
The structure of the new title includes:
1) Browser number data, as "(1) ", if existed in the original title.
1) Browser number data, as "(1) ", if existed in the original title.
2) Action symbol, "=" for diff, "^" for editing, "!" for history, nothing for reading.
2) Action symbol, "=" for diff, "^" for editing, "!" for history, nothing for reading.
3) Page name with shortened namespace.
3) Page name with shortened namespace.
4) Text " — "
4) Text " – "
5) Action full name, like "ויקיפדיה" for reading, "השוואה", "עריכה", "היסטוריה".
5) Action full name, like "ויקיפדיה" for reading, "השוואה", "עריכה", "היסטוריה".
There is no change for two different pages comparing.
There is no change for two different pages comparing.

גרסה מ־15:18, 29 בנובמבר 2021

/*
This gadget shortens the tab browser title.
For example,
"(1) אורי צבי גרינברג – הבדלי גרסאות"
יהפוך להיות
"(1) =אורי צבי גרינברג – השוואה"
To understand RTL, the translated result is
"(1) =PageName – 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 > 0)
		action = 'diff';
	else if ($('#contentSub').length > 0 && $('#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 + data.expandtemplates.wikitext + ' – ' + actionname);
		});
});
// dependencies=mediawiki.api