summaryrefslogtreecommitdiff
path: root/main.lua
diff options
context:
space:
mode:
authorDavid Vazgenovich Shakaryan <dvshakaryan@gmail.com>2025-05-09 17:37:24 -0700
committerDavid Vazgenovich Shakaryan <dvshakaryan@gmail.com>2025-05-09 17:37:24 -0700
commitbdf3637fc579b6e4e8f1987fec1260a75b643c8a (patch)
tree18b353c171a917cb27ad2647ff15a91c7485fdea /main.lua
parentf564abda515d4773bf594de3c971ca87e868c346 (diff)
downloadmpv-iptv-menu-bdf3637fc579b6e4e8f1987fec1260a75b643c8a.tar.gz
mpv-iptv-menu-bdf3637fc579b6e4e8f1987fec1260a75b643c8a.tar.xz
add movies section
Diffstat (limited to 'main.lua')
-rw-r--r--main.lua49
1 files changed, 32 insertions, 17 deletions
diff --git a/main.lua b/main.lua
index 552cd14..f379dd0 100644
--- a/main.lua
+++ b/main.lua
@@ -31,8 +31,8 @@ osd_bg.z = -1
osd_bg.data = '{\\pos(0,0)}' .. colours.bg ..
'{\\p1}m 0 0 l 7680 0 7680 720 0 720{\\p0}'
-local categories
-local streams
+local categories = {}
+local streams = {}
local favourites
local playing_stream_id
@@ -64,21 +64,42 @@ local function write_json_file(fn, data)
f:close()
end
-local function load_data()
- categories = read_json_file('categories.json')
- for _, v in ipairs(categories) do
+local function load_section(prefix, name)
+ categories[#categories+1] = {
+ id=prefix .. ':0',
+ type='category',
+ name=name,
+ parent_id='root',
+ }
+
+ local tmp = read_json_file(prefix .. '_categories.json')
+ for _, v in ipairs(tmp) do
v.type = 'category'
- v.id = v.category_id
+ v.id = prefix .. ':' .. v.category_id
v.name = v.category_name
- v.parent_id = tostring(v.parent_id)
+ v.parent_id = prefix .. ':' .. v.parent_id
+ categories[#categories+1] = v
end
- streams = read_json_file('streams.json')
- for _, v in ipairs(streams) do
+ tmp = read_json_file(prefix .. '_streams.json')
+ for _, v in ipairs(tmp) do
v.type = 'stream'
v.id = v.stream_id
- v.parent_id = v.category_id
+ v.parent_id = prefix .. ':' .. v.category_id
+ streams[#streams+1] = v
end
+end
+
+local function load_data()
+ categories[#categories+1] = {
+ id='favourites',
+ type='category',
+ name='Favourites',
+ parent_id='root',
+ }
+
+ load_section('live', 'Live TV')
+ load_section('movie', 'Movies')
favourites = read_json_file('favourites.json')
-- json loading/dumping breaks when the table is empty, so we need a
@@ -561,10 +582,4 @@ end)
mp.add_forced_key_binding('TAB', 'toggle-menu', toggle_menu)
bind_menu_keys()
load_data()
-table.insert(categories, 1, {
- id='favourites',
- type='category',
- name='Favourites',
- parent_id='0',
-})
-push_category_menu('0')
+push_category_menu('root')