#!/usr/bin/env python

# standard library imports
import argparse

# third party related imports

# local library imports
from imgutil import imgresize


def init_arg_parser():

    parser = argparse.ArgumentParser(
        prog='imgresize',
        description='Resize image'
    )
    parser.add_argument('src_img')
    parser.add_argument('-o', '--output')
    parser.add_argument('-W', '--width', type=int)
    parser.add_argument('-H', '--height', type=int)

    return parser


def parse_args(parser):

    return vars(parser.parse_args())


def resize(args):

    if args['width'] is None and args['height'] is None:
        print 'No information about resizing'
        exit(1)

    try:
        imgresize(
            args['src_img'],
            args['width'],
            args['height'],
            args['output']
        )
    except IOError as e:
        print unicode(e)
        exit(1)


def main():

    arg_parser = init_arg_parser()
    args = parse_args(arg_parser)
    resize(args)


if __name__ == '__main__':

    main()

