לדלג לתוכן

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

מתוך צפונות ויקי
אין תקציר עריכה
אין תקציר עריכה
שורה 15: שורה 15:


function seen(obj) {
function seen(obj) {
obj.before(
obj.filter(function() {
$('<a>', {
return $(this)
.closest('.mw-changeslist-line-watched')
.find('a[href*="diff"]')
.filter(function() {
return $(this)
.closest('.mw-enhanced-rc-nested')
.length <= 0;
})
.length > 0;
})
.before($('<a>', {
text: '\u200f',
text: '\u200f',
title: i18n('mark'),
title: i18n('mark'),
href: '#nw',
href: '#nw',
class: 'mark-all-edits WLM-icon'
class: 'mark-all-edits WLM-icon'
}).click(function() {
})
.click(function() {
var $this = $(this);
var $this = $(this);
if (config.hidemarked.edit)
if (config.hidemarked.edit)
$('.yellowedit').hide();
$('.yellowedit')
var diff = /diff=([0-9]+)/.exec($this.parent().find('a[href*="diff"]').prop('href'))[1];
.hide();
new mw.Api().postWithToken('csrf', {
var diff = /diff=([0-9]+)/.exec($this.parent()
action: 'setnotificationtimestamp',
.find('a[href*="diff"]')
titles: $this.next().text(),
.prop('href'))[1];
newerthanrevid: diff
new mw.Api()
}).done(function() {
.postWithToken('csrf', {
unseen($this);
action: 'setnotificationtimestamp',
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
titles: $this.next()
.addClass('mw-changeslist-line-not-watched yellowedit');
.text(),
var name = $this.closest('.mw-changeslist-line-not-watched').find('.mw-changeslist-title').text();
newerthanrevid: diff
var prevs = $('.mw-changeslist-line-watched .mw-changeslist-title').filter(function() {
})
var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this).closest('.mw-changeslist-line-watched')
.done(function() {
.find('a[href*="diff"]').prop('href'));
unseen($this);
return thediff && $(this).text() == name && thediff[1] < diff;
$this.closest('.mw-changeslist-line-watched')
}).closest('.mw-changeslist-line-watched');
.removeClass('mw-changeslist-line-watched blueedit')
prevs.removeClass('mw-changeslist-line-watched blueedit')
.addClass('mw-changeslist-line-not-watched yellowedit');
.addClass('mw-changeslist-line-not-watched yellowedit').find('.mark-all-edits').remove();
var name = $this.closest('.mw-changeslist-line-not-watched')
prevs.show();
.find('.mw-changeslist-title')
unseen(prevs.find('span.mw-title'));
.text();
if (prevs.length > 0)
var prevs = $('.mw-changeslist-line-watched .mw-changeslist-title')
$this.closest('td, li').prepend($('<span>', {
.filter(function() {
text: ' ' + (prevs.length + 1) + ' ' + i18n('manymarked') + ' '
var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this)
.closest('.mw-changeslist-line-watched')
.find('a[href*="diff"]')
.prop('href'));
return thediff && $(this)
.text() == name && thediff[1] < diff;
})
})
.css({
.closest('.mw-changeslist-line-watched');
backgroundColor: 'red'
prevs.removeClass('mw-changeslist-line-watched blueedit')
}));
.addClass('mw-changeslist-line-not-watched yellowedit')
$this.remove();
.find('.mark-all-edits')
});
.remove();
})).filter(function() {
prevs.show();
return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0;
unseen(prevs.find('span.mw-title'));
})
if (prevs.length > 0)
.prev().remove();
$this.closest('td, li')
.prepend($('<span>', {
text: ' ' + (prevs.length + 1) + ' ' + i18n('manymarked') + ' '
})
.css({
backgroundColor: 'red'
}));
$this.remove();
});
}));
}
}


