M melon/import_providers/newpipe.py => melon/import_providers/newpipe.py +1 -0
@@ 1,5 1,6 @@
from abc import ABC
import sqlite3
+import json
from melon.import_providers import ImportProvider, PickerMode
from melon.servers import Channel, Playlist, Video
M melon/models/__init__.py => melon/models/__init__.py +9 -1
@@ 4,6 4,7 @@ from datetime import datetime
from functools import cache
import sqlite3
import os
+import json
from melon.servers import Video, Channel, Playlist, Resource
from melon.utils import get_data_dir
@@ 299,7 300,14 @@ def get_server_settings(sid:str):
results = conn.execute(
"SELECT key, value FROM server_settings WHERE server = ?", (sid,)).fetchall()
for setting in results:
- base[setting[0]] = setting[1]
+ value = setting[1]
+ try:
+ # autoparse json
+ value = convert_json(setting[1])
+ except Exception as e:
+ # fallback to native type on error
+ value = setting[1]
+ base["custom"][setting[0]] = value
return base
def is_server_enabled(server_id: str):
conn = connect_to_db()