Move some Menu things around.
This commit is contained in:
parent
f446147def
commit
48b3a099cd
@ -1121,17 +1121,7 @@
|
||||
_ref = Menu.entries;
|
||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
||||
entry = _ref[_i];
|
||||
if ((function() {
|
||||
var requirement, val, _ref1;
|
||||
_ref1 = entry.requirements;
|
||||
for (requirement in _ref1) {
|
||||
val = _ref1[requirement];
|
||||
if (val !== post[requirement]) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
})()) {
|
||||
if (entry.requirement(post)) {
|
||||
$.add(el, entry.el);
|
||||
$.event(entry.el, new CustomEvent('context'));
|
||||
}
|
||||
@ -1145,11 +1135,9 @@
|
||||
delete Menu.lastOpener;
|
||||
return $.off(d, 'click', Menu.close);
|
||||
},
|
||||
newEntry: function(name) {
|
||||
return $.el(name, {
|
||||
className: 'entry',
|
||||
tabIndex: 0
|
||||
});
|
||||
addEntry: function(entry) {
|
||||
$.addClass(entry.el, 'entry');
|
||||
return Menu.entries.push(entry);
|
||||
}
|
||||
};
|
||||
|
||||
@ -3811,17 +3799,18 @@
|
||||
DeleteLink = {
|
||||
init: function() {
|
||||
var a;
|
||||
a = Menu.newEntry('a');
|
||||
a.href = 'javascript:;';
|
||||
$.addClass(a, 'delete_link');
|
||||
a = $.el('a', {
|
||||
className: 'delete_link',
|
||||
href: 'javascript:;'
|
||||
});
|
||||
$.on(a, 'context', function() {
|
||||
a.textContent = 'Delete this post';
|
||||
return $.on(a, 'click', DeleteLink["delete"]);
|
||||
});
|
||||
return Menu.entries.push({
|
||||
return Menu.addEntry({
|
||||
el: a,
|
||||
requirements: {
|
||||
isArchived: false
|
||||
requirement: function(post) {
|
||||
return post.isArchived === false;
|
||||
}
|
||||
});
|
||||
},
|
||||
@ -3872,15 +3861,16 @@
|
||||
ReportLink = {
|
||||
init: function() {
|
||||
var a;
|
||||
a = Menu.newEntry('a');
|
||||
a.href = 'javascript:;';
|
||||
a.textContent = 'Report this post';
|
||||
$.addClass(a, 'report_link');
|
||||
a = $.el('a', {
|
||||
className: 'report_link',
|
||||
href: 'javascript:;',
|
||||
textContent: 'Report this post'
|
||||
});
|
||||
$.on(a, 'click', this.report);
|
||||
return Menu.entries.push({
|
||||
return Menu.addEntry({
|
||||
el: a,
|
||||
requirements: {
|
||||
isArchived: false
|
||||
requirement: function(post) {
|
||||
return post.isArchived === false;
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
@ -862,11 +862,7 @@ Menu =
|
||||
# className: 'entry'
|
||||
# textContent: "#{i}: #{post[i]}"
|
||||
for entry in Menu.entries
|
||||
if (->
|
||||
for requirement, val of entry.requirements
|
||||
return false if val isnt post[requirement]
|
||||
true
|
||||
)()
|
||||
if entry.requirement post
|
||||
$.add el, entry.el
|
||||
# XXX 'context' event?
|
||||
$.event entry.el, new CustomEvent 'context'
|
||||
@ -878,10 +874,9 @@ Menu =
|
||||
delete Menu.lastOpener
|
||||
$.off d, 'click', Menu.close
|
||||
|
||||
newEntry: (name) ->
|
||||
$.el name,
|
||||
className: 'entry'
|
||||
tabIndex: 0
|
||||
addEntry: (entry) ->
|
||||
$.addClass entry.el, 'entry'
|
||||
Menu.entries.push entry
|
||||
|
||||
Keybinds =
|
||||
init: ->
|
||||
@ -2989,16 +2984,16 @@ Quotify =
|
||||
|
||||
DeleteLink =
|
||||
init: ->
|
||||
a = Menu.newEntry 'a'
|
||||
a.href = 'javascript:;'
|
||||
$.addClass a, 'delete_link'
|
||||
a = $.el 'a',
|
||||
className: 'delete_link'
|
||||
href: 'javascript:;'
|
||||
$.on a, 'context', ->
|
||||
a.textContent = 'Delete this post'
|
||||
$.on a, 'click', DeleteLink.delete
|
||||
Menu.entries.push
|
||||
Menu.addEntry
|
||||
el: a
|
||||
requirements:
|
||||
isArchived: false
|
||||
requirement: (post) ->
|
||||
post.isArchived is false
|
||||
delete: ->
|
||||
$.off @, 'click', DeleteLink.delete
|
||||
@textContent = 'Deleting...'
|
||||
@ -3042,15 +3037,15 @@ DeleteLink =
|
||||
|
||||
ReportLink =
|
||||
init: ->
|
||||
a = Menu.newEntry 'a'
|
||||
a.href = 'javascript:;'
|
||||
a.textContent = 'Report this post'
|
||||
$.addClass a, 'report_link'
|
||||
a = $.el 'a',
|
||||
className: 'report_link'
|
||||
href: 'javascript:;'
|
||||
textContent: 'Report this post'
|
||||
$.on a, 'click', @report
|
||||
Menu.entries.push
|
||||
Menu.addEntry
|
||||
el: a
|
||||
requirements:
|
||||
isArchived: false
|
||||
requirement: (post) ->
|
||||
post.isArchived is false
|
||||
report: ->
|
||||
a = $ '.postNum > a[title="Highlight this post"]', $.id @parentNode.dataset.rootid
|
||||
url = "//sys.4chan.org/#{a.pathname.split('/')[1]}/imgboard.php?mode=report&no=#{@parentNode.dataset.id}"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user