function unseen(obj) {
function unseen(obj) {
obj.before(
obj.filter(function() {
$('<a>', {
return $(this)
.closest('tr, li')
.find('a[href*="oldid"]')
.length > 0;
})
.before($('<a>', {
text: '\u200f',
text: '\u200f',
title: i18n('unmark'),
title: i18n('unmark'),
href: '#nw',
href: '#nw',
class: 'unmark-edits WLM-icon'
class: 'unmark-edits WLM-icon'
}).click(function() {
})
.click(function() {
var $this = $(this);
var $this = $(this);
var diffcond = $this.closest('.mw-changeslist-line-not-watched').find('abbr.newpage').length > 0;
var diffcond = $this.closest('.mw-changeslist-line-not-watched')
var oldrev = diffcond ? 0 : /oldid=([0-9]+)/.exec($this.parent().find('a[href*="oldid"]').prop('href'))[1];
.find('abbr.newpage')
var diff = diffcond ? 0 : /diff=([0-9]+)/.exec($this.parent().find('a[href*="diff"]').prop('href'))[1];
.length > 0;
new mw.Api().postWithToken('csrf', {
var oldrev = diffcond ? 0 : /oldid=([0-9]+)/.exec($this.parent()
action: 'setnotificationtimestamp',
.find('a[href*="oldid"]')
titles: $this.next().text(),
.prop('href'))[1];
newerthanrevid: oldrev
var diff = diffcond ? 0 : /diff=([0-9]+)/.exec($this.parent()
}).done(function() {
.find('a[href*="diff"]')
$this.closest('.mw-changeslist-line-not-watched')
.prop('href'))[1];
.removeClass('mw-changeslist-line-not-watched yellowedit')
new mw.Api()
.addClass('mw-changeslist-line-watched blueedit');
.postWithToken('csrf', {
seen($this);
action: 'setnotificationtimestamp',
var name = $this.closest('.mw-changeslist-line-watched').find('.mw-changeslist-title').text();
titles: $this.next()
var prevs = $('.mw-changeslist-line-not-watched .mw-changeslist-title').filter(function() {
.text(),
var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this).closest('.mw-changeslist-line-not-watched')
newerthanrevid: oldrev
.find('a[href*="diff"]').prop('href'));
})
return thediff && $(this).text() == name && thediff[1] > diff;
.done(function() {
}).closest('.mw-changeslist-line-not-watched');
$this.closest('.mw-changeslist-line-not-watched')
prevs.removeClass('mw-changeslist-line-not-watched yellowedit')
.removeClass('mw-changeslist-line-not-watched yellowedit')
.addClass('mw-changeslist-line-watched blueedit').find('.unmark-edits').remove();
.addClass('mw-changeslist-line-watched blueedit');
prevs.show();
seen($this);
seen(prevs.find('span.mw-title'));
var name = $this.closest('.mw-changeslist-line-watched')
$this.remove();
.find('.mw-changeslist-title')
});
.text();
})).filter(function() {
var prevs = $('.mw-changeslist-line-not-watched .mw-changeslist-title')
return $(this).closest('tr, li').find('a[href*="oldid"]').length <= 0;
.filter(function() {
})
var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this)
.prev().remove();
.closest('.mw-changeslist-line-not-watched')
.find('a[href*="diff"]')
.prop('href'));
return thediff && $(this)
.text() == name && thediff[1] > diff;
})
.closest('.mw-changeslist-line-not-watched');
prevs.removeClass('mw-changeslist-line-not-watched yellowedit')
.addClass('mw-changeslist-line-watched blueedit')
.find('.unmark-edits')
.remove();
prevs.show();
seen(prevs.find('span.mw-title'));
$this.remove();
});
}));
}
}


function hider(state) {
function hider(state) {
if (config.edit[state])
if (config.edit[state])
$('.mw-changeslist-line-not-watched').filter(function() {
$('.mw-changeslist-line-not-watched')
return $(this).find('abbr.wikibase-edit').length <= 0;
.filter(function() {
}).hide();
return $(this)
.find('abbr.wikibase-edit')
.length <= 0;
})
.hide();
if (config.log[state])
if (config.log[state])
$('[class*="mw-changeslist-log"]').hide();
$('[class*="mw-changeslist-log"]')
.hide();
if (config.wikidata[state])
if (config.wikidata[state])
$('abbr.wikibase-edit').closest('.mw-changeslist-line-watched, .mw-changeslist-line-not-watched').hide();
$('abbr.wikibase-edit')
.closest('.mw-changeslist-line-watched, .mw-changeslist-line-not-watched')
.hide();
}
}


