mirror of
https://github.com/onionshare/onionshare.git
synced 2025-06-12 00:33:03 -04:00
renamed check_for_requests to heartbeat, and made the heartbeat serve all items in the queue instead of just the latest (#36)
This commit is contained in:
parent
68bba73a8c
commit
1cc817db3c
3 changed files with 36 additions and 26 deletions
|
@ -29,13 +29,13 @@ REQUEST_LOAD = 0
|
|||
REQUEST_DOWNLOAD = 1
|
||||
REQUEST_PROGRESS = 2
|
||||
REQUEST_OTHER = 3
|
||||
request_q = Queue.Queue()
|
||||
q = Queue.Queue()
|
||||
|
||||
download_count = 0
|
||||
|
||||
def add_request(type, path, data=None):
|
||||
global request_q
|
||||
request_q.put({
|
||||
global q
|
||||
q.put({
|
||||
'type': type,
|
||||
'path': path,
|
||||
'data': data
|
||||
|
@ -50,7 +50,7 @@ def index():
|
|||
|
||||
@app.route("/{0}/download".format(slug))
|
||||
def download():
|
||||
global filename, filesize, request_q, download_count
|
||||
global filename, filesize, q, download_count
|
||||
global REQUEST_DOWNLOAD, REQUEST_PROGRESS
|
||||
|
||||
# each download has a unique id
|
||||
|
|
|
@ -25,10 +25,13 @@ $(function(){
|
|||
var REQUEST_OTHER = 3;
|
||||
function check_for_requests() {
|
||||
$.ajax({
|
||||
url: '/check_for_requests',
|
||||
url: '/heartbeat',
|
||||
success: function(data, textStatus, jqXHR){
|
||||
if(data != '') {
|
||||
var r = JSON.parse(data);
|
||||
var events = JSON.parse(data);
|
||||
for(var i=0; i<events.length; i++) {
|
||||
var r = events[i];
|
||||
|
||||
if(r.type == REQUEST_LOAD) {
|
||||
update($('<span>').addClass('weblog').html(onionshare.strings['download_page_loaded']));
|
||||
} else if(r.type == REQUEST_DOWNLOAD) {
|
||||
|
@ -45,6 +48,7 @@ $(function(){
|
|||
update($('<span>').addClass('weblog-error').html(onionshare.strings['other_page_loaded']+': '+r.path));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
setTimeout(check_for_requests, 1000);
|
||||
}
|
||||
|
|
|
@ -51,12 +51,18 @@ def copy_url():
|
|||
clipboard.set_text(url)
|
||||
return ''
|
||||
|
||||
@app.route("/check_for_requests")
|
||||
@app.route("/heartbeat")
|
||||
def check_for_requests():
|
||||
global onionshare
|
||||
try:
|
||||
r = onionshare.request_q.get(False)
|
||||
return json.dumps(r)
|
||||
except onionshare.Queue.Empty:
|
||||
return ''
|
||||
events = []
|
||||
|
||||
done = False
|
||||
while not done:
|
||||
try:
|
||||
r = onionshare.q.get(False)
|
||||
events.append(r)
|
||||
except onionshare.Queue.Empty:
|
||||
done = True
|
||||
|
||||
return json.dumps(events)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue