diff --git a/logic_normal.py b/logic_normal.py index 5c46b91..e70b8d1 100644 --- a/logic_normal.py +++ b/logic_normal.py @@ -19,6 +19,10 @@ class LogicNormal(object): def get_youtube_dl_version(): return MyYoutubeDL.get_version() + @staticmethod + def get_default_filename(): + return MyYoutubeDL.DEFAULT_FILENAME + @staticmethod def get_preset_list(): return [ diff --git a/my_youtube_dl.py b/my_youtube_dl.py index 61e1119..25766ef 100644 --- a/my_youtube_dl.py +++ b/my_youtube_dl.py @@ -40,6 +40,8 @@ class Status(Enum): class MyYoutubeDL(object): + DEFAULT_FILENAME = '%(title)s-%(id)s.%(ext)s' + __index = 0 _last_msg = '' diff --git a/plugin.py b/plugin.py index 0b52e42..e273dc1 100644 --- a/plugin.py +++ b/plugin.py @@ -68,11 +68,12 @@ def first_menu(sub): if sub == 'setting': arg.update(ModelSetting.to_dict()) arg['youtube_dl_version'] = LogicNormal.get_youtube_dl_version() + arg['DEFAULT_FILENAME'] = LogicNormal.get_default_filename() return render_template('%s_%s.html' % (package_name, sub), arg=arg) elif sub == 'download': default_filename = ModelSetting.get('default_filename') - arg['file_name'] = default_filename if default_filename else '%(title)s-%(id)s.%(ext)s' + arg['file_name'] = default_filename if default_filename else LogicNormal.get_default_filename() arg['preset_list'] = LogicNormal.get_preset_list() arg['postprocessor_list'] = LogicNormal.get_postprocessor_list() return render_template('%s_%s.html' % (package_name, sub), arg=arg) @@ -201,6 +202,8 @@ def api(sub): return LogicNormal.abort(ret, 2) # 잘못된 동영상 주소 if preferredcodec not in (None, 'best', 'mp3', 'aac', 'flac', 'm4a', 'opus', 'vorbis', 'wav'): return LogicNormal.abort(ret, 5) # 허용되지 않은 값이 있음 + if filename: + filename = LogicNormal.get_default_filename() youtube_dl = LogicNormal.download(plugin=plugin, url=url, filename=filename, diff --git a/templates/youtube-dl_download.html b/templates/youtube-dl_download.html index 2d7fa9c..e1b94a7 100644 --- a/templates/youtube-dl_download.html +++ b/templates/youtube-dl_download.html @@ -1,3 +1,5 @@ +{% extends "base.html" %} + {% macro setting_select2(id, title, options, col='9', desc=None, value=None) %} {{ macros.setting_top(title) }}