function closeedit() {
function closeedit() {
$('td.mw-enhanced-rc, li span.mw-changeslist-date').parent().filter(function() {
$('td.mw-enhanced-rc, li span.mw-changeslist-date')
return $(this).find('td.mw-enhanced-rc-nested').length <= 0;
.parent()
}).prepend($('<a>', {
.filter(function() {
text: 'x\u200f',
return $(this)
title: i18n('close'),
.find('td.mw-enhanced-rc-nested')
href: '#nw',
.length <= 0;
class: 'close-edit'
})
}).click(function() {
.prepend($('<td>', {
$(this).closest('.mw-changeslist-line-not-watched, .mw-changeslist-line-watched').hide();
html: $('<a>', {
}));
text: 'x\u200f',
$('td.mw-enhanced-rc').parent().find('td.mw-enhanced-rc-nested').prev().before($('<td>'));
title: i18n('close'),
href: '#nw',
class: 'close-edit'
})
})
.click(function() {
$(this)
.closest('.mw-changeslist-line-not-watched, .mw-changeslist-line-watched')
.hide();
}));
$('td.mw-enhanced-rc')
.parent()
.find('td.mw-enhanced-rc-nested')
.prev()
.before($('<td>'));
}
}


function flowseen() {
function flowseen() {
$('.mw-changeslist-line-watched a.mw-title').before(
$('.mw-changeslist-line-watched a.mw-title')
$('<a>', {
.before($('<a>', {
text: '\u200f',
text: '\u200f',
title: i18n('markFlow'),
title: i18n('markFlow'),
href: '#nw',
href: '#nw',
class: 'mark-all-flow-edits WLM-icon'
class: 'mark-all-flow-edits WLM-icon'
})
})
.click(function() {
.click(function() {
var $this = $(this);
var $this = $(this);
var topic = 'נושא:' + /title=[^:]*:(.+)&/.exec($this.parent().find('a[href*="fromnotif"]').prop('href'))[1];
var topic = 'נושא:' + /title=[^:]*:(.+)&/.exec($this.parent()
var page = $this.parent().find('a.mw-title').prop('title');
.find('a[href*="fromnotif"]')
new mw.Api().postWithToken('csrf', {
.prop('href'))[1];
action: 'setnotificationtimestamp',
var page = $this.parent()
titles: topic + '|' + page,
.find('a.mw-title')
}).done(function() {
.prop('title');
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
new mw.Api()
.addClass('mw-changeslist-line-not-watched yellowedit');
.postWithToken('csrf', {
if (config.hidemarked.flow)
action: 'setnotificationtimestamp',
$this.closest('.mw-changeslist-line-watched').hide();
titles: topic + '|' + page,
$this.remove();
})
});
.done(function() {
}));
$this.closest('.mw-changeslist-line-watched')
.removeClass('mw-changeslist-line-watched blueedit')
.addClass('mw-changeslist-line-not-watched yellowedit');
if (config.hidemarked.flow)
$this.closest('.mw-changeslist-line-not-watched')
.hide();
$this.remove();
});
}));
}
}


