diff --git a/src/Posting/QR.coffee b/src/Posting/QR.coffee index 48ca1077ea..d199e5e588 100644 --- a/src/Posting/QR.coffee +++ b/src/Posting/QR.coffee @@ -215,6 +215,21 @@ QR = QR.setCustomCooldown enabled $.set 'customCooldownEnabled', enabled + setRandomizedFilename: (enabled) -> + Conf['Randomize Filename'] = enabled + QR.nodes.randomizedFilename.classList.toggle 'disabled', !enabled + if enabled and QR.posts.length == 1 + for post in QR.posts when post.file + post.randomizeFilename() + post.saveFilename() + post.showFileData() + + toggleRandomizedFilename: -> + enabled = $.hasClass QR.nodes.randomizedFilename, 'disabled' + QR.setRandomizedFilename enabled + $.set 'Randomize Filename', enabled + + error: (err, focusOverride) -> QR.open() if typeof err is 'string' @@ -528,6 +543,7 @@ QR = setNode 'urlButton', '#url-button' setNode 'pasteArea', '#paste-area' setNode 'customCooldown', '#custom-cooldown-button' + setNode 'randomizedFilename', '#randomize-filename-button' setNode 'dumpButton', '#dump-button' setNode 'status', '[type=submit]' setNode 'flashTag', '[name=filetag]' @@ -548,6 +564,12 @@ QR = QR.setCustomCooldown customCooldownEnabled $.sync 'customCooldownEnabled', QR.setCustomCooldown + if Conf['Randomize Filename Button'] + QR.nodes.randomizedFilename.hidden = false + $.get 'Randomize Filename', Conf['Randomize Filename'], ({'Randomize Filename': randomizeFilenameEnabled}) -> + QR.setRandomizedFilename randomizeFilenameEnabled + $.sync 'Randomize Filename', QR.setRandomizedFilename + QR.flagsInput() $.on nodes.autohide, 'change', QR.toggleHide @@ -568,6 +590,7 @@ QR = $.on nodes.fileRM, 'click', -> QR.selected.rmFile() $.on nodes.urlButton, 'click', -> QR.handleUrl '' $.on nodes.customCooldown, 'click', QR.toggleCustomCooldown + $.on nodes.randomizedFilename, 'click', QR.toggleRandomizedFilename $.on nodes.dumpButton, 'click', -> nodes.el.classList.toggle 'dump' $.on nodes.fileInput, 'change', QR.handleFiles diff --git a/src/Posting/QR.post.coffee b/src/Posting/QR.post.coffee index 8eab7d5e28..1e1923db80 100644 --- a/src/Posting/QR.post.coffee +++ b/src/Posting/QR.post.coffee @@ -202,10 +202,14 @@ QR.post = class error.parentNode.previousElementSibling.click() return + + randomizeFilename: -> + @filename = "#{Date.now() - Math.floor(Math.random() * 365 * $.DAY)}" + @filename += ext[0] if ext = @file.name.match QR.validExtension + setFile: (@file) -> if Conf['Randomize Filename'] and g.BOARD.ID isnt 'f' - @filename = "#{Date.now() - Math.floor(Math.random() * 365 * $.DAY)}" - @filename += ext[0] if ext = @file.name.match QR.validExtension + @randomizeFilename() else @filename = @file.name @filesize = $.bytesToString @file.size diff --git a/src/Posting/QR/QuickReply.html b/src/Posting/QR/QuickReply.html index 51a58f961f..14b1fd99e0 100644 --- a/src/Posting/QR/QuickReply.html +++ b/src/Posting/QR/QuickReply.html @@ -45,6 +45,7 @@ + @@ -62,4 +63,4 @@ - + diff --git a/src/config/Config.coffee b/src/config/Config.coffee index 6f89a2f2d0..dbb2b45f2b 100644 --- a/src/config/Config.coffee +++ b/src/config/Config.coffee @@ -491,6 +491,11 @@ Config = 'Set the filename to a random timestamp within the past year. Disabled on /f/.' 1 ] + 'Randomize Filename Button': [ + false + 'Show a button on the Quick Reply to randomize the filename.' + 1 + ] 'Show New Thread Option in Threads': [ true 'Show the option to post a new / different thread from inside a thread.'