mirror of
https://github.com/krateng/maloja.git
synced 2023-08-10 21:12:55 +03:00
Fixed most references to user files
This commit is contained in:
parent
fe2b0dd7c8
commit
0818dccac4
@ -246,10 +246,10 @@ def import_rulemodule(**keys):
|
||||
|
||||
if remove:
|
||||
log("Deactivating predefined rulefile " + filename)
|
||||
os.remove(datadir("rules/" + filename + ".tsv"))
|
||||
os.remove(data_dir['rules'](filename + ".tsv"))
|
||||
else:
|
||||
log("Importing predefined rulefile " + filename)
|
||||
os.symlink(datadir("rules/predefined/" + filename + ".tsv"),datadir("rules/" + filename + ".tsv"))
|
||||
os.symlink(data_dir['rules']("predefined/" + filename + ".tsv"),data_dir['rules'](filename + ".tsv"))
|
||||
|
||||
|
||||
|
||||
@ -320,5 +320,5 @@ def add_picture(b64,artist:Multi=[],title=None):
|
||||
@api.post("newrule")
|
||||
@authenticated_api
|
||||
def newrule(**keys):
|
||||
tsv.add_entry(datadir("rules/webmade.tsv"),[k for k in keys])
|
||||
tsv.add_entry(data_dir['rules']("webmade.tsv"),[k for k in keys])
|
||||
#addEntry("rules/webmade.tsv",[k for k in keys])
|
||||
|
@ -1,7 +1,7 @@
|
||||
import re
|
||||
#from . import utilities
|
||||
from doreah import tsv, settings
|
||||
from .globalconf import datadir
|
||||
from .globalconf import data_dir
|
||||
import pkg_resources
|
||||
|
||||
# need to do this as a class so it can retain loaded settings from file
|
||||
@ -13,7 +13,7 @@ class CleanerAgent:
|
||||
self.updateRules()
|
||||
|
||||
def updateRules(self):
|
||||
raw = tsv.parse_all(datadir("rules"),"string","string","string","string")
|
||||
raw = tsv.parse_all(data_dir["rules"](),"string","string","string","string")
|
||||
self.rules_belongtogether = [b for [a,b,c,d] in raw if a=="belongtogether"]
|
||||
self.rules_notanartist = [b for [a,b,c,d] in raw if a=="notanartist"]
|
||||
self.rules_replacetitle = {b.lower():c for [a,b,c,d] in raw if a=="replacetitle"}
|
||||
@ -175,7 +175,7 @@ class CollectorAgent:
|
||||
# rules_include dict: credited artist -> all real artists
|
||||
|
||||
def updateRules(self):
|
||||
raw = tsv.parse_all(datadir("rules"),"string","string","string")
|
||||
raw = tsv.parse_all(data_dir["rules"](),"string","string","string")
|
||||
self.rules_countas = {b:c for [a,b,c] in raw if a=="countas"}
|
||||
self.rules_countas_id = {}
|
||||
self.rules_include = {} #Twice the memory, double the performance!
|
||||
|
@ -10,7 +10,7 @@ from .malojauri import uri_to_internal, internal_to_uri, compose_querystring
|
||||
from .thirdparty import proxy_scrobble_all
|
||||
|
||||
from .__pkginfo__ import version
|
||||
from .globalconf import datadir
|
||||
from .globalconf import data_dir
|
||||
|
||||
# doreah toolkit
|
||||
from doreah.logging import log
|
||||
@ -83,7 +83,7 @@ lastsync = 0
|
||||
|
||||
|
||||
try:
|
||||
with open(datadir("known_servers.yml"),"r") as f:
|
||||
with open(data_dir['state']("known_servers.yml"),"r") as f:
|
||||
KNOWN_SERVERS = set(yaml.safe_load(f))
|
||||
except:
|
||||
KNOWN_SERVERS = set()
|
||||
@ -91,7 +91,7 @@ except:
|
||||
|
||||
def add_known_server(url):
|
||||
KNOWN_SERVERS.add(url)
|
||||
with open(datadir("known_servers.yml"),"w") as f:
|
||||
with open(data_dir['state']("known_servers.yml"),"w") as f:
|
||||
f.write(yaml.dump(list(KNOWN_SERVERS)))
|
||||
|
||||
|
||||
@ -99,9 +99,9 @@ def add_known_server(url):
|
||||
### symmetric keys are fine for now since we hopefully use HTTPS
|
||||
def loadAPIkeys():
|
||||
global clients
|
||||
tsv.create(datadir("clients/authenticated_machines.tsv"))
|
||||
tsv.create(data_dir['clients']("authenticated_machines.tsv"))
|
||||
#createTSV("clients/authenticated_machines.tsv")
|
||||
clients = tsv.parse(datadir("clients/authenticated_machines.tsv"),"string","string")
|
||||
clients = tsv.parse(data_dir['clients']("authenticated_machines.tsv"),"string","string")
|
||||
#clients = parseTSV("clients/authenticated_machines.tsv","string","string")
|
||||
log("Authenticated Machines: " + ", ".join([m[1] for m in clients]))
|
||||
|
||||
@ -690,7 +690,7 @@ def get_predefined_rulesets():
|
||||
|
||||
rulesets = []
|
||||
|
||||
for f in os.listdir(datadir("rules/predefined")):
|
||||
for f in os.listdir(data_dir['rules']("predefined")):
|
||||
if f.endswith(".tsv"):
|
||||
|
||||
rawf = f.replace(".tsv","")
|
||||
@ -704,7 +704,7 @@ def get_predefined_rulesets():
|
||||
if not "_" in rawf: continue
|
||||
|
||||
try:
|
||||
with open(datadir("rules/predefined",f)) as tsvfile:
|
||||
with open(data_dir['rules']("predefined",f)) as tsvfile:
|
||||
line1 = tsvfile.readline()
|
||||
line2 = tsvfile.readline()
|
||||
|
||||
@ -721,7 +721,7 @@ def get_predefined_rulesets():
|
||||
|
||||
ruleset = {"file":rawf}
|
||||
rulesets.append(ruleset)
|
||||
if os.path.exists(datadir("rules",f)):
|
||||
if os.path.exists(data_dir['rules'](f)):
|
||||
ruleset["active"] = True
|
||||
else:
|
||||
ruleset["active"] = False
|
||||
@ -774,7 +774,7 @@ def build_db():
|
||||
|
||||
|
||||
# parse files
|
||||
db = tsv.parse_all(datadir("scrobbles"),"int","string","string",comments=False)
|
||||
db = tsv.parse_all(data_dir['scrobbles'](),"int","string","string",comments=False)
|
||||
scrobblenum = len(db)
|
||||
log(f"Found {scrobblenum} scrobbles...")
|
||||
|
||||
@ -864,7 +864,7 @@ def sync():
|
||||
#log("Sorted into months",module="debug")
|
||||
|
||||
for e in entries:
|
||||
tsv.add_entries(datadir("scrobbles/" + e + ".tsv"),entries[e],comments=False)
|
||||
tsv.add_entries(data_dir['scrobbles'](e + ".tsv"),entries[e],comments=False)
|
||||
#addEntries("scrobbles/" + e + ".tsv",entries[e],escape=False)
|
||||
|
||||
#log("Written files",module="debug")
|
||||
|
@ -152,19 +152,19 @@ from doreah import config
|
||||
config(
|
||||
settings={
|
||||
"files":[
|
||||
datadir("settings/default.ini"),
|
||||
datadir("settings/settings.ini")
|
||||
data_dir['settings']("default.ini"),
|
||||
data_dir['settings']("settings.ini")
|
||||
],
|
||||
"environ_prefix":"MALOJA_"
|
||||
},
|
||||
caching={
|
||||
"folder": datadir("cache")
|
||||
"folder": data_dir['cache']()
|
||||
},
|
||||
auth={
|
||||
"multiuser":False,
|
||||
"cookieprefix":"maloja",
|
||||
"stylesheets":["/style.css"],
|
||||
"dbfile":datadir("auth/auth.ddb")
|
||||
"dbfile":data_dir['auth']("auth.ddb")
|
||||
}
|
||||
)
|
||||
|
||||
@ -173,7 +173,7 @@ settingsconfig._readpreconfig()
|
||||
|
||||
config(
|
||||
logging={
|
||||
"logfolder": datadir("logs") if get_settings("LOGGING") else None
|
||||
"logfolder": data_dir['logs']() if get_settings("LOGGING") else None
|
||||
},
|
||||
regular={
|
||||
"autostart": False,
|
||||
|
@ -5,7 +5,7 @@ from doreah.io import col, ask, prompt
|
||||
from doreah import auth
|
||||
import os
|
||||
|
||||
from ..globalconf import datadir
|
||||
from ..globalconf import data_dir
|
||||
|
||||
|
||||
# EXTERNAL API KEYS
|
||||
@ -50,14 +50,14 @@ def setup():
|
||||
|
||||
|
||||
# OWN API KEY
|
||||
if os.path.exists(datadir("clients/authenticated_machines.tsv")):
|
||||
if os.path.exists(data_dir['clients']("authenticated_machines.tsv")):
|
||||
pass
|
||||
else:
|
||||
answer = ask("Do you want to set up a key to enable scrobbling? Your scrobble extension needs that key so that only you can scrobble tracks to your database.",default=True,skip=SKIP)
|
||||
if answer:
|
||||
key = randomstring(64)
|
||||
print("Your API Key: " + col["yellow"](key))
|
||||
with open(datadir("clients/authenticated_machines.tsv"),"w") as keyfile:
|
||||
with open(data_dir['clients']("authenticated_machines.tsv"),"w") as keyfile:
|
||||
keyfile.write(key + "\t" + "Default Generated Key")
|
||||
else:
|
||||
pass
|
||||
|
@ -1,7 +1,7 @@
|
||||
import os
|
||||
from doreah.io import ask
|
||||
|
||||
from ...globalconf import datadir
|
||||
from ...globalconf import data_dir
|
||||
|
||||
|
||||
|
||||
@ -11,14 +11,13 @@ def loadlastfm(filename):
|
||||
print("File could not be found.")
|
||||
return
|
||||
|
||||
if os.path.exists(datadir("scrobbles/lastfmimport.tsv")):
|
||||
if os.path.exists(data_dir['scrobbles']("lastfmimport.tsv")):
|
||||
overwrite = ask("Already imported Last.FM data. Overwrite?",default=False)
|
||||
if not overwrite: return
|
||||
print("Please wait...")
|
||||
|
||||
from .lastfmconverter import convert
|
||||
convert(filename,datadir("scrobbles/lastfmimport.tsv"))
|
||||
#os.system("python3 -m maloja.lastfmconverter " + filename + " " + datadir("scrobbles/lastfmimport.tsv"))
|
||||
convert(filename,data_dir['scrobbles']("lastfmimport.tsv"))
|
||||
print("Successfully imported your Last.FM scrobbles!")
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@ import tarfile
|
||||
from datetime import datetime
|
||||
import glob
|
||||
import os
|
||||
from ...globalconf import datadir
|
||||
from ...globalconf import data_dir
|
||||
from pathlib import PurePath
|
||||
|
||||
from doreah.logging import log
|
||||
|
@ -1,5 +1,5 @@
|
||||
import os
|
||||
from ...globalconf import datadir
|
||||
from ...globalconf import data_dir
|
||||
import re
|
||||
from ...cleanup import CleanerAgent
|
||||
from doreah.logging import log
|
||||
@ -23,26 +23,25 @@ exp = r"([0-9]*)(\t+)([^\t]+?)(\t+)([^\t]+)([^\n]*)\n"
|
||||
|
||||
def fix():
|
||||
|
||||
backup(level="minimal",folder=datadir("backups"))
|
||||
backup(level="minimal",folder=data_dir['backups']())
|
||||
|
||||
now = datetime.datetime.utcnow()
|
||||
nowstr = now.strftime("%Y_%m_%d_%H_%M_%S")
|
||||
datestr = now.strftime("%Y/%m/%d")
|
||||
timestr = now.strftime("%H:%M:%S")
|
||||
|
||||
patchfolder = datadir("logs","dbfix",nowstr)
|
||||
patchfolder = data_dir['logs']("dbfix",nowstr)
|
||||
os.makedirs(patchfolder)
|
||||
|
||||
#with open(datadir("logs","dbfix",nowstr + ".log"),"a") as logfile:
|
||||
|
||||
log("Fixing database...")
|
||||
for filename in os.listdir(datadir("scrobbles")):
|
||||
for filename in os.listdir(data_dir['scrobbles']()):
|
||||
if filename.endswith(".tsv"):
|
||||
log("Fix file " + filename)
|
||||
filename_new = filename + "_new"
|
||||
|
||||
with open(datadir("scrobbles",filename_new),"w") as newfile:
|
||||
with open(datadir("scrobbles",filename),"r") as oldfile:
|
||||
with open(data_dir['scrobbles'](filename_new),"w") as newfile:
|
||||
with open(data_dir['scrobbles'](filename),"r") as oldfile:
|
||||
|
||||
for l in oldfile:
|
||||
|
||||
@ -57,7 +56,7 @@ def fix():
|
||||
|
||||
|
||||
#os.system("diff " + "scrobbles/" + fn + "_new" + " " + "scrobbles/" + fn)
|
||||
with open(datadir("scrobbles",filename_new),"r") as newfile, open(datadir("scrobbles",filename),"r") as oldfile:
|
||||
with open(data_dir['scrobbles'](filename_new),"r") as newfile, open(data_dir['scrobbles'](filename),"r") as oldfile:
|
||||
|
||||
diff = difflib.unified_diff(oldfile.read().split("\n"),newfile.read().split("\n"),lineterm="",n=0)
|
||||
diff = list(diff)
|
||||
@ -65,7 +64,7 @@ def fix():
|
||||
with open(os.path.join(patchfolder,filename + ".diff"),"w") as patchfile:
|
||||
patchfile.write("\n".join(diff))
|
||||
|
||||
os.replace(datadir("scrobbles",filename_new),datadir("scrobbles",filename))
|
||||
os.replace(data_dir['scrobbles'](filename_new),data_dir['scrobbles'](filename))
|
||||
|
||||
|
||||
log("Database fixed!")
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python
|
||||
import os
|
||||
from .globalconf import datadir, DATA_DIR
|
||||
from .globalconf import data_dir, DATA_DIR
|
||||
|
||||
|
||||
# server stuff
|
||||
@ -154,18 +154,18 @@ def static_image(pth):
|
||||
|
||||
type = pth.split(".")[-1]
|
||||
small_pth = pth + "-small"
|
||||
if os.path.exists(datadir("images",small_pth)):
|
||||
if os.path.exists(data_dir['images'](small_pth)):
|
||||
response = static_file(pthjoin("images",small_pth),root=DATAFOLDER)
|
||||
else:
|
||||
try:
|
||||
from wand.image import Image
|
||||
img = Image(filename=datadir("images",pth))
|
||||
img = Image(filename=data_dir['images'](pth))
|
||||
x,y = img.size[0], img.size[1]
|
||||
smaller = min(x,y)
|
||||
if smaller > 300:
|
||||
ratio = 300/smaller
|
||||
img.resize(int(ratio*x),int(ratio*y))
|
||||
img.save(filename=datadir("images",small_pth))
|
||||
img.save(filename=data_dir['images'](small_pth))
|
||||
response = static_file(pthjoin("images",small_pth),root=DATAFOLDER)
|
||||
else:
|
||||
response = static_file(pthjoin("images",pth),root=DATAFOLDER)
|
||||
|
@ -1,5 +1,5 @@
|
||||
from .. import globalconf
|
||||
from ..globalconf import datadir
|
||||
from ..globalconf import data_dir
|
||||
from .. import thirdparty
|
||||
|
||||
from doreah import settings, caching
|
||||
|
Loading…
Reference in New Issue
Block a user