function categoryseen() {
function categoryseen() {
var cat = $('.mw-changeslist-line-watched span.mw-title').filter(function() {
$('.mw-changeslist-line-watched span.mw-title')
return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0 && $(this)
.filter(function() {
.closest('.mw-changeslist-line-watched').find('abbr.newpage').length <= 0;
return $(this)
});
.closest('.mw-changeslist-line-watched')
var page = cat.parent().find('a.mw-changeslist-title').prop('title');
.find('a[href*="diff"]')
cat.before($('<a>', {
.length <= 0 && $(this)
text: '\u200f',
.closest('.mw-changeslist-line-watched')
title: i18n('markCat'),
.find('abbr.newpage')
href: '#nw',
.length <= 0;
class: 'mark-cat-edits WLM-icon'
})
})
.click(function() {
.before($('<a>', {
var $this = $(this);
text: '\u200f',
new mw.Api().postWithToken('csrf', {
title: i18n('markCat'),
action: 'setnotificationtimestamp',
href: '#nw',
titles: page,
class: 'mark-cat-edits WLM-icon'
}).done(function() {
})
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
.click(function() {
.addClass('mw-changeslist-line-not-watched yellowedit');
var $this = $(this);
if (config.hidemarked.categorization)
var page = $this.parent()
$this.closest('.mw-changeslist-line-watched').hide();
.find('a.mw-changeslist-title')
$this.remove();
.prop('title');
});
new mw.Api()
}));
.postWithToken('csrf', {
action: 'setnotificationtimestamp',
titles: page,
})
.done(function() {
$this.closest('.mw-changeslist-line-watched')
.removeClass('mw-changeslist-line-watched blueedit')
.addClass('mw-changeslist-line-not-watched yellowedit');
if (config.hidemarked.categorization)
$this.closest('.mw-changeslist-line-not-watched')
.hide();
$this.remove();
});
}));
}
}


שורה 183: שורה 270:
hider('starthidden');
hider('starthidden');
}
}
if (mw.config.get('wgCanonicalSpecialPageName') == 'Watchlist') {
if (mw.config.get('wgCanonicalSpecialPageName') == 'Watchlist') {
$('.mw-body-content').addClass((typeof window.orientation == 'undefined') ? 'WLM-desktop' : 'WLM-mobile');
$('.mw-body-content')
importStylesheet('משתמש:IKhitron/96.css');
.addClass((typeof window.orientation == 'undefined') ? 'WLM-desktop' : 'WLM-mobile');
importStylesheet('מדיה ויקי:WLM.css');
importStylesheet('משתמש:' + mw.config.get('wgUserName') + '/WLM.css');
var lang = mw.user.options.get('language') == 'he' ? 0 : 1;
var lang = mw.user.options.get('language') == 'he' ? 0 : 1;
var config;
var config;
$.get(mw.util.wikiScript(), {
$.get(mw.util.wikiScript(), {
title: "מדיה ויקי:WLM.json",
title: 'מדיה ויקי:WLM.json',
action: 'raw'
}).done(function(data) {
config = JSON.parse(data);
$.get(mw.util.wikiScript(), {
title: 'משתמש:' + mw.config.get('wgUserName') + '/WLM.json',
action: 'raw'
action: 'raw'
}).done(function(data1) {
})
config = JSON.parse(data1);
.done(function(data) {
main();
config = JSON.parse(data);
}).fail(function() {
$.get(mw.util.wikiScript(), {
main();
title: 'משתמש:' + mw.config.get('wgUserName') + '/WLM.json',
action: 'raw'
})
.done(function(data1) {
config = JSON.parse(data1);
main();
})
.fail(function() {
main();
});
})
.fail(function() {
alert(i18n('jsonlost'));
});
});
}).fail(function() {
mw.loader.using('mediawiki.util')
alert(i18n('jsonlost'));
.done(function() {
});
$('#mw-watchlist-form')
mw.loader.using('mediawiki.util').done(function() {
.after($('<input>', {
$('#mw-watchlist-form').after($('<input>', {
value: i18n('hideAll'),
value: i18n('hideAll'),
id: 'hideAll',
id: 'hideAll',
type: 'submit'
type: 'submit'
}))
}))
.after($('<span>', {
.after($('<span>', {
text: 'place',
text: 'place',
id: 'placeholder'
id: 'placeholder'
})
}).css('visibility', 'hidden'))
.css('visibility', 'hidden'))
.after($('<input>', {
.after($('<input>', {
value: i18n('showAll'),
value: i18n('showAll'),
id: 'showAll',
id: 'showAll',
type: 'submit'
type: 'submit'
}))
}))
.after($('<div>', {
.after($('<div>', {
text: 'place',
text: 'place',
id: 'placeline'
id: 'placeline'
}).css({
})
visibility: 'hidden',
.css({
'font-size': '50%'
visibility: 'hidden',
}));
'font-size': '50%'
$('#hideAll').click(function() {
}));
hider('hide');
$('#hideAll')
});
.click(function() {
$('#showAll').click(function() {
hider('hide');
$('.mw-changeslist-line-watched').show();
});
if (config.edit.show)
$('#showAll')
$('.mw-changeslist-line-not-watched').filter(function() {
.click(function() {
return $(this).find('abbr.wikibase-edit').length <= 0;
$('.mw-changeslist-line-watched')
}).show();
.show();
if (config.log.show)
if (config.edit.show)
$('[class*="mw-changeslist-log"]').show();
$('.mw-changeslist-line-not-watched')
if (config.wikidata.show)
.filter(function() {
$('abbr.wikibase-edit').closest('.mw-changeslist-line-not-watched').show();
return $(this)
.find('abbr.wikibase-edit')
.length <= 0;
})
.show();
if (config.log.show)
$('[class*="mw-changeslist-log"]')
.show();
if (config.wikidata.show)
$('abbr.wikibase-edit')
.closest('.mw-changeslist-line-not-watched')
.show();
});
});
});
});
}
}

גרסה מ־15:37, 26 בספטמבר 2016

function i18n(name) {
	var msg = {
		mark: ['סימון כעריכה שנקראה', 'Mark as read'],
		unmark: ['סימון כעריכה שלא נקראה', 'Mark as unread'],
		close: ['הסתרת העריכה', 'Hide revision'],
		markFlow: ['סימון זרימה כנקראה', 'Mark flow as read'],
		markCat: ['סימון קטגוריה כנקראה', 'Mark categorization as read'],
		manymarked: ['שורות סומנו', 'lines marked'],
		jsonlost: ['קובץ קונפיגורציה לא אותר', 'Configuration file not found'],
		hideAll: ['הסתרת עריכות שנקראו', 'Hide all read'],
		showAll: ['הצגת עריכות שהוסתרו', 'Show all hidden']
	};
	return msg[name][lang];
}

function seen(obj) {
	obj.filter(function() {
			return $(this)
				.closest('.mw-changeslist-line-watched')
				.find('a[href*="diff"]')
				.filter(function() {
					return $(this)
						.closest('.mw-enhanced-rc-nested')
						.length <= 0;
				})
				.length > 0;
		})
		.before($('<a>', {
				text: '\u200f',
				title: i18n('mark'),
				href: '#nw',
				class: 'mark-all-edits WLM-icon'
			})
			.click(function() {
				var $this = $(this);
				if (config.hidemarked.edit)
					$('.yellowedit')
					.hide();
				var diff = /diff=([0-9]+)/.exec($this.parent()
					.find('a[href*="diff"]')
					.prop('href'))[1];
				new mw.Api()
					.postWithToken('csrf', {
						action: 'setnotificationtimestamp',
						titles: $this.next()
							.text(),
						newerthanrevid: diff
					})
					.done(function() {
						unseen($this);
						$this.closest('.mw-changeslist-line-watched')
							.removeClass('mw-changeslist-line-watched blueedit')
							.addClass('mw-changeslist-line-not-watched yellowedit');
						var name = $this.closest('.mw-changeslist-line-not-watched')
							.find('.mw-changeslist-title')
							.text();
						var prevs = $('.mw-changeslist-line-watched .mw-changeslist-title')
							.filter(function() {
								var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this)
									.closest('.mw-changeslist-line-watched')
									.find('a[href*="diff"]')
									.prop('href'));
								return thediff && $(this)
									.text() == name && thediff[1] < diff;
							})
							.closest('.mw-changeslist-line-watched');
						prevs.removeClass('mw-changeslist-line-watched blueedit')
							.addClass('mw-changeslist-line-not-watched yellowedit')
							.find('.mark-all-edits')
							.remove();
						prevs.show();
						unseen(prevs.find('span.mw-title'));
						if (prevs.length > 0)
							$this.closest('td, li')
							.prepend($('<span>', {
									text: ' ' + (prevs.length + 1) + ' ' + i18n('manymarked') + ' '
								})
								.css({
									backgroundColor: 'red'
								}));
						$this.remove();
					});
			}));
}

