#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import argparse
import sys

from url2bib.core import build_bibtex, create_bib_id, set_verbosity
from url2bib.resolver import resolve_url_bibdict
from url2bib.version import __version__

VERBOSE = True


def main():
    set_verbosity(VERBOSE)

    parser = argparse.ArgumentParser(description="Convert URLs to BibTeX entries")
    parser.add_argument(
        "--version", action="version", version=f"%(prog)s {__version__}"
    )
    parser.add_argument("url", nargs="?", type=str, help="The URL to fetch DOIs from.")
    args = parser.parse_args()

    if not args.url:
        parser.print_help()
        exit(1)

    bibdict = resolve_url_bibdict(args.url)
    if not bibdict:
        print("No matching publications found", file=sys.stderr)
        exit(1)

    bibdict["ID"] = create_bib_id(bibdict)
    print()
    print(build_bibtex(bibdict))


if __name__ == "__main__":
    main()
