From 8db87bdbc54a073e0cf38158fdf8eb0babd61147 Mon Sep 17 00:00:00 2001 From: krateng Date: Sun, 13 Feb 2022 07:45:22 +0100 Subject: [PATCH] Various fixes --- maloja/apis/native_v1.py | 13 ++++++------- maloja/database/__init__.py | 2 +- maloja/malojauri.py | 2 +- maloja/web/jinja/abstracts/base.jinja | 1 + maloja/web/jinja/admin_setup.jinja | 22 ++++++++++++++-------- pyproject.toml | 5 +++-- 6 files changed, 26 insertions(+), 19 deletions(-) diff --git a/maloja/apis/native_v1.py b/maloja/apis/native_v1.py index f0b1d4d..0a4b10f 100644 --- a/maloja/apis/native_v1.py +++ b/maloja/apis/native_v1.py @@ -225,19 +225,18 @@ def post_scrobble(artist:Multi=None,**keys): :param string artists: List of artists. Overwritten by artist parameter. :param string title: Title of the track. :param string album: Name of the album. Optional. + :param string albumartists: Album artists. Optional. :param int duration: Actual listened duration of the scrobble in seconds. Optional. + :param int length: Total length of the track in seconds. Optional. :param int time: UNIX timestamp of the scrobble. Optional, not needed if scrobble is at time of request. + :param boolean nofix: Skip server-side metadata parsing. Optional. """ #artists = "/".join(artist) - artists = artist if artist is not None else keys.get("artists") - title = keys.get("title") - album = keys.get("album") - duration = keys.get("seconds") - time = keys.get("time") - nofix = keys.get("nofix") is not None + keys['artists'] = [artist] if artist is not None else keys.get("artists") + keys['fix'] = keys.get("nofix") is None if time is not None: time = int(time) - return incoming_scrobble(artists,title,album=album,duration=duration,time=time,fix=not nofix) + return incoming_scrobble(**keys) diff --git a/maloja/database/__init__.py b/maloja/database/__init__.py index b6a5db5..0317b2c 100644 --- a/maloja/database/__init__.py +++ b/maloja/database/__init__.py @@ -72,7 +72,7 @@ coa = CollectorAgent() -def incoming_scrobble(artists,title,album=None,albumartists=None,duration=None,time=None,fix=True): +def incoming_scrobble(artists,title,album=None,albumartists=None,duration=None,length=None,time=None,fix=True): if time is None: time = int(datetime.datetime.now(tz=datetime.timezone.utc).timestamp()) diff --git a/maloja/malojauri.py b/maloja/malojauri.py index 8b3f34b..d93caeb 100644 --- a/maloja/malojauri.py +++ b/maloja/malojauri.py @@ -36,7 +36,7 @@ def uri_to_internal(keys,forceTrack=False,forceArtist=False,api=False): limitkeys["timerange"] = get_range_object(since=since,to=to,within=within) #3 - delimitkeys = {"step":"month","stepn":1,"trail":1} + delimitkeys = {"step":"year","stepn":1,"trail":1} if "step" in keys: [delimitkeys["step"],delimitkeys["stepn"]] = (keys["step"].split("-") + [1])[:2] if "stepn" in keys: delimitkeys["stepn"] = keys["stepn"] #overwrite if explicitly given if "stepn" in delimitkeys: delimitkeys["stepn"] = int(delimitkeys["stepn"]) #in both cases, convert it here diff --git a/maloja/web/jinja/abstracts/base.jinja b/maloja/web/jinja/abstracts/base.jinja index 1cab479..8411e93 100644 --- a/maloja/web/jinja/abstracts/base.jinja +++ b/maloja/web/jinja/abstracts/base.jinja @@ -49,6 +49,7 @@