Changeset - 6a1782e0c6e7
[Not reviewed]
default
0 1 0
Dennis Fink - 3 years ago 2022-03-21 18:27:06
dennis.fink@c3l.lu
Fix errors
1 file changed with 3 insertions and 3 deletions:
0 comments (0 inline, 0 general)
stockcli/books.py
Show inline comments
 
import logging
 

	
 
import isbnlib
 
from rich.panel import Panel
 
from rich.table import Table
 

	
 
from . import utils
 
from .console import DEFAULT_PADDING, console, int_prompt, prompt
 
from .console import DEFAULT_PADDING, console, error_console, int_prompt, prompt
 
from .style import GreenBoldText
 

	
 

	
 
def add_book_by_barcode(barcode: str) -> None:
 

	
 
    canonical_isbn = isbnlib.canonical(barcode)
 
    if not (isbnlib.is_isbn10(canonical_isbn) or isbnlib.is_isbn13(canonical_isbn)):
 
        logging.error(f"{barcode} is not a valid ISBN!")
 
        error_console.print(f"{barcode} is not a valid ISBN!")
 
        return
 

	
 
    userentity = utils.get_request("objects/userentities?query[]=name=books")
 
@@ -55,26 +55,26 @@ def add_book_by_barcode(barcode: str) ->
 
                    f"userfields/userentity-books/{book['id']}",
 
                    book_metadata,
 
                    cached=True,
 
                )
 
                console.print("Successfully updated!")
 
                return
 

	
 
    metadata = isbnlib.meta(canonical_isbn, "worldcat")
 

	
 
    grid = Table.grid(padding=DEFAULT_PADDING)
 
    grid.add_column(justify="right", no_wrap=True)
 
    grid.add_column(justify="left", style="cyan", no_wrap=True)
 
    grid.add_row(GreenBoldText("Title:"), metadata["Title"])
 
    grid.add_row(GreenBoldText("Author(s)"), ", ".join(metadata["Authors"]))
 
    grid.add_row(GreenBoldText("Title:"), metadata.get("Title", None))
 
    grid.add_row(GreenBoldText("Author(s)"), ", ".join(metadata.get("Authors", None)))
 
    console.print(Panel(grid, title="[green bold]Book Info[/green bold]"))
 

	
 
    ok = bool(
 
        int_prompt.ask(
 
            "Is the metadata correct? (Enter 0 to abort)", choices=["0", "1"], default=0
 
        )
 
    )
 
    if not ok:
 
        logging.debug("User aborted task!")
 
        return
 
    new_book_id = utils.post_request(
 
        "objects/userobjects", {"userentity_id": userentity_id}
0 comments (0 inline, 0 general)