Extract document querying function

This commit is contained in:
Marty Oehme 2023-02-23 19:29:31 +01:00
parent cb1cfe22ab
commit b161413f13
Signed by: Marty
GPG key ID: EDBF2ED917B2EF6A

View file

@ -57,17 +57,23 @@ def get_all_annotations(db, csv) -> Dict:
return notes
# TODO warn user/ let him pick with picker if multiple docs found
def get_document(db, author, title):
res = db.query(f"author:({author}) title:({title})")
res = query_document(db, author, title)
if not res:
add_to_database(author, title)
res = db.query(f"author:({author}) title:({title})")
res = query_document(db, author, title)
if not res:
logger.warning(
f"Nothing found for {author}: {title}.\nPlease create manually."
)
return res[0]
logger.warning(f"Nothing found for {author}: {title}.\nPlease create manually.")
return
return res
# TODO warn user/ let him pick with picker if multiple docs found
def query_document(db, author, title):
title = strip_string(title)
for query in [f"author:({author}) title:({title})"]:
res = db.query(query)
if len(res) >= 1:
return res[0]
@ -93,7 +99,6 @@ def get_notefile(db, document) -> str | None:
db.update(document)
notes_path = os.path.join(str(document.get_main_folder()), document["notes"])
print(f"{document['title']}: {document['notes']}")
if not os.path.exists(notes_path):
# TODO reimplement logger: logger.debug("Creating '%s'", notes_path)