From 991fffa4edfe01191992c996d8212b110da9907b Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Mon, 2 Nov 2020 11:10:45 -0700 Subject: [PATCH] Update index.lua Add call_block_country_code and handle e.164 automatically when the country code has been provided. --- .../scripts/app/call_block/index.lua | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/app/scripts/resources/scripts/app/call_block/index.lua b/app/scripts/resources/scripts/app/call_block/index.lua index 9e10fc4ddd..00c9d32e6a 100644 --- a/app/scripts/resources/scripts/app/call_block/index.lua +++ b/app/scripts/resources/scripts/app/call_block/index.lua @@ -90,14 +90,28 @@ assert(dbh:connected()); --check to see if the call should be blocked - sql = "select * from v_call_block "; - sql = sql .. "where domain_uuid = :domain_uuid "; - sql = sql .. "and call_block_enabled = 'true' "; - sql = sql .. "and ( "; - sql = sql .. " (call_block_name = :call_block_name and call_block_number = :call_block_number) "; - sql = sql .. " or (call_block_name is null and call_block_number = :call_block_number) "; - sql = sql .. " or (call_block_name = :call_block_name and call_block_number is null) "; - sql = sql .. ") "; + sql = "select * from v_call_block\n"; + sql = sql .. "where domain_uuid = :domain_uuid \n"; + sql = sql .. "and call_block_enabled = 'true' \n"; + sql = sql .. "and ( \n"; + sql = sql .. " (\n"; + sql = sql .. " call_block_name = :call_block_name \n"; + sql = sql .. " and ( \n"; + sql = sql .. " '+' || call_block_country_code || call_block_number = :call_block_number \n"; + sql = sql .. " or call_block_country_code || call_block_number = :call_block_number \n"; + sql = sql .. " or call_block_number = :call_block_number \n"; + sql = sql .. " ) \n"; + sql = sql .. " ) \n"; + sql = sql .. " or (\n"; + sql = sql .. " call_block_name is null \n"; + sql = sql .. " and ( \n"; + sql = sql .. " '+' || call_block_country_code || call_block_number = :call_block_number \n"; + sql = sql .. " or call_block_country_code || call_block_number = :call_block_number \n"; + sql = sql .. " or call_block_number = :call_block_number \n"; + sql = sql .. " ) \n"; + sql = sql .. " ) \n"; + sql = sql .. " or (call_block_name = :call_block_name and call_block_number is null) \n"; + sql = sql .. ") \n"; if (extension_uuid == nil) then sql = sql .. "and extension_uuid is null "; else