Rev3097, Add peer info for bigfiles even if it's not downloaded
This commit is contained in:
parent
07caaa6b48
commit
7905e12fc3
2 changed files with 15 additions and 14 deletions
|
@ -50,14 +50,12 @@ class UiWebsocketPlugin(object):
|
||||||
sha512 = file_info["sha512"]
|
sha512 = file_info["sha512"]
|
||||||
piecefield = site.storage.piecefields[sha512].tostring()
|
piecefield = site.storage.piecefields[sha512].tostring()
|
||||||
|
|
||||||
if not piecefield:
|
if piecefield:
|
||||||
return False
|
row["pieces"] = len(piecefield)
|
||||||
|
row["pieces_downloaded"] = piecefield.count("1")
|
||||||
row["pieces"] = len(piecefield)
|
row["downloaded_percent"] = 100 * row["pieces_downloaded"] / row["pieces"]
|
||||||
row["pieces_downloaded"] = piecefield.count("1")
|
row["bytes_downloaded"] = row["pieces_downloaded"] * file_info["piece_size"]
|
||||||
row["downloaded_percent"] = 100 * row["pieces_downloaded"] / row["pieces"]
|
row["is_downloading"] = bool(next((task for task in site.worker_manager.tasks if task["inner_path"].startswith(row["inner_path"])), False))
|
||||||
row["bytes_downloaded"] = row["pieces_downloaded"] * file_info["piece_size"]
|
|
||||||
row["is_downloading"] = bool(next((key for key in site.bad_files if key.startswith(row["inner_path"])), False))
|
|
||||||
|
|
||||||
# Add leech / seed stats
|
# Add leech / seed stats
|
||||||
row["peer_seed"] = 0
|
row["peer_seed"] = 0
|
||||||
|
@ -66,16 +64,19 @@ class UiWebsocketPlugin(object):
|
||||||
if not peer.time_piecefields_updated or sha512 not in peer.piecefields:
|
if not peer.time_piecefields_updated or sha512 not in peer.piecefields:
|
||||||
continue
|
continue
|
||||||
peer_piecefield = peer.piecefields[sha512].tostring()
|
peer_piecefield = peer.piecefields[sha512].tostring()
|
||||||
if peer_piecefield == "1" * row["pieces"]:
|
if not peer_piecefield:
|
||||||
|
continue
|
||||||
|
if peer_piecefield == "1" * len(peer_piecefield):
|
||||||
row["peer_seed"] += 1
|
row["peer_seed"] += 1
|
||||||
else:
|
else:
|
||||||
row["peer_leech"] += 1
|
row["peer_leech"] += 1
|
||||||
|
|
||||||
# Add myself
|
# Add myself
|
||||||
if row["pieces_downloaded"] == row["pieces"]:
|
if piecefield:
|
||||||
row["peer_seed"] += 1
|
if row["pieces_downloaded"] == row["pieces"]:
|
||||||
else:
|
row["peer_seed"] += 1
|
||||||
row["peer_leech"] += 1
|
else:
|
||||||
|
row["peer_leech"] += 1
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ class Config(object):
|
||||||
|
|
||||||
def __init__(self, argv):
|
def __init__(self, argv):
|
||||||
self.version = "0.6.0"
|
self.version = "0.6.0"
|
||||||
self.rev = 3095
|
self.rev = 3097
|
||||||
self.argv = argv
|
self.argv = argv
|
||||||
self.action = None
|
self.action = None
|
||||||
self.config_file = "zeronet.conf"
|
self.config_file = "zeronet.conf"
|
||||||
|
|
Loading…
Reference in a new issue