function unseen(obj) {
	obj.filter(function() {
			return $(this)
				.closest('tr, li')
				.find('a[href*="oldid"]')
				.length > 0;
		})
		.before($('<a>', {
				text: '\u200f',
				title: i18n('unmark'),
				href: '#nw',
				class: 'unmark-edits WLM-icon'
			})
			.click(function() {
				var $this = $(this);
				var diffcond = $this.closest('.mw-changeslist-line-not-watched')
					.find('abbr.newpage')
					.length > 0;
				var oldrev = diffcond ? 0 : /oldid=([0-9]+)/.exec($this.parent()
					.find('a[href*="oldid"]')
					.prop('href'))[1];
				var diff = diffcond ? 0 : /diff=([0-9]+)/.exec($this.parent()
					.find('a[href*="diff"]')
					.prop('href'))[1];
				new mw.Api()
					.postWithToken('csrf', {
						action: 'setnotificationtimestamp',
						titles: $this.next()
							.text(),
						newerthanrevid: oldrev
					})
					.done(function() {
						$this.closest('.mw-changeslist-line-not-watched')
							.removeClass('mw-changeslist-line-not-watched yellowedit')
							.addClass('mw-changeslist-line-watched blueedit');
						seen($this);
						var name = $this.closest('.mw-changeslist-line-watched')
							.find('.mw-changeslist-title')
							.text();
						var prevs = $('.mw-changeslist-line-not-watched .mw-changeslist-title')
							.filter(function() {
								var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this)
									.closest('.mw-changeslist-line-not-watched')
									.find('a[href*="diff"]')
									.prop('href'));
								return thediff && $(this)
									.text() == name && thediff[1] > diff;
							})
							.closest('.mw-changeslist-line-not-watched');
						prevs.removeClass('mw-changeslist-line-not-watched yellowedit')
							.addClass('mw-changeslist-line-watched blueedit')
							.find('.unmark-edits')
							.remove();
						prevs.show();
						seen(prevs.find('span.mw-title'));
						$this.remove();
					});
			}));
}

function hider(state) {
	if (config.edit[state])
		$('.mw-changeslist-line-not-watched')
		.filter(function() {
			return $(this)
				.find('abbr.wikibase-edit')
				.length <= 0;
		})
		.hide();
	if (config.log[state])
		$('[class*="mw-changeslist-log"]')
		.hide();
	if (config.wikidata[state])
		$('abbr.wikibase-edit')
		.closest('.mw-changeslist-line-watched, .mw-changeslist-line-not-watched')
		.hide();
}

function closeedit() {
	$('td.mw-enhanced-rc, li span.mw-changeslist-date')
		.parent()
		.filter(function() {
			return $(this)
				.find('td.mw-enhanced-rc-nested')
				.length <= 0;
		})
		.prepend($('<td>', {
				html: $('<a>', {
					text: 'x\u200f',
					title: i18n('close'),
					href: '#nw',
					class: 'close-edit'
				})
			})
			.click(function() {
				$(this)
					.closest('.mw-changeslist-line-not-watched, .mw-changeslist-line-watched')
					.hide();
			}));
	$('td.mw-enhanced-rc')
		.parent()
		.find('td.mw-enhanced-rc-nested')
		.prev()
		.before($('<td>'));
}

function flowseen() {
	$('.mw-changeslist-line-watched a.mw-title')
		.before($('<a>', {
				text: '\u200f',
				title: i18n('markFlow'),
				href: '#nw',
				class: 'mark-all-flow-edits WLM-icon'
			})
			.click(function() {
				var $this = $(this);
				var topic = 'נושא:' + /title=[^:]*:(.+)&/.exec($this.parent()
					.find('a[href*="fromnotif"]')
					.prop('href'))[1];
				var page = $this.parent()
					.find('a.mw-title')
					.prop('title');
				new mw.Api()
					.postWithToken('csrf', {
						action: 'setnotificationtimestamp',
						titles: topic + '|' + page,
					})
					.done(function() {
						$this.closest('.mw-changeslist-line-watched')
							.removeClass('mw-changeslist-line-watched blueedit')
							.addClass('mw-changeslist-line-not-watched yellowedit');
						if (config.hidemarked.flow)
							$this.closest('.mw-changeslist-line-not-watched')
							.hide();
						$this.remove();
					});
			}));
}

