Conflicts: CHANGELOG.md Gruntfile.coffee css/burichan.css css/futaba.css css/photon.css css/style.css css/tomorrow.css css/yotsuba-b.css css/yotsuba.css html/General/Index-navlinks.html html/General/Settings-section-Rice.html html/General/Settings.html html/Posting/QR.html json/archives.json package.json src/Filtering/PostHiding.coffee src/Filtering/Recursive.coffee src/Filtering/ThreadHiding.coffee src/General/Build.coffee src/General/Config.coffee src/General/Get.coffee src/General/Header.coffee src/General/Index.coffee src/General/Main.coffee src/General/Settings.coffee src/General/UI.coffee src/General/lib/$.coffee src/General/lib/databoard.class src/General/lib/post.class src/General/lib/thread.class src/Images/ImageExpand.coffee src/Images/RevealSpoilers.coffee src/Linkification/Linkify.coffee src/Menu/Menu.coffee src/Miscellaneous/ExpandThread.coffee src/Miscellaneous/IDColor.coffee src/Miscellaneous/Keybinds.coffee src/Monitoring/ThreadUpdater.coffee src/Monitoring/Unread.coffee src/Posting/QR.captcha.coffee src/Posting/QR.coffee src/Posting/QR.cooldown.coffee src/Quotelinks/QuoteBacklink.coffee src/Quotelinks/QuoteCT.coffee src/Quotelinks/QuoteOP.coffee src/Quotelinks/QuoteStrikeThrough.coffee src/Quotelinks/QuoteYou.coffee src/Quotelinks/Quotify.coffee
43 lines
1.2 KiB
CoffeeScript
Executable File
43 lines
1.2 KiB
CoffeeScript
Executable File
Sauce =
|
|
init: ->
|
|
return if !Conf['Sauce']
|
|
|
|
links = []
|
|
for link in Conf['sauces'].split '\n'
|
|
try
|
|
links.push @createSauceLink link.trim() if link[0] isnt '#'
|
|
catch err
|
|
# Don't add random text plz.
|
|
return unless links.length
|
|
@links = links
|
|
@link = $.el 'a', target: '_blank'
|
|
Post.callbacks.push
|
|
name: 'Sauce'
|
|
cb: @node
|
|
createSauceLink: (link) ->
|
|
link = link.replace /%(T?URL|MD5|board|name)/g, (parameter) ->
|
|
return (if type = {
|
|
'%TURL': 'post.file.thumbURL'
|
|
'%URL': 'post.file.URL'
|
|
'%MD5': 'post.file.MD5'
|
|
'%board': 'post.board'
|
|
'%name': 'post.file.name'
|
|
}[parameter]
|
|
"' + encodeURIComponent(#{type}) + '"
|
|
else
|
|
parameter)
|
|
text = if m = link.match(/;text:(.+)$/) then m[1] else link.match(/(\w+)\.\w+\//)[1]
|
|
link = link.replace /;text:.+$/, ''
|
|
Function 'post', 'a', """
|
|
a.href = '#{link}';
|
|
a.textContent = '#{text}';
|
|
return a;
|
|
"""
|
|
node: ->
|
|
return if @isClone or !@file
|
|
nodes = []
|
|
for link in Sauce.links
|
|
# \u00A0 is nbsp
|
|
nodes.push $.tn('\u00A0'), link @, Sauce.link.cloneNode true
|
|
$.add @file.text, nodes
|