From 5f5adabdeec7f2bf0897ef81fbc7e04dfed4b015 Mon Sep 17 00:00:00 2001 From: sinanmohd Date: Sat, 7 Oct 2023 19:18:20 +0530 Subject: lib/util: init file_exists --- lib/util.lua | 5 +++++ main.lua | 6 +++--- server/opensubtitles.lua | 11 ++++++++--- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/lib/util.lua b/lib/util.lua index a4d3034..d52922d 100644 --- a/lib/util.lua +++ b/lib/util.lua @@ -11,6 +11,10 @@ local table_to_cmd = function (t) return str end +local file_exists = function (path) + return io.open(path, 'r') and true or false +end + local run = function (args) local sig, rc, stdout, cmd @@ -185,6 +189,7 @@ return { zip_ext_first = zip_ext_first, string_vid_path_to_name = string_vid_path_to_name, opensubtitles_hash = opensubtitles_hash, + file_exists = file_exists, run = run, error = error, } diff --git a/main.lua b/main.lua index f89b8fd..f54c673 100644 --- a/main.lua +++ b/main.lua @@ -58,11 +58,11 @@ local sub_setup = function () path = mp.get_property_native('path') out = out .. '/' .. util.string_vid_path_to_name(path) .. '.srt' - if path:find('https?://') then + if not util.file_exists(path) then name = mp.get_property_native('media-title') - else - rc = opensubtitles.search(path, out) end + + rc = opensubtitles.search(path, out, name) if not rc then rc = subscene.search(path, out, name) end diff --git a/server/opensubtitles.lua b/server/opensubtitles.lua index 0bace8b..b797f44 100644 --- a/server/opensubtitles.lua +++ b/server/opensubtitles.lua @@ -134,11 +134,16 @@ local search_ohash = function (ohash) end end -local search = function (path, out) +local search = function (path, out, name) local ohash, link - ohash = util.opensubtitles_hash(path) - link = search_ohash(ohash) + if util.file_exists(path) then + ohash = util.opensubtitles_hash(path) + link = search_ohash(ohash) + else + name = name or util.string_vid_path_to_name(path) + end + if link then return curl.zip_link_to_file(link, nil, out, tries) end -- cgit v1.2.3