Exemple #1
0
def main():
    #parse args
    parser, args = parse_args()
    journal_location = parse_config(args)
    date_parse = parse.Parse()

    #check args
    if args.location:
        journal_location = args.location
    if args.journal:
        journal_location += '/' + args.journal
    check_journal_dest(journal_location)

    #TODO: better handle program exit flow through exceptions?
    #handle_args
    if args.view:
        date = date_parse.day(args.view)
        if not date:
            print("journal: error: unknown date format")
            sys.exit()

        entry = get_entry(journal_location, date)
        if entry:
            print(entry)
        else:
            print("journal: error: entry not found on date %s" % date)
            sys.exit()
    elif args.since:
        date = date_parse.day(args.since)
        if not date:
            print("journal: error: unknown date format")
            sys.exit()
        get_entries_since(journal_location, date)
    else:
        if not args.entry:
            entries = get_entries_from_editor()
            if entries:
                record_entries(journal_location, entries)
            else:
                print("journal: error: missing entry")
            sys.exit()

        # Cleanup/check for empty entry list
        if six.PY2:
            entries = filter(string.strip, args.entry)
        else:
            entries = filter(string.whitespace.strip, args.entry)
        if entries:
            record_entries(journal_location, entries)
        else:
            print("journal: error: missing entry")
            sys.exit()
 def setUp(self):
     self.parser = parse.Parse()
     self.today = datetime.datetime.now().replace(second=0,minute=0,microsecond=0).date()
 def setUp(self):
     self.parser = parse.Parse()
     self.today = datetime.date.today()