לדלג לתוכן

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

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


function seen(obj) {
function seen(obj) {
    obj.before(
obj.before(
            $('<a>', {
$('<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 (window.script96 !== 'unhide') $('.yellowedit').hide();
if (config.hidemarked.edit)
                var diff = /diff=([0-9]+)/.exec($this.parent().find('a[href*="diff"]').prop('href'))[1];
$('.yellowedit').hide();
                new mw.Api().postWithToken('csrf', {
var diff = /diff=([0-9]+)/.exec($this.parent().find('a[href*="diff"]').prop('href'))[1];
                    action: 'setnotificationtimestamp',
new mw.Api().postWithToken('csrf', {
                    titles: $this.next().text(),
action: 'setnotificationtimestamp',
                    newerthanrevid: diff
titles: $this.next().text(),
                }).done(function() {
newerthanrevid: diff
                    unseen($this);
}).done(function() {
                    $this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
unseen($this);
                        .addClass('mw-changeslist-line-not-watched yellowedit');
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
                    var name = $this.closest('.mw-changeslist-line-not-watched').find('.mw-changeslist-title').text();
.addClass('mw-changeslist-line-not-watched yellowedit');
                    var prevs = $('.mw-changeslist-line-watched .mw-changeslist-title').filter(function() {
var name = $this.closest('.mw-changeslist-line-not-watched').find('.mw-changeslist-title').text();
                        var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this).closest('.mw-changeslist-line-watched')
var prevs = $('.mw-changeslist-line-watched .mw-changeslist-title').filter(function() {
                            .find('a[href*="diff"]').prop('href'));
var thediff = /.*diff=([0-9]+).*oldid.*/.exec($(this).closest('.mw-changeslist-line-watched')
                        return thediff && $(this).text() == name && thediff[1] < diff;
.find('a[href*="diff"]').prop('href'));
                    }).closest('.mw-changeslist-line-watched');
return thediff && $(this).text() == name && thediff[1] < diff;
                    prevs.removeClass('mw-changeslist-line-watched blueedit')
}).closest('.mw-changeslist-line-watched');
                        .addClass('mw-changeslist-line-not-watched yellowedit').find('.mark-all-edits').remove();
prevs.removeClass('mw-changeslist-line-watched blueedit')
                    prevs.show();
.addClass('mw-changeslist-line-not-watched yellowedit').find('.mark-all-edits').remove();
                    unseen(prevs.find('span.mw-title'));
prevs.show();
                    if (prevs.length > 0)
unseen(prevs.find('span.mw-title'));
                        $this.closest('td, li').prepend($('<span>', {
if (prevs.length > 0)
                            text: ' ' + (prevs.length + 1) + ' ' +
$this.closest('td, li').prepend($('<span>', {
                                i18n('manymarked') + ' ',
text: ' ' + (prevs.length + 1) + ' ' + i18n('manymarked') + ' '
                            style: 'background-color: red'
})
                        }));
.css({
                    $this.remove();
backgroundColor: 'red'
                });
}));
            })).filter(function() {
$this.remove();
            return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0
});
        })
})).filter(function() {
        .prev().remove();
return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0;
})
.prev().remove();
}
}


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


