From 0badf5e1e42c10a18bdb8b1f4e2b074d6c9557d0 Mon Sep 17 00:00:00 2001 From: Andrew Lewis Date: Fri, 6 Jan 2017 17:03:38 +0200 Subject: [PATCH] [Feature] New URL filters in multimap --- src/plugins/lua/multimap.lua | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/plugins/lua/multimap.lua b/src/plugins/lua/multimap.lua index 5b32343b7..7417a9fb3 100644 --- a/src/plugins/lua/multimap.lua +++ b/src/plugins/lua/multimap.lua @@ -116,6 +116,31 @@ local function apply_url_filter(task, filter, url, r) else return nil end + elseif filter == 'is_redirected' then + if url:is_redirected() then + return url:get_host() + else + return nil + end + elseif filter == 'is_obscured' then + if url:is_obscured() then + return url:get_host() + else + return nil + end + elseif filter == 'path' then + return url:get_path() + elseif filter == 'query' then + return url:get_query() + elseif string.find(filter, 'tag:') then + local tags = url:get_tags() + local want_tag = string.match(filter, 'tag:(.*)') + for _, t in ipairs(tags) do + if t == want_tag then + return url:get_host() + end + end + return nil elseif string.find(filter, 'tld:regexp:') then if not r['re_filter'] then local type,pat = string.match(filter, '(regexp:)(.+)') -- 2.39.5