#!/usr/bin/env python

from optparse import OptionParser
from csv2oerp.tools import generate_code

def main():
    usage = "usage: %prog [options] csv1 csv2 csvN"
    parser = OptionParser(usage)
    parser.add_option("-f", "--filename",
                      metavar="FILE", help="write output to FILE")
    parser.add_option("-t", "--title", default=False, action='store_true',
                      help="Csv file contains a column's title header")
    parser.add_option("-d", "--delimiter", default=',',
                      help="Set the csv delimiter")
    parser.add_option("-q", "--quotechar", default='"',
                      help="Set the csv quotechar")
    parser.add_option("-e", "--encoding", default='utf-8',
                      help="Set the csv encoding")
    (options, args) = parser.parse_args()

    if len(args) == 0:
        parser.error("incorrect number of arguments")

    mode = 'stdout'
    if options.filename:
        print "writing to %s..." % options.filename
        mode = options.filename

    return generate_code(tuple(args), mode=mode, header=options.title,
        delimiter=options.delimiter, quotechar=options.quotechar, 
        encoding=options.encoding)

if __name__ == "__main__":
    main()
