From efad4379be79d6a33ce86c697c531008584431cc Mon Sep 17 00:00:00 2001 From: krateng Date: Sun, 16 Jan 2022 16:49:17 +0100 Subject: [PATCH 1/5] Added log output, GH-98 --- maloja/apis/_base.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/maloja/apis/_base.py b/maloja/apis/_base.py index ab7328c..22165c1 100644 --- a/maloja/apis/_base.py +++ b/maloja/apis/_base.py @@ -66,9 +66,10 @@ class APIHandler: exceptiontype = sys.exc_info()[0] if exceptiontype in self.errors: response.status,result = self.errors[exceptiontype] + log(f"Error with {self.__apiname__}: {result} ({exceptiontype})") else: - log("Unhandled Exception with " + self.__apiname__ + ": " + str(exceptiontype)) response.status,result = 500,{"status":"Unknown error","code":500} + log(f"Unhandled Exception with {self.__apiname__}: {exceptiontype}") return result #else: From b3002b15789824c6ac12fec26e6f19f567adb161 Mon Sep 17 00:00:00 2001 From: krateng Date: Wed, 26 Jan 2022 07:34:17 +0100 Subject: [PATCH 2/5] Fixed Plex scrobbling (new web interface) --- auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json | 2 +- auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js | 2 +- maloja/apis/_base.py | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json b/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json index 976176a..1c252cd 100644 --- a/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json +++ b/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json @@ -1,6 +1,6 @@ { "name": "Maloja Scrobbler", - "version": "1.8", + "version": "1.9", "description": "Scrobbles tracks from various sites to your Maloja server", "manifest_version": 2, "permissions": [ diff --git a/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js b/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js index b81de28..0995ca4 100644 --- a/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js +++ b/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js @@ -3,7 +3,7 @@ maloja_scrobbler_selector_playbar = "//div[contains(@class,'PlayerControls')]" maloja_scrobbler_selector_metadata = ".//div[contains(@class,'PlayerControlsMetadata-container')]" -maloja_scrobbler_selector_title = ".//a[@data-qa-id='metadataTitleLink']/@title" +maloja_scrobbler_selector_title = ".//a[@data-testid='metadataTitleLink']/@title" maloja_scrobbler_selector_artist = ".//span[contains(@class,'MetadataPosterTitle-title')]/a[1]/@title" maloja_scrobbler_selector_duration = ".//button[@data-qa-id='mediaDuration']/text()[3]" diff --git a/maloja/apis/_base.py b/maloja/apis/_base.py index 22165c1..9a365d9 100644 --- a/maloja/apis/_base.py +++ b/maloja/apis/_base.py @@ -66,10 +66,10 @@ class APIHandler: exceptiontype = sys.exc_info()[0] if exceptiontype in self.errors: response.status,result = self.errors[exceptiontype] - log(f"Error with {self.__apiname__}: {result} ({exceptiontype})") + log(f"Error with {self.__apiname__} API: {exceptiontype} (Request: {path})") else: response.status,result = 500,{"status":"Unknown error","code":500} - log(f"Unhandled Exception with {self.__apiname__}: {exceptiontype}") + log(f"Unhandled Exception with {self.__apiname__} API: {exceptiontype} (Request: {path})") return result #else: From 4f7e1decd32c8e6c0d6a06a889972f580392b03c Mon Sep 17 00:00:00 2001 From: krateng Date: Fri, 28 Jan 2022 06:07:02 +0100 Subject: [PATCH 3/5] Added rules --- .../config/rules/predefined/krateng_kpopgirlgroups.tsv | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maloja/data_files/config/rules/predefined/krateng_kpopgirlgroups.tsv b/maloja/data_files/config/rules/predefined/krateng_kpopgirlgroups.tsv index 739ca75..53a71fe 100644 --- a/maloja/data_files/config/rules/predefined/krateng_kpopgirlgroups.tsv +++ b/maloja/data_files/config/rules/predefined/krateng_kpopgirlgroups.tsv @@ -198,6 +198,12 @@ countas 3Won IZ*ONE replaceartist ChaeYenJin ACE countas ACE IZ*ONE countas Chaewon IZ*ONE +countas Minju IZ*ONE + + +countas Yeji ITZY +countas Wonyoung IVE +countas Yujin IVE # Popular Remixes artistintitle Areia Remix Areia From d3797d89fa2bfee1bb505da3df6a2ce07a46f8ef Mon Sep 17 00:00:00 2001 From: krateng Date: Thu, 10 Feb 2022 08:32:44 +0100 Subject: [PATCH 4/5] Fixed Plex scrobbling again --- auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json | 2 +- auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json b/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json index 1c252cd..e5af3a8 100644 --- a/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json +++ b/auxiliary/chromium_scrobbler/maloja-scrobbler/manifest.json @@ -1,6 +1,6 @@ { "name": "Maloja Scrobbler", - "version": "1.9", + "version": "1.10", "description": "Scrobbles tracks from various sites to your Maloja server", "manifest_version": 2, "permissions": [ diff --git a/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js b/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js index 0995ca4..6342361 100644 --- a/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js +++ b/auxiliary/chromium_scrobbler/maloja-scrobbler/sites/plex.js @@ -5,7 +5,7 @@ maloja_scrobbler_selector_metadata = ".//div[contains(@class,'PlayerControlsMeta maloja_scrobbler_selector_title = ".//a[@data-testid='metadataTitleLink']/@title" maloja_scrobbler_selector_artist = ".//span[contains(@class,'MetadataPosterTitle-title')]/a[1]/@title" -maloja_scrobbler_selector_duration = ".//button[@data-qa-id='mediaDuration']/text()[3]" +maloja_scrobbler_selector_duration = ".//button[@data-testid='mediaDuration']/text()[3]" maloja_scrobbler_selector_control = ".//div[contains(@class,'PlayerControls-buttonGroupCenter')]/button[2]/@title" From 38e2a184af59a24805be6c0ab34359bc11757362 Mon Sep 17 00:00:00 2001 From: krateng Date: Sun, 13 Feb 2022 05:56:36 +0100 Subject: [PATCH 5/5] Added password confirmation prompt --- maloja/proccontrol/setup.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/maloja/proccontrol/setup.py b/maloja/proccontrol/setup.py index c181383..9e212e1 100644 --- a/maloja/proccontrol/setup.py +++ b/maloja/proccontrol/setup.py @@ -63,12 +63,16 @@ def setup(): print("Password has been set.") elif auth.defaultuser.checkpw("admin"): # if the actual pw is admin, it means we've never set this up properly (eg first start after update) - newpw = prompt("Please set a password for web backend access. Leave this empty to generate a random password.",skip=SKIP,secret=True) - if newpw is None: - newpw = randomstring(32) - print("Generated password:",col["yellow"](newpw)) - - auth.defaultuser.setpw(newpw) + newpw, newpw_repeat = 1, 2 + while newpw != newpw_repeat: + newpw = prompt("Please set a password for web backend access. Leave this empty to generate a random password.",skip=SKIP,secret=True) + if newpw is None: + newpw = randomstring(32) + print("Generated password:",col["yellow"](newpw)) + else: + newpw_repeat = prompt("Please type again to confirm.",skip=SKIP,secret=True) + if newpw != newpw_repeat: print("Passwords do not match!") + else: auth.defaultuser.setpw(newpw) if malojaconfig["SEND_STATS"] is None: answer = ask("I would like to know how many people use Maloja. Would it be okay to send a daily ping to my server (this contains no data that isn't accessible via your web interface already)?",default=True,skip=SKIP)