Skip to content

Commit

Permalink
Merge branch 'dev' into web_dev
Browse files Browse the repository at this point in the history
  • Loading branch information
d0u9 committed Sep 27, 2017
2 parents d39ebc1 + b926989 commit b7e47e8
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 57 deletions.
2 changes: 1 addition & 1 deletion youtube_dl_webui/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ def __init__(self, conf_dict={}):
def merge_conf(self, task_conf_dict={}):
ret = deepcopy(self.dict())
for key, val in task_conf_dict.items():
if key not in self._task_settable_fields:
if key not in self._task_settable_fields or val == '':
continue
ret[key] = val

Expand Down
2 changes: 1 addition & 1 deletion youtube_dl_webui/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ def init(cls, conf, task_mgr):
@classmethod
def event_create(cls, svr, event, data, args):
url, ydl_opts = data.get('url', None), data.get('ydl_opts', {})
cls.logger.debug('url = %s' %(url))
cls.logger.debug('url = %s, ydl_opts = %s' %(url, ydl_opts))

if url is None:
svr.put(cls.UrlErrorMsg)
Expand Down
2 changes: 1 addition & 1 deletion youtube_dl_webui/task.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ def __init__(self, tid, msg_cli, ydl_opts={}, info={}, status={}, log_size=10):
self.log.appendleft(log)

def start(self):
self.logger.info('Task starts, url - %s(%s)' %(self.url, self.tid))
self.logger.info('Task starts, url: %s(%s), ydl_opts: %s' %(self.url, self.tid, self.ydl_opts))
tm = time()
self.state = state_index['downloading']

Expand Down
125 changes: 71 additions & 54 deletions youtube_dl_webui/templates/test/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,22 @@
<legend>Task control</legend>
<div class="row">
<label class="left" for="url">URL:</label>
<input class="right" id="url" type="text" style="width:350px;" value="https://www.youtube.com/watch?v=C0DPdy98e4c">
<input class="right" id="url" type="text" style="width:350px;" value="https://www.youtube.com/watch?v=BaW_jenozKc">
<button class="right" id="add-task">Add</button>
</div>
<div class="row">
<label class="left" for="tid">TID:</label>
<input class="right" id="tid" type="text" style="width:350px;"> </div>
<input class="right" id="tid" type="text" style="width:350px;">
</div>
<div class="row">
<b>-- ydl opts --</b>
</div>
<div class="row">
<label class="left" for="format">format:</label>
<input class="right" id="format" type="text" style="width:350px;" value="best">
</div>
<div class="row">
<b>-- Operations --</b>
</div>
<div class="row">
<label class="left">Actions:</label>
Expand All @@ -41,48 +51,48 @@
<div class="row"></div>
<fieldset>
<legend>Settings</legend>
<div class="row">
<b>-- General --</b>
</div>
<div class="row general">
<label class="left" for="download_dir">Download Path:</label>
<input class="right" id="download_dir" type="text">
</div>
<div class="row general">
<label class="left" for="db_path">Database Path:</label>
<input class="right" id="db_path" type="text">
</div>
<div class="row general">
<label class="left" for="task_log_size">log-size: </label>
<input class="right" id="task_log_size" type="text" value="10">
</div>
<hr />
<div class="row">
<b>-- Server --</b>
</div>
<div class="row server">
<label class="left" for="server-host">HOST:</label>
<input class="right read-only" id="host" type="text" readonly>
</div>
<div class="row server">
<label class="left" for="server-port">PORT:</label>
<input class="right read-only" id="port" type="text" readonly>
</div>
<hr />
<div class="row">
<b>-- youtubedl --</b>
</div>
<div class="row youtube_dl">
<label class="left" for="format">Format:</label>
<input class="right" id="format" type="text">
</div>
<div class="row youtube_dl">
<label class="left" for="proxy">Proxy:</label>
<input class="right" id="proxy" type="text">
</div>
<div class="row">
<button id="conf-save">Save</button> <button id="conf-reset">Reset</button>
</div>
<div class="row">
<b>-- General --</b>
</div>
<div class="row general">
<label class="left" for="download_dir">Download Path:</label>
<input class="right" id="download_dir" type="text">
</div>
<div class="row general">
<label class="left" for="db_path">Database Path:</label>
<input class="right" id="db_path" type="text">
</div>
<div class="row general">
<label class="left" for="task_log_size">log-size: </label>
<input class="right" id="task_log_size" type="text" value="10">
</div>
<hr />
<div class="row">
<b>-- Server --</b>
</div>
<div class="row server">
<label class="left" for="server-host">HOST:</label>
<input class="right read-only" id="host" type="text" readonly>
</div>
<div class="row server">
<label class="left" for="server-port">PORT:</label>
<input class="right read-only" id="port" type="text" readonly>
</div>
<hr />
<div class="row">
<b>-- youtubedl --</b>
</div>
<div class="row youtube_dl">
<label class="left" for="format">Format:</label>
<input class="right" id="format" type="text">
</div>
<div class="row youtube_dl">
<label class="left" for="proxy">Proxy:</label>
<input class="right" id="proxy" type="text">
</div>
<div class="row">
<button id="conf-save">Save</button> <button id="conf-reset">Reset</button>
</div>
</fieldset>
</body>
<script type="text/javascript">
Expand All @@ -91,16 +101,23 @@
$("#conf-reset").trigger("click");

$("#add-task").click(function() {
$.post(host + '/task',
{
url: $("#url").val()
},
function(data, status) {
console.log(data);
if (data['status'] == 'success') {
$("#tid").val(data['tid']);
}
}, 'json');
var url = $("#url").val();
var format = $("#format").val();
var data = { url: url, ydl_opts: {format: format} };

$.ajax({url: host + '/task',
type: 'POST',
data: JSON.stringify(data),
contentType: 'application/json',
success: function(result) {
console.log(result);
if (result['status'] == 'success') {
$("#tid").val(result['tid']);
}
},
dataType: 'json'
});

});

$("#pause-task").click(function() {
Expand Down
1 change: 1 addition & 0 deletions youtube_dl_webui/worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ def intercept_ydl_opts(self):
self.ydl_opts['logger'] = self.log_filter
self.ydl_opts['progress_hooks'] = [self.ydl_hook.dispatcher]
self.ydl_opts['noplaylist'] = "false"
self.ydl_opts['progress_with_newline'] = True

def run(self):
self.intercept_ydl_opts()
Expand Down

0 comments on commit b7e47e8

Please sign in to comment.