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

import paspas.generator

from argparse import ArgumentParser
import os
import yaml

parser = ArgumentParser()
parser.add_argument("-s", "--site", dest="site", help="site name", required=True)
parser.add_argument("-u", "--user", dest="user", help="user name", required=True)
parser.add_argument("-m", "--master", dest="master", help="master password", required=True)
command_args = parser.parse_args()

config_path = os.environ['HOME'] + '/.paspas'
config = {}
if os.path.exists(config_path):
    f = open(config_path)
    config = yaml.load(f)
    f.close()

max_length = 0
if command_args.site in config and 'max_length' in config[command_args.site]:
    max_length = config[args.site]['max_length']

password = paspas.generator.generate(command_args.site, command_args.user, command_args.master, max_length).strip()
print(password)
