diff --git a/src/Quotelinks/QuoteYou.coffee b/src/Quotelinks/QuoteYou.coffee index cf694d157..04527e94b 100644 --- a/src/Quotelinks/QuoteYou.coffee +++ b/src/Quotelinks/QuoteYou.coffee @@ -29,6 +29,8 @@ QuoteYou = name: 'Mark Quotes of You' cb: @node + QuoteYou.menu.init() + node: -> return if @isClone @@ -44,6 +46,40 @@ QuoteYou = $.addClass @nodes.root, 'quotesYou' return + menu: + init: -> + label = $.el 'label', + <%= html(' You') %> + input = $ 'input', label + $.on input, 'change', QuoteYou.menu.toggle + Menu.menu?.addEntry + el: label + order: 12 + open: (post) -> + QuoteYou.menu.post = (post.origin or post) + input.checked = QuoteYou.db.get {boardID: post.board.ID, threadID: post.thread.ID, postID: post.ID} + true + + toggle: -> + {post} = QuoteYou.menu + data = {boardID: post.board.ID, threadID: post.thread.ID, postID: post.ID, val: true} + if @checked + QuoteYou.db.set data + else + QuoteYou.db.delete data + for clone in [post].concat post.clones + clone.nodes.root.classList.toggle 'yourPost', @checked + for quotelink in Get.allQuotelinksLinkingTo post + if @checked + $.add quotelink, QuoteYou.mark.cloneNode(true) if Conf['Mark Quotes of You'] + else + $.rm $('.qmark-you', quotelink) + quotelink.classList.toggle 'you', @checked + if $.hasClass quotelink, 'quotelink' + quoter = Get.postFromNode(quotelink).nodes.root + quoter.classList.toggle 'quotesYou', !!$('.quotelink.you', quoter) + return + cb: seek: (type) -> $.rmClass highlight, 'highlight' if highlight = $ '.highlight'