function hider() {
function hider(state) {
    $('.mw-changeslist-line-not-watched, [class*="mw-changeslist-log"]').hide();
if (config.edit[state])
    $('abbr.wikibase-edit').closest('.mw-changeslist-line-watched').hide();
$('.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() {
function closeedit() {
    $('td.mw-enhanced-rc, li span.mw-changeslist-date').parent().filter(function() {
$('td.mw-enhanced-rc, li span.mw-changeslist-date').parent().filter(function() {
        return $(this).find('td.mw-enhanced-rc-nested').length <= 0;
return $(this).find('td.mw-enhanced-rc-nested').length <= 0;
    }).prepend($('<a>', {
}).prepend($('<a>', {
        text: 'x\u200f',
text: 'x\u200f',
        title: i18n('close'),
title: i18n('close'),
        href: '#nw',
href: '#nw',
        class: 'close-edit'
class: 'close-edit'
    }).click(function() {
}).click(function() {
        $(this).closest('.mw-changeslist-line-not-watched, .mw-changeslist-line-watched').hide();
$(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>'));
$('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').before(
        $('<a>', {
$('<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().find('a[href*="fromnotif"]').prop('href'))[1];
            var page = $this.parent().find('a.mw-title').prop('title');
var page = $this.parent().find('a.mw-title').prop('title');
            new mw.Api().postWithToken('csrf', {
new mw.Api().postWithToken('csrf', {
                action: 'setnotificationtimestamp',
action: 'setnotificationtimestamp',
                titles: topic + '|' + page,
titles: topic + '|' + page,
            }).done(function() {
}).done(function() {
                $this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
                    .addClass('mw-changeslist-line-not-watched yellowedit').hide();
.addClass('mw-changeslist-line-not-watched yellowedit');
                $this.remove();
if (config.hidemarked.flow)
            });
$this.closest('.mw-changeslist-line-watched').hide();
        }));
$this.remove();
});
}));
}
}


function categoryseen() {
function categoryseen() {
    var cat = $('.mw-changeslist-line-watched span.mw-title').filter(function() {
var cat = $('.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;
return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0 && $(this)
    });
.closest('.mw-changeslist-line-watched').find('abbr.newpage').length <= 0;
    var page = cat.parent().find('a.mw-changeslist-title').prop('title');
});
    cat.before($('<a>', {
var page = cat.parent().find('a.mw-changeslist-title').prop('title');
            text: '\u200f',
cat.before($('<a>', {
            title: i18n('markCat'),
text: '\u200f',
            href: '#nw',
title: i18n('markCat'),
            class: 'mark-cat-edits WLM-icon'
href: '#nw',
        })
class: 'mark-cat-edits WLM-icon'
        .click(function() {
})
            var $this = $(this);
.click(function() {
            new mw.Api().postWithToken('csrf', {
var $this = $(this);
                action: 'setnotificationtimestamp',
new mw.Api().postWithToken('csrf', {
                titles: page,
action: 'setnotificationtimestamp',
            }).done(function() {
titles: page,
                $this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
}).done(function() {
                    .addClass('mw-changeslist-line-not-watched yellowedit').hide();
$this.closest('.mw-changeslist-line-watched').removeClass('mw-changeslist-line-watched blueedit')
                $this.remove();
.addClass('mw-changeslist-line-not-watched yellowedit');
            });
if (config.hidemarked.categorization)
        }));
$this.closest('.mw-changeslist-line-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') {
if (mw.config.get('wgCanonicalSpecialPageName') == 'Watchlist') {
    $('.mw-body-content').addClass((typeof window.orientation == 'undefined') ? 'WLM-desktop' : 'WLM-mobile');
$('.mw-body-content').addClass((typeof window.orientation == 'undefined') ? 'WLM-desktop' : 'WLM-mobile');
    importStylesheet('User:IKhitron/96.css');
importStylesheet('משתמש:IKhitron/96.css');
    var lang = mw.user.options.get('language') == 'he' ? 0 : 1;
var lang = mw.user.options.get('language') == 'he' ? 0 : 1;
    seen($('.mw-changeslist-line-watched span.mw-title'));
var config;
    unseen($('.mw-changeslist-line-not-watched span.mw-title'));
$.get(mw.util.wikiScript(), {
    flowseen();
title: "מדיה ויקי:WLM.json",
    categoryseen();
action: 'raw'
    closeedit();
}).done(function(data) {
    if (window.WLM !== 'unhide') hider();
config = JSON.parse(data);
    mw.loader.using('mediawiki.util').done(function() {
$.get(mw.util.wikiScript(), {
        $('#mw-watchlist-form').after($('<input>', {
title: 'משתמש:' + mw.config.get('wgUserName') + '/WLM.json',
                value: i18n('hideAll'),
action: 'raw'
                id: 'hideAll',
}).done(function(data1) {
                type: 'submit'
config = JSON.parse(data1);
            }))
main();
            .after($('<span>', {
}).fail(function() {
                text: 'place',
main();
                id: 'placeholder'
});
            }).css('visibility', 'hidden'))
}).fail(function() {
            .after($('<input>', {
alert(i18n('jsonlost'));
                value: i18n('showAll'),
});
                id: 'showAll',
mw.loader.using('mediawiki.util').done(function() {
                type: 'submit'
$('#mw-watchlist-form').after($('<input>', {
            }))
value: i18n('hideAll'),
            .after($('<div>', {
id: 'hideAll',
                text: 'place',
type: 'submit'
                id: 'placeline'
}))
            }).css({
.after($('<span>', {
                visibility: 'hidden',
text: 'place',
                'font-size': '50%'
id: 'placeholder'
            }));
}).css('visibility', 'hidden'))
        $('#hideAll').click(hider);
.after($('<input>', {
        $('#showAll').click(function() {
value: i18n('showAll'),
            $('[class*="mw-changeslist"]').show();
id: 'showAll',
        });
type: 'submit'
    });
}))
.after($('<div>', {
text: 'place',
id: 'placeline'
}).css({
visibility: 'hidden',
'font-size': '50%'
}));
$('#hideAll').click(function() {
hider('hide');
});
$('#showAll').click(function() {
$('[class*="mw-changeslist"]').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-watched, .mw-changeslist-line-not-watched').show();
});
});
}
}

גרסה מ־18:42, 25 בספטמבר 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.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();
				});
			})).filter(function() {
			return $(this).closest('.mw-changeslist-line-watched').find('a[href*="diff"]').length <= 0;
		})
		.prev().remove();
}

function unseen(obj) {
	obj.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();
				});
			})).filter(function() {
			return $(this).closest('tr, li').find('a[href*="oldid"]').length <= 0;
		})
		.prev().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($('<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-watched').hide();
				$this.remove();
			});
		}));
}

function categoryseen() {
	var cat = $('.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;
	});
	var page = cat.parent().find('a.mw-changeslist-title').prop('title');
	cat.before($('<a>', {
			text: '\u200f',
			title: i18n('markCat'),
			href: '#nw',
			class: 'mark-cat-edits WLM-icon'
		})
		.click(function() {
			var $this = $(this);
			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-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('משתמש:IKhitron/96.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() {
			$('[class*="mw-changeslist"]').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-watched, .mw-changeslist-line-not-watched').show();
		});
	});
}