I don't care for toggles. A dismissed announcement is dismissed.

This commit is contained in:
Zixaphir 2013-04-16 17:41:36 -07:00
parent a973654502
commit e47408cabe
6 changed files with 72 additions and 96 deletions

View File

@ -6430,7 +6430,6 @@
if (!Conf['Announcement Hiding']) {
return;
}
$.addClass(doc, 'hide-announcement');
return $.on(d, '4chanXInitFinished', this.setup);
},
setup: function() {
@ -6438,48 +6437,43 @@
$.off(d, '4chanXInitFinished', PSAHiding.setup);
if (!(psa = $.id('globalMessage'))) {
$.rmClass(doc, 'hide-announcement');
return;
}
PSAHiding.btn = btn = $.el('a', {
title: 'Toggle announcement.',
href: 'javascript:;'
href: 'javascript:;',
textContent: '[ - ]'
});
$.on(btn, 'click', PSAHiding.toggle);
$.prepend(psa, btn);
text = PSAHiding.trim(psa);
$.get('hiddenPSAs', [], function(item) {
PSAHiding.sync(item['hiddenPSAs']);
$.before(psa, btn);
return $.rmClass(doc, 'hide-announcement');
return $.get('hiddenPSAs', [], function(item) {
return PSAHiding.sync(item['hiddenPSAs']);
});
return $.sync('hiddenPSAs', PSAHiding.sync);
},
toggle: function(e) {
var hide, text;
var text;
hide = $.hasClass(this, 'hide-announcement');
text = PSAHiding.trim($.id('globalMessage'));
return $.get('hiddenPSAs', [], function(item) {
var hiddenPSAs, i;
var hiddenPSAs;
hiddenPSAs = item.hiddenPSAs;
if (hide) {
hiddenPSAs.push(text);
} else {
i = hiddenPSAs.indexOf(text);
hiddenPSAs.splice(i, 1);
}
hiddenPSAs.push(text);
hiddenPSAs = hiddenPSAs.slice(-5);
PSAHiding.sync(hiddenPSAs);
return $.set('hiddenPSAs', hiddenPSAs);
});
},
sync: function(hiddenPSAs) {
var btn, psa, _ref;
var btn, psa;
btn = PSAHiding.btn;
psa = $.id('globalMessage');
return _ref = hiddenPSAs.contains(PSAHiding.trim(psa)) ? [true, '<span>[&nbsp;+&nbsp;]</span>', 'show-announcement'] : [false, '<span>[&nbsp;-&nbsp;]</span>', 'hide-announcement'], psa.hidden = _ref[0], btn.innerHTML = _ref[1], btn.className = _ref[2], _ref;
if (hiddenPSAs.contains(PSAHiding.trim(psa))) {
$.rm(psa);
return Style.iconPositions();
}
},
trim: function(psa) {
return psa.textContent.replace(/\W+/g, '').toLowerCase();

View File

@ -6423,7 +6423,6 @@
if (!Conf['Announcement Hiding']) {
return;
}
$.addClass(doc, 'hide-announcement');
return $.on(d, '4chanXInitFinished', this.setup);
},
setup: function() {
@ -6431,48 +6430,43 @@
$.off(d, '4chanXInitFinished', PSAHiding.setup);
if (!(psa = $.id('globalMessage'))) {
$.rmClass(doc, 'hide-announcement');
return;
}
PSAHiding.btn = btn = $.el('a', {
title: 'Toggle announcement.',
href: 'javascript:;'
href: 'javascript:;',
textContent: '[ - ]'
});
$.on(btn, 'click', PSAHiding.toggle);
$.prepend(psa, btn);
text = PSAHiding.trim(psa);
$.get('hiddenPSAs', [], function(item) {
PSAHiding.sync(item['hiddenPSAs']);
$.before(psa, btn);
return $.rmClass(doc, 'hide-announcement');
return $.get('hiddenPSAs', [], function(item) {
return PSAHiding.sync(item['hiddenPSAs']);
});
return $.sync('hiddenPSAs', PSAHiding.sync);
},
toggle: function(e) {
var hide, text;
var text;
hide = $.hasClass(this, 'hide-announcement');
text = PSAHiding.trim($.id('globalMessage'));
return $.get('hiddenPSAs', [], function(item) {
var hiddenPSAs, i;
var hiddenPSAs;
hiddenPSAs = item.hiddenPSAs;
if (hide) {
hiddenPSAs.push(text);
} else {
i = hiddenPSAs.indexOf(text);
hiddenPSAs.splice(i, 1);
}
hiddenPSAs.push(text);
hiddenPSAs = hiddenPSAs.slice(-5);
PSAHiding.sync(hiddenPSAs);
return $.set('hiddenPSAs', hiddenPSAs);
});
},
sync: function(hiddenPSAs) {
var btn, psa, _ref;
var btn, psa;
btn = PSAHiding.btn;
psa = $.id('globalMessage');
return _ref = hiddenPSAs.contains(PSAHiding.trim(psa)) ? [true, '<span>[&nbsp;+&nbsp;]</span>', 'show-announcement'] : [false, '<span>[&nbsp;-&nbsp;]</span>', 'hide-announcement'], psa.hidden = _ref[0], btn.innerHTML = _ref[1], btn.className = _ref[2], _ref;
if (hiddenPSAs.contains(PSAHiding.trim(psa))) {
$.rm(psa);
return Style.iconPositions();
}
},
trim: function(psa) {
return psa.textContent.replace(/\W+/g, '').toLowerCase();

Binary file not shown.

Binary file not shown.

View File

@ -6368,7 +6368,6 @@
if (!Conf['Announcement Hiding']) {
return;
}
$.addClass(doc, 'hide-announcement');
return $.on(d, '4chanXInitFinished', this.setup);
},
setup: function() {
@ -6376,48 +6375,43 @@
$.off(d, '4chanXInitFinished', PSAHiding.setup);
if (!(psa = $.id('globalMessage'))) {
$.rmClass(doc, 'hide-announcement');
return;
}
PSAHiding.btn = btn = $.el('a', {
title: 'Toggle announcement.',
href: 'javascript:;'
href: 'javascript:;',
textContent: '[ - ]'
});
$.on(btn, 'click', PSAHiding.toggle);
$.prepend(psa, btn);
text = PSAHiding.trim(psa);
$.get('hiddenPSAs', [], function(item) {
PSAHiding.sync(item['hiddenPSAs']);
$.before(psa, btn);
return $.rmClass(doc, 'hide-announcement');
return $.get('hiddenPSAs', [], function(item) {
return PSAHiding.sync(item['hiddenPSAs']);
});
return $.sync('hiddenPSAs', PSAHiding.sync);
},
toggle: function(e) {
var hide, text;
var text;
hide = $.hasClass(this, 'hide-announcement');
text = PSAHiding.trim($.id('globalMessage'));
return $.get('hiddenPSAs', [], function(item) {
var hiddenPSAs, i;
var hiddenPSAs;
hiddenPSAs = item.hiddenPSAs;
if (hide) {
hiddenPSAs.push(text);
} else {
i = hiddenPSAs.indexOf(text);
hiddenPSAs.splice(i, 1);
}
hiddenPSAs.push(text);
hiddenPSAs = hiddenPSAs.slice(-5);
PSAHiding.sync(hiddenPSAs);
return $.set('hiddenPSAs', hiddenPSAs);
});
},
sync: function(hiddenPSAs) {
var btn, psa, _ref;
var btn, psa;
btn = PSAHiding.btn;
psa = $.id('globalMessage');
return _ref = hiddenPSAs.contains(PSAHiding.trim(psa)) ? [true, '<span>[&nbsp;+&nbsp;]</span>', 'show-announcement'] : [false, '<span>[&nbsp;-&nbsp;]</span>', 'hide-announcement'], psa.hidden = _ref[0], btn.innerHTML = _ref[1], btn.className = _ref[2], _ref;
if (hiddenPSAs.contains(PSAHiding.trim(psa))) {
$.rm(psa);
return Style.iconPositions();
}
},
trim: function(psa) {
return psa.textContent.replace(/\W+/g, '').toLowerCase();

View File

@ -303,50 +303,44 @@ CatalogLinks =
PSAHiding =
init: ->
return if !Conf['Announcement Hiding']
$.addClass doc, 'hide-announcement'
return unless Conf['Announcement Hiding']
$.on d, '4chanXInitFinished', @setup
setup: ->
$.off d, '4chanXInitFinished', PSAHiding.setup
unless psa = $.id 'globalMessage'
$.rmClass doc, 'hide-announcement'
return
PSAHiding.btn = btn = $.el 'a',
title: 'Toggle announcement.'
href: 'javascript:;'
textContent: '[ - ]'
$.on btn, 'click', PSAHiding.toggle
$.prepend psa, btn
text = PSAHiding.trim psa
$.get 'hiddenPSAs', [], (item) ->
PSAHiding.sync item['hiddenPSAs']
$.before psa, btn
$.rmClass doc, 'hide-announcement'
$.sync 'hiddenPSAs', PSAHiding.sync
toggle: (e) ->
hide = $.hasClass @, 'hide-announcement'
text = PSAHiding.trim $.id 'globalMessage'
$.get 'hiddenPSAs', [], (item) ->
{hiddenPSAs} = item
if hide
hiddenPSAs.push text
else
i = hiddenPSAs.indexOf text
hiddenPSAs.splice i, 1
hiddenPSAs.push text
hiddenPSAs = hiddenPSAs[-5..]
PSAHiding.sync hiddenPSAs
$.set 'hiddenPSAs', hiddenPSAs
sync: (hiddenPSAs) ->
{btn} = PSAHiding
psa = $.id 'globalMessage'
[psa.hidden, btn.innerHTML, btn.className] = if hiddenPSAs.contains PSAHiding.trim psa
[true, '<span>[&nbsp;+&nbsp;]</span>', 'show-announcement']
else
[false, '<span>[&nbsp;-&nbsp;]</span>', 'hide-announcement']
if hiddenPSAs.contains PSAHiding.trim psa
$.rm psa
do Style.iconPositions
trim: (psa) ->
psa.textContent.replace(/\W+/g, '').toLowerCase()
@ -3507,32 +3501,32 @@ Favicon =
unreadDead = Favicon.unreadDeadY = Favicon.unreadSFW = Favicon.unreadSFWY = Favicon.unreadNSFW = Favicon.unreadNSFWY = 'data:image/png;base64,'
switch Conf['favicon']
when 'ferongr'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/ferongr/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/ferongr/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/ferongr/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/ferongr/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/ferongr/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/ferongr/unreadNSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/ferongr/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/ferongr/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/ferongr/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/ferongr/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/ferongr/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/ferongr/unreadNSFWY.png", {encoding: "base64"}) %>'
when 'xat-'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/xat-/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/xat-/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/xat-/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/xat-/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/xat-/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/xat-/unreadNSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/xat-/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/xat-/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/xat-/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/xat-/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/xat-/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/xat-/unreadNSFWY.png", {encoding: "base64"}) %>'
when 'Mayhem'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/Mayhem/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/Mayhem/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/Mayhem/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/Mayhem/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/Mayhem/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/Mayhem/unreadNSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/Mayhem/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/Mayhem/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/Mayhem/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/Mayhem/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/Mayhem/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/Mayhem/unreadNSFWY.png", {encoding: "base64"}) %>'
when 'Original'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/Original/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDead += '<%= grunt.file.read("img/favicons/Original/unreadDead.png", {encoding: "base64"}) %>'
Favicon.unreadDeadY += '<%= grunt.file.read("img/favicons/Original/unreadDeadY.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/Original/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/Original/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/Original/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFW += '<%= grunt.file.read("img/favicons/Original/unreadSFW.png", {encoding: "base64"}) %>'
Favicon.unreadSFWY += '<%= grunt.file.read("img/favicons/Original/unreadSFWY.png", {encoding: "base64"}) %>'
Favicon.unreadNSFW += '<%= grunt.file.read("img/favicons/Original/unreadNSFW.png", {encoding: "base64"}) %>'
Favicon.unreadNSFWY += '<%= grunt.file.read("img/favicons/Original/unreadNSFWY.png", {encoding: "base64"}) %>'
if Favicon.SFW
Favicon.unread = Favicon.unreadSFW