"""Generates customizable publications webpage from a Google Scholar

1. Build bibtex from arxiv and google scholar
2. Generate webpage from bibtex
"""

from webfscholar import config, bibtex, web
import argparse


def get_parser():
    parent = argparse.ArgumentParser(add_help=False)
    parent.add_argument('--reset', action='store_true')

    parser = argparse.ArgumentParser()
    subparsers = parser.add_subparsers(dest='command')

    config.add_parser(subparsers, parent)
    bibtex.add_parser(subparsers, parent)
    web.add_parser(subparsers, parent)

    return parser


command_to_function = {
    'config': config.main,
    'bibtex': bibtex.main,
    'web': web.main
}


def main():
    parser = get_parser()
    args = parser.parse_args()

    command = command_to_function.get(args.command, web.main)
    command(args)


if __name__ == '__main__':
    main()
