|
|
@ -50,8 +50,6 @@ from sabnzbd.constants import ( |
|
|
|
) |
|
|
|
import sabnzbd.config as config |
|
|
|
import sabnzbd.cfg as cfg |
|
|
|
from sabnzbd.downloader import Downloader |
|
|
|
from sabnzbd.nzbqueue import NzbQueue |
|
|
|
import sabnzbd.scheduler as scheduler |
|
|
|
from sabnzbd.skintext import SKIN_TEXT |
|
|
|
from sabnzbd.utils.pathbrowser import folders_at_path |
|
|
@ -68,11 +66,7 @@ from sabnzbd.misc import ( |
|
|
|
) |
|
|
|
from sabnzbd.filesystem import diskspace, get_ext, globber_full, clip_path, remove_all, userxbit |
|
|
|
from sabnzbd.encoding import xml_name |
|
|
|
from sabnzbd.postproc import PostProcessor |
|
|
|
from sabnzbd.articlecache import ArticleCache |
|
|
|
from sabnzbd.utils.servertests import test_nntp_server_dict |
|
|
|
from sabnzbd.bpsmeter import BPSMeter |
|
|
|
from sabnzbd.rating import Rating |
|
|
|
from sabnzbd.getipaddress import localipv4, publicipv4, ipv6, addresslookup |
|
|
|
from sabnzbd.database import build_history_info, unpack_history_info, HistoryDB |
|
|
|
import sabnzbd.notifier |
|
|
@ -199,12 +193,12 @@ def _api_queue(name, output, kwargs): |
|
|
|
def _api_queue_delete(output, value, kwargs): |
|
|
|
""" API: accepts output, value """ |
|
|
|
if value.lower() == "all": |
|
|
|
removed = NzbQueue.do.remove_all(kwargs.get("search")) |
|
|
|
removed = sabnzbd.NzbQueue.remove_all(kwargs.get("search")) |
|
|
|
return report(output, keyword="", data={"status": bool(removed), "nzo_ids": removed}) |
|
|
|
elif value: |
|
|
|
items = value.split(",") |
|
|
|
delete_all_data = int_conv(kwargs.get("del_files")) |
|
|
|
removed = NzbQueue.do.remove_multiple(items, delete_all_data=delete_all_data) |
|
|
|
removed = sabnzbd.NzbQueue.remove_multiple(items, delete_all_data=delete_all_data) |
|
|
|
return report(output, keyword="", data={"status": bool(removed), "nzo_ids": removed}) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE) |
|
|
@ -214,7 +208,7 @@ def _api_queue_delete_nzf(output, value, kwargs): |
|
|
|
""" API: accepts value(=nzo_id), value2(=nzf_id) """ |
|
|
|
value2 = kwargs.get("value2") |
|
|
|
if value and value2: |
|
|
|
removed = NzbQueue.do.remove_nzf(value, value2, force_delete=True) |
|
|
|
removed = sabnzbd.NzbQueue.remove_nzf(value, value2, force_delete=True) |
|
|
|
return report(output, keyword="", data={"status": bool(removed), "nzf_ids": removed}) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE2) |
|
|
@ -225,7 +219,7 @@ def _api_queue_rename(output, value, kwargs): |
|
|
|
value2 = kwargs.get("value2") |
|
|
|
value3 = kwargs.get("value3") |
|
|
|
if value and value2: |
|
|
|
ret = NzbQueue.do.change_name(value, value2, value3) |
|
|
|
ret = sabnzbd.NzbQueue.change_name(value, value2, value3) |
|
|
|
return report(output, keyword="", data={"status": ret}) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE2) |
|
|
@ -239,7 +233,7 @@ def _api_queue_change_complete_action(output, value, kwargs): |
|
|
|
|
|
|
|
def _api_queue_purge(output, value, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
removed = NzbQueue.do.remove_all(kwargs.get("search")) |
|
|
|
removed = sabnzbd.NzbQueue.remove_all(kwargs.get("search")) |
|
|
|
return report(output, keyword="", data={"status": bool(removed), "nzo_ids": removed}) |
|
|
|
|
|
|
|
|
|
|
@ -247,7 +241,7 @@ def _api_queue_pause(output, value, kwargs): |
|
|
|
""" API: accepts output, value(=list of nzo_id) """ |
|
|
|
if value: |
|
|
|
items = value.split(",") |
|
|
|
handled = NzbQueue.do.pause_multiple_nzo(items) |
|
|
|
handled = sabnzbd.NzbQueue.pause_multiple_nzo(items) |
|
|
|
else: |
|
|
|
handled = False |
|
|
|
return report(output, keyword="", data={"status": bool(handled), "nzo_ids": handled}) |
|
|
@ -257,7 +251,7 @@ def _api_queue_resume(output, value, kwargs): |
|
|
|
""" API: accepts output, value(=list of nzo_id) """ |
|
|
|
if value: |
|
|
|
items = value.split(",") |
|
|
|
handled = NzbQueue.do.resume_multiple_nzo(items) |
|
|
|
handled = sabnzbd.NzbQueue.resume_multiple_nzo(items) |
|
|
|
else: |
|
|
|
handled = False |
|
|
|
return report(output, keyword="", data={"status": bool(handled), "nzo_ids": handled}) |
|
|
@ -272,7 +266,7 @@ def _api_queue_priority(output, value, kwargs): |
|
|
|
priority = int(value2) |
|
|
|
except: |
|
|
|
return report(output, _MSG_INT_VALUE) |
|
|
|
pos = NzbQueue.do.set_priority(value, priority) |
|
|
|
pos = sabnzbd.NzbQueue.set_priority(value, priority) |
|
|
|
# Returns the position in the queue, -1 is incorrect job-id |
|
|
|
return report(output, keyword="position", data=pos) |
|
|
|
except: |
|
|
@ -286,7 +280,7 @@ def _api_queue_sort(output, value, kwargs): |
|
|
|
sort = kwargs.get("sort") |
|
|
|
direction = kwargs.get("dir", "") |
|
|
|
if sort: |
|
|
|
NzbQueue.do.sort_queue(sort, direction) |
|
|
|
sabnzbd.NzbQueue.sort_queue(sort, direction) |
|
|
|
return report(output) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE2) |
|
|
@ -304,13 +298,13 @@ def _api_queue_default(output, value, kwargs): |
|
|
|
|
|
|
|
def _api_queue_rating(output, value, kwargs): |
|
|
|
""" API: accepts output, value(=nzo_id), type, setting, detail """ |
|
|
|
vote_map = {"up": Rating.VOTE_UP, "down": Rating.VOTE_DOWN} |
|
|
|
vote_map = {"up": sabnzbd.Rating.VOTE_UP, "down": sabnzbd.Rating.VOTE_DOWN} |
|
|
|
flag_map = { |
|
|
|
"spam": Rating.FLAG_SPAM, |
|
|
|
"encrypted": Rating.FLAG_ENCRYPTED, |
|
|
|
"expired": Rating.FLAG_EXPIRED, |
|
|
|
"other": Rating.FLAG_OTHER, |
|
|
|
"comment": Rating.FLAG_COMMENT, |
|
|
|
"spam": sabnzbd.Rating.FLAG_SPAM, |
|
|
|
"encrypted": sabnzbd.Rating.FLAG_ENCRYPTED, |
|
|
|
"expired": sabnzbd.Rating.FLAG_EXPIRED, |
|
|
|
"other": sabnzbd.Rating.FLAG_OTHER, |
|
|
|
"comment": sabnzbd.Rating.FLAG_COMMENT, |
|
|
|
} |
|
|
|
content_type = kwargs.get("type") |
|
|
|
setting = kwargs.get("setting") |
|
|
@ -326,7 +320,7 @@ def _api_queue_rating(output, value, kwargs): |
|
|
|
if content_type == "flag": |
|
|
|
flag = flag_map[setting] |
|
|
|
if cfg.rating_enable(): |
|
|
|
Rating.do.update_user_rating(value, video, audio, vote, flag, kwargs.get("detail")) |
|
|
|
sabnzbd.Rating.update_user_rating(value, video, audio, vote, flag, kwargs.get("detail")) |
|
|
|
return report(output) |
|
|
|
except: |
|
|
|
return report(output, _MSG_BAD_SERVER_PARMS) |
|
|
@ -389,7 +383,7 @@ def _api_retry(name, output, kwargs): |
|
|
|
def _api_cancel_pp(name, output, kwargs): |
|
|
|
""" API: accepts name, output, value(=nzo_id) """ |
|
|
|
nzo_id = kwargs.get("value") |
|
|
|
if PostProcessor.do.cancel_pp(nzo_id): |
|
|
|
if sabnzbd.PostProcessor.cancel_pp(nzo_id): |
|
|
|
return report(output, keyword="", data={"status": True, "nzo_id": nzo_id}) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_ITEM) |
|
|
@ -438,7 +432,7 @@ def _api_switch(name, output, kwargs): |
|
|
|
value = kwargs.get("value") |
|
|
|
value2 = kwargs.get("value2") |
|
|
|
if value and value2: |
|
|
|
pos, prio = NzbQueue.do.switch(value, value2) |
|
|
|
pos, prio = sabnzbd.NzbQueue.switch(value, value2) |
|
|
|
# Returns the new position and new priority (if different) |
|
|
|
return report(output, keyword="result", data={"position": pos, "priority": prio}) |
|
|
|
else: |
|
|
@ -454,7 +448,7 @@ def _api_change_cat(name, output, kwargs): |
|
|
|
cat = value2 |
|
|
|
if cat == "None": |
|
|
|
cat = None |
|
|
|
result = NzbQueue.do.change_cat(nzo_id, cat) |
|
|
|
result = sabnzbd.NzbQueue.change_cat(nzo_id, cat) |
|
|
|
return report(output, keyword="status", data=bool(result > 0)) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE) |
|
|
@ -469,7 +463,7 @@ def _api_change_script(name, output, kwargs): |
|
|
|
script = value2 |
|
|
|
if script.lower() == "none": |
|
|
|
script = None |
|
|
|
result = NzbQueue.do.change_script(nzo_id, script) |
|
|
|
result = sabnzbd.NzbQueue.change_script(nzo_id, script) |
|
|
|
return report(output, keyword="status", data=bool(result > 0)) |
|
|
|
else: |
|
|
|
return report(output, _MSG_NO_VALUE) |
|
|
@ -481,7 +475,7 @@ def _api_change_opts(name, output, kwargs): |
|
|
|
value2 = kwargs.get("value2") |
|
|
|
result = 0 |
|
|
|
if value and value2 and value2.isdigit(): |
|
|
|
result = NzbQueue.do.change_opts(value, int(value2)) |
|
|
|
result = sabnzbd.NzbQueue.change_opts(value, int(value2)) |
|
|
|
return report(output, keyword="status", data=bool(result > 0)) |
|
|
|
|
|
|
|
|
|
|
@ -534,7 +528,7 @@ def _api_history(name, output, kwargs): |
|
|
|
return report(output, _MSG_NO_VALUE) |
|
|
|
elif not name: |
|
|
|
history = {} |
|
|
|
grand, month, week, day = BPSMeter.do.get_sums() |
|
|
|
grand, month, week, day = sabnzbd.BPSMeter.get_sums() |
|
|
|
history["total_size"], history["month_size"], history["week_size"], history["day_size"] = ( |
|
|
|
to_units(grand), |
|
|
|
to_units(month), |
|
|
@ -581,7 +575,7 @@ def _api_addurl(name, output, kwargs): |
|
|
|
def _api_pause(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
scheduler.plan_resume(0) |
|
|
|
Downloader.do.pause() |
|
|
|
sabnzbd.Downloader.pause() |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
@ -660,7 +654,7 @@ def _api_restart_repair(name, output, kwargs): |
|
|
|
|
|
|
|
def _api_disconnect(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
Downloader.do.disconnect() |
|
|
|
sabnzbd.Downloader.disconnect() |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
@ -673,7 +667,7 @@ def _api_osx_icon(name, output, kwargs): |
|
|
|
|
|
|
|
def _api_rescan(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
NzbQueue.do.scan_jobs(all_jobs=False, action=True) |
|
|
|
sabnzbd.NzbQueue.scan_jobs(all_jobs=False, action=True) |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
@ -692,19 +686,19 @@ def _api_eval_sort(name, output, kwargs): |
|
|
|
|
|
|
|
def _api_watched_now(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
sabnzbd.dirscanner.dirscan() |
|
|
|
sabnzbd.DirScanner.scan() |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
|
def _api_resume_pp(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
PostProcessor.do.paused = False |
|
|
|
sabnzbd.PostProcessor.paused = False |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
|
def _api_pause_pp(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
PostProcessor.do.paused = True |
|
|
|
sabnzbd.PostProcessor.paused = True |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
@ -722,7 +716,7 @@ def _api_retry_all(name, output, kwargs): |
|
|
|
|
|
|
|
def _api_reset_quota(name, output, kwargs): |
|
|
|
""" Reset quota left """ |
|
|
|
BPSMeter.do.reset_quota(force=True) |
|
|
|
sabnzbd.BPSMeter.reset_quota(force=True) |
|
|
|
|
|
|
|
|
|
|
|
def _api_test_email(name, output, kwargs): |
|
|
@ -827,13 +821,13 @@ def _api_config_speedlimit(output, kwargs): |
|
|
|
value = kwargs.get("value") |
|
|
|
if not value: |
|
|
|
value = "0" |
|
|
|
Downloader.do.limit_speed(value) |
|
|
|
sabnzbd.Downloader.limit_speed(value) |
|
|
|
return report(output) |
|
|
|
|
|
|
|
|
|
|
|
def _api_config_get_speedlimit(output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
return report(output, keyword="speedlimit", data=Downloader.do.get_limit()) |
|
|
|
return report(output, keyword="speedlimit", data=sabnzbd.Downloader.get_limit()) |
|
|
|
|
|
|
|
|
|
|
|
def _api_config_set_colorscheme(output, kwargs): |
|
|
@ -898,11 +892,11 @@ def _api_config_undefined(output, kwargs): |
|
|
|
|
|
|
|
def _api_server_stats(name, output, kwargs): |
|
|
|
""" API: accepts output """ |
|
|
|
sum_t, sum_m, sum_w, sum_d = BPSMeter.do.get_sums() |
|
|
|
sum_t, sum_m, sum_w, sum_d = sabnzbd.BPSMeter.get_sums() |
|
|
|
stats = {"total": sum_t, "month": sum_m, "week": sum_w, "day": sum_d, "servers": {}} |
|
|
|
|
|
|
|
for svr in config.get_servers(): |
|
|
|
t, m, w, d, daily = BPSMeter.do.amounts(svr) |
|
|
|
t, m, w, d, daily = sabnzbd.BPSMeter.amounts(svr) |
|
|
|
stats["servers"][svr] = {"total": t or 0, "month": m or 0, "week": w or 0, "day": d or 0, "daily": daily or {}} |
|
|
|
|
|
|
|
return report(output, keyword="", data=stats) |
|
|
@ -1119,7 +1113,7 @@ def handle_server_api(output, kwargs): |
|
|
|
else: |
|
|
|
config.ConfigServer(name, kwargs) |
|
|
|
old_name = None |
|
|
|
Downloader.do.update_server(old_name, name) |
|
|
|
sabnzbd.Downloader.update_server(old_name, name) |
|
|
|
return name |
|
|
|
|
|
|
|
|
|
|
@ -1180,7 +1174,7 @@ def build_status(skip_dashboard=False, output=None): |
|
|
|
info["logfile"] = sabnzbd.LOGFILE |
|
|
|
info["weblogfile"] = sabnzbd.WEBLOGFILE |
|
|
|
info["loglevel"] = str(cfg.log_level()) |
|
|
|
info["folders"] = NzbQueue.do.scan_jobs(all_jobs=False, action=False) |
|
|
|
info["folders"] = sabnzbd.NzbQueue.scan_jobs(all_jobs=False, action=False) |
|
|
|
info["configfn"] = config.get_filename() |
|
|
|
|
|
|
|
# Dashboard: Speed of System |
|
|
@ -1211,7 +1205,7 @@ def build_status(skip_dashboard=False, output=None): |
|
|
|
info["dnslookup"] = None |
|
|
|
|
|
|
|
info["servers"] = [] |
|
|
|
servers = sorted(Downloader.do.servers[:], key=lambda svr: "%02d%s" % (svr.priority, svr.displayname.lower())) |
|
|
|
servers = sorted(sabnzbd.Downloader.servers[:], key=lambda svr: "%02d%s" % (svr.priority, svr.displayname.lower())) |
|
|
|
for server in servers: |
|
|
|
serverconnections = [] |
|
|
|
connected = 0 |
|
|
@ -1343,7 +1337,7 @@ def build_queue(start=0, limit=0, trans=False, output=None, search=None): |
|
|
|
slot["mb_fmt"] = locale.format_string("%d", int(mb), True) |
|
|
|
slot["mbdone_fmt"] = locale.format_string("%d", int(mb - mbleft), True) |
|
|
|
|
|
|
|
if not Downloader.do.paused and status not in (Status.PAUSED, Status.FETCHING, Status.GRABBING): |
|
|
|
if not sabnzbd.Downloader.paused and status not in (Status.PAUSED, Status.FETCHING, Status.GRABBING): |
|
|
|
if is_propagating: |
|
|
|
slot["status"] = Status.PROP |
|
|
|
elif status == Status.CHECKING: |
|
|
@ -1357,8 +1351,8 @@ def build_queue(start=0, limit=0, trans=False, output=None, search=None): |
|
|
|
slot["status"] = "%s" % status |
|
|
|
|
|
|
|
if ( |
|
|
|
Downloader.do.paused |
|
|
|
or Downloader.do.postproc |
|
|
|
sabnzbd.Downloader.paused |
|
|
|
or sabnzbd.Downloader.postproc |
|
|
|
or is_propagating |
|
|
|
or status not in (Status.DOWNLOADING, Status.FETCHING, Status.QUEUED) |
|
|
|
) and priority != FORCE_PRIORITY: |
|
|
@ -1381,7 +1375,7 @@ def build_queue(start=0, limit=0, trans=False, output=None, search=None): |
|
|
|
else: |
|
|
|
slot["avg_age"] = calc_age(average_date, bool(trans)) |
|
|
|
|
|
|
|
rating = Rating.do.get_rating_by_nzo(nzo_id) |
|
|
|
rating = sabnzbd.Rating.get_rating_by_nzo(nzo_id) |
|
|
|
slot["has_rating"] = rating is not None |
|
|
|
if rating: |
|
|
|
slot["rating_avg_video"] = rating.avg_video |
|
|
@ -1400,9 +1394,9 @@ def build_queue(start=0, limit=0, trans=False, output=None, search=None): |
|
|
|
|
|
|
|
def fast_queue(): |
|
|
|
""" Return paused, bytes_left, bpsnow, time_left """ |
|
|
|
bytes_left = NzbQueue.do.remaining() |
|
|
|
paused = Downloader.do.paused |
|
|
|
bpsnow = BPSMeter.do.bps |
|
|
|
bytes_left = sabnzbd.sabnzbd.NzbQueue.remaining() |
|
|
|
paused = sabnzbd.Downloader.paused |
|
|
|
bpsnow = sabnzbd.BPSMeter.bps |
|
|
|
time_left = calc_timeleft(bytes_left, bpsnow) |
|
|
|
return paused, bytes_left, bpsnow, time_left |
|
|
|
|
|
|
@ -1410,7 +1404,7 @@ def fast_queue(): |
|
|
|
def build_file_list(nzo_id: str): |
|
|
|
"""Build file lists for specified job""" |
|
|
|
jobs = [] |
|
|
|
nzo = NzbQueue.do.get_nzo(nzo_id) |
|
|
|
nzo = sabnzbd.sabnzbd.NzbQueue.get_nzo(nzo_id) |
|
|
|
if nzo: |
|
|
|
pnfo = nzo.gather_info(full=True) |
|
|
|
|
|
|
@ -1487,7 +1481,7 @@ def retry_job(job, new_nzb=None, password=None): |
|
|
|
nzo_id = sabnzbd.add_url(url, pp, script, cat) |
|
|
|
else: |
|
|
|
path = history_db.get_path(job) |
|
|
|
nzo_id = NzbQueue.do.repair_job(path, new_nzb, password) |
|
|
|
nzo_id = sabnzbd.NzbQueue.repair_job(path, new_nzb, password) |
|
|
|
if nzo_id: |
|
|
|
# Only remove from history if we repaired something |
|
|
|
history_db.remove_history(job) |
|
|
@ -1516,9 +1510,9 @@ def del_job_files(job_paths): |
|
|
|
def del_hist_job(job, del_files): |
|
|
|
""" Remove history element """ |
|
|
|
if job: |
|
|
|
path = PostProcessor.do.get_path(job) |
|
|
|
path = sabnzbd.PostProcessor.get_path(job) |
|
|
|
if path: |
|
|
|
PostProcessor.do.delete(job, del_files=del_files) |
|
|
|
sabnzbd.PostProcessor.delete(job, del_files=del_files) |
|
|
|
else: |
|
|
|
history_db = sabnzbd.get_db_connection() |
|
|
|
remove_all(history_db.get_path(job), recursive=True) |
|
|
@ -1568,10 +1562,10 @@ def build_header(webdir="", output=None, trans_functions=True): |
|
|
|
except: |
|
|
|
uptime = "-" |
|
|
|
|
|
|
|
speed_limit = Downloader.do.get_limit() |
|
|
|
speed_limit = sabnzbd.Downloader.get_limit() |
|
|
|
if speed_limit <= 0: |
|
|
|
speed_limit = 100 |
|
|
|
speed_limit_abs = Downloader.do.get_limit_abs() |
|
|
|
speed_limit_abs = sabnzbd.Downloader.get_limit_abs() |
|
|
|
if speed_limit_abs <= 0: |
|
|
|
speed_limit_abs = "" |
|
|
|
|
|
|
@ -1609,7 +1603,7 @@ def build_header(webdir="", output=None, trans_functions=True): |
|
|
|
header["new_release"], header["new_rel_url"] = sabnzbd.NEW_VERSION |
|
|
|
|
|
|
|
header["version"] = sabnzbd.__version__ |
|
|
|
header["paused"] = bool(Downloader.do.paused or Downloader.do.postproc) |
|
|
|
header["paused"] = bool(sabnzbd.Downloader.paused or sabnzbd.Downloader.postproc) |
|
|
|
header["pause_int"] = scheduler.pause_int() |
|
|
|
header["paused_all"] = sabnzbd.PAUSED_ALL |
|
|
|
|
|
|
@ -1626,11 +1620,11 @@ def build_header(webdir="", output=None, trans_functions=True): |
|
|
|
header["have_warnings"] = str(sabnzbd.GUIHANDLER.count()) |
|
|
|
header["finishaction"] = sabnzbd.QUEUECOMPLETE |
|
|
|
|
|
|
|
header["quota"] = to_units(BPSMeter.do.quota) |
|
|
|
header["have_quota"] = bool(BPSMeter.do.quota > 0.0) |
|
|
|
header["left_quota"] = to_units(BPSMeter.do.left) |
|
|
|
header["quota"] = to_units(sabnzbd.BPSMeter.quota) |
|
|
|
header["have_quota"] = bool(sabnzbd.BPSMeter.quota > 0.0) |
|
|
|
header["left_quota"] = to_units(sabnzbd.BPSMeter.left) |
|
|
|
|
|
|
|
anfo = ArticleCache.do.cache_info() |
|
|
|
anfo = sabnzbd.ArticleCache.cache_info() |
|
|
|
header["cache_art"] = str(anfo.article_sum) |
|
|
|
header["cache_size"] = to_units(anfo.cache_size, "B") |
|
|
|
header["cache_max"] = str(anfo.cache_limit) |
|
|
@ -1643,8 +1637,8 @@ def build_queue_header(search=None, start=0, limit=0, output=None): |
|
|
|
|
|
|
|
header = build_header(output=output) |
|
|
|
|
|
|
|
bytespersec = BPSMeter.do.bps |
|
|
|
qnfo = NzbQueue.do.queue_info(search=search, start=start, limit=limit) |
|
|
|
bytespersec = sabnzbd.BPSMeter.bps |
|
|
|
qnfo = sabnzbd.NzbQueue.queue_info(search=search, start=start, limit=limit) |
|
|
|
|
|
|
|
bytesleft = qnfo.bytes_left |
|
|
|
bytes_total = qnfo.bytes |
|
|
@ -1657,7 +1651,7 @@ def build_queue_header(search=None, start=0, limit=0, output=None): |
|
|
|
header["size"] = to_units(bytes_total, "B") |
|
|
|
header["noofslots_total"] = qnfo.q_fullsize |
|
|
|
|
|
|
|
if Downloader.do.paused or Downloader.do.postproc: |
|
|
|
if sabnzbd.Downloader.paused or sabnzbd.Downloader.postproc: |
|
|
|
status = Status.PAUSED |
|
|
|
elif bytespersec > 0: |
|
|
|
status = Status.DOWNLOADING |
|
|
@ -1682,7 +1676,7 @@ def build_history(start=0, limit=0, search=None, failed_only=0, categories=None) |
|
|
|
limit = 1000000 |
|
|
|
|
|
|
|
# Grab any items that are active or queued in postproc |
|
|
|
postproc_queue = PostProcessor.do.get_queue() |
|
|
|
postproc_queue = sabnzbd.PostProcessor.get_queue() |
|
|
|
|
|
|
|
# Filter out any items that don't match the search term or category |
|
|
|
if postproc_queue: |
|
|
@ -1762,7 +1756,7 @@ def build_history(start=0, limit=0, search=None, failed_only=0, categories=None) |
|
|
|
item["retry"] = True |
|
|
|
|
|
|
|
if rating_enabled: |
|
|
|
rating = Rating.do.get_rating_by_nzo(item["nzo_id"]) |
|
|
|
rating = sabnzbd.Rating.get_rating_by_nzo(item["nzo_id"]) |
|
|
|
item["has_rating"] = rating is not None |
|
|
|
if rating: |
|
|
|
item["rating_avg_video"] = rating.avg_video |
|
|
@ -1913,7 +1907,7 @@ def del_from_section(kwargs): |
|
|
|
del item |
|
|
|
config.save_config() |
|
|
|
if section == "servers": |
|
|
|
Downloader.do.update_server(keyword, None) |
|
|
|
sabnzbd.Downloader.update_server(keyword, None) |
|
|
|
return True |
|
|
|
else: |
|
|
|
return False |
|
|
|