#!/usr/bin/env python

import argparse
import datetime
from dateutil import parser
import sys

import taglightswitch

def main():
    argparser = argparse.ArgumentParser()
    argparser.add_argument("-t", "--targettime", type=str, help="time against which ranges will be compared to advise or correct instance power states, e.g. 14:05:00")
    argparser.add_argument("-d", "--targetdate", type=str, help="date against which off days will be compared to advise or correct instance power states, e.g. Mon or 2018/3/18")
    argparser.add_argument("-a", "--action", type=str, help="action: advise or correct. default=advise")

    args = argparser.parse_args()

    if args.targettime:
        target_time = parser.parse(args.targettime).time()
    else:
        target_time = datetime.datetime.now().time()

    if args.targetdate:
        target_date = parser.parse(args.targetdate).date()
    else:
        target_date = datetime.datetime.now().date()

    ls = taglightswitch.lightswitch.LightSwitch(target_time, target_date)

    if args.action == 'correct':
        ls.correct()
    else:
        ls.advise()


if __name__ == '__main__':
    sys.exit(main())
