aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/util.lua5
-rw-r--r--main.lua6
-rw-r--r--server/opensubtitles.lua11
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