#!/usr/bin/env python
# Author: "Chris Ward <cward@redhat.com>

from functools import partial
from pprint import PrettyPrinter
import sys

from metrique.config import CONFIG_FILE
from metriqueu.jsonconf import JSONConf

### FIXME: make this a usable argparsers CLI ###

pp = PrettyPrinter(indent=2)
prompter = lambda x: raw_input(x)

if len(sys.argv) > 1:
    config_file = sys.argv[1]
else:
    config_file = CONFIG_FILE

c = JSONConf(config_file)

c._autosave = False

pp.pprint(c.config)

_p = "Metrique Host: "
c.setup_basic('host', partial(prompter, _p))

_p = "Metrique Username: "
c.setup_basic('username', partial(prompter, _p))

_p = "Metrique Password: "
c.setup_basic('password', partial(prompter, _p))

pp.pprint(c.config)

a = c.yes_no_prompt('Save? ')
if a:
    c.save()