function categoryseen() {
	$('.mw-changeslist-line-watched span.mw-title')
		.filter(function() {
			return $(this)
				.closest('.mw-changeslist-line-watched')
				.find('a[href*="diff"]')
				.length <= 0 && $(this)
				.closest('.mw-changeslist-line-watched')
				.find('abbr.newpage')
				.length <= 0;
		})
		.before($('<a>', {
				text: '\u200f',
				title: i18n('markCat'),
				href: '#nw',
				class: 'mark-cat-edits WLM-icon'
			})
			.click(function() {
				var $this = $(this);
				var page = $this.parent()
					.find('a.mw-changeslist-title')
					.prop('title');
				new mw.Api()
					.postWithToken('csrf', {
						action: 'setnotificationtimestamp',
						titles: page,
					})
					.done(function() {
						$this.closest('.mw-changeslist-line-watched')
							.removeClass('mw-changeslist-line-watched blueedit')
							.addClass('mw-changeslist-line-not-watched yellowedit');
						if (config.hidemarked.categorization)
							$this.closest('.mw-changeslist-line-not-watched')
							.hide();
						$this.remove();
					});
			}));
}

function main() {
	seen($('.mw-changeslist-line-watched span.mw-title'));
	unseen($('.mw-changeslist-line-not-watched span.mw-title'));
	flowseen();
	categoryseen();
	closeedit();
	hider('starthidden');
}

if (mw.config.get('wgCanonicalSpecialPageName') == 'Watchlist') {
	$('.mw-body-content')
		.addClass((typeof window.orientation == 'undefined') ? 'WLM-desktop' : 'WLM-mobile');
	importStylesheet('מדיה ויקי:WLM.css');
	importStylesheet('משתמש:' + mw.config.get('wgUserName') + '/WLM.css');
	var lang = mw.user.options.get('language') == 'he' ? 0 : 1;
	var config;
	$.get(mw.util.wikiScript(), {
			title: 'מדיה ויקי:WLM.json',
			action: 'raw'
		})
		.done(function(data) {
			config = JSON.parse(data);
			$.get(mw.util.wikiScript(), {
					title: 'משתמש:' + mw.config.get('wgUserName') + '/WLM.json',
					action: 'raw'
				})
				.done(function(data1) {
					config = JSON.parse(data1);
					main();
				})
				.fail(function() {
					main();
				});
		})
		.fail(function() {
			alert(i18n('jsonlost'));
		});
	mw.loader.using('mediawiki.util')
		.done(function() {
			$('#mw-watchlist-form')
				.after($('<input>', {
					value: i18n('hideAll'),
					id: 'hideAll',
					type: 'submit'
				}))
				.after($('<span>', {
						text: 'place',
						id: 'placeholder'
					})
					.css('visibility', 'hidden'))
				.after($('<input>', {
					value: i18n('showAll'),
					id: 'showAll',
					type: 'submit'
				}))
				.after($('<div>', {
						text: 'place',
						id: 'placeline'
					})
					.css({
						visibility: 'hidden',
						'font-size': '50%'
					}));
			$('#hideAll')
				.click(function() {
					hider('hide');
				});
			$('#showAll')
				.click(function() {
					$('.mw-changeslist-line-watched')
						.show();
					if (config.edit.show)
						$('.mw-changeslist-line-not-watched')
						.filter(function() {
							return $(this)
								.find('abbr.wikibase-edit')
								.length <= 0;
						})
						.show();
					if (config.log.show)
						$('[class*="mw-changeslist-log"]')
						.show();
					if (config.wikidata.show)
						$('abbr.wikibase-edit')
						.closest('.mw-changeslist-line-not-watched')
						.show();
				});
		});
}