Merge remote-tracking branch '18763C27/master'
This commit is contained in:
commit
0546e439ea
@ -22,6 +22,10 @@ Filter =
|
||||
boards = filter.match(/boards:([^;]+)/)?[1].toLowerCase() or 'global'
|
||||
boards = if boards is 'global' then null else boards.split(',')
|
||||
|
||||
# boards to exclude from an otherwise global rule
|
||||
if boards is null
|
||||
excludes = filter.match(/exclude:([^;]+)/)?[1].toLowerCase().split(',') or null
|
||||
|
||||
if key in ['uniqueID', 'MD5']
|
||||
# MD5 filter will use strings instead of regular expressions.
|
||||
regexp = regexp[1]
|
||||
@ -64,7 +68,7 @@ Filter =
|
||||
top = filter.match(/top:(yes|no)/)?[1] or 'yes'
|
||||
top = top is 'yes' # Turn it into a boolean
|
||||
|
||||
@filters[key].push @createFilter regexp, boards, op, stub, hl, top
|
||||
@filters[key].push @createFilter regexp, boards, excludes, op, stub, hl, top
|
||||
|
||||
# Only execute filter types that contain valid filters.
|
||||
unless @filters[key].length
|
||||
@ -75,7 +79,7 @@ Filter =
|
||||
name: 'Filter'
|
||||
cb: @node
|
||||
|
||||
createFilter: (regexp, boards, op, stub, hl, top) ->
|
||||
createFilter: (regexp, boards, excludes, op, stub, hl, top) ->
|
||||
test =
|
||||
if typeof regexp is 'string'
|
||||
# MD5 checking
|
||||
@ -92,6 +96,8 @@ Filter =
|
||||
(value, boardID, isReply) ->
|
||||
if boards and boardID not in boards
|
||||
return false
|
||||
if excludes and boardID in excludes
|
||||
return false
|
||||
if isReply and op is 'only' or !isReply and op is 'no'
|
||||
return false
|
||||
unless test value
|
||||
|
||||
@ -10,6 +10,10 @@
|
||||
Per boards, separate them with commas. It is global if not specified.<br>
|
||||
For example: <code>boards:a,jp;</code>.
|
||||
</li>
|
||||
<li>
|
||||
In case of a global rule, select boards to be excluded from the filter.<br>
|
||||
For example: <code>exclude:vg,v;</code>.
|
||||
</li>
|
||||
<li>
|
||||
Filter OPs only along with their threads (`only`), replies only (`no`), or both (`yes`, this is default).<br>
|
||||
For example: <code>op:only;</code>, <code>op:no;</code> or <code>op:yes;</code>.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user