#!/usr/bin/env python3

import time

import oslobysykkel

def format_bargraph(bikes, locks):
    return "\033[44m" + " " * bikes + "\033[47m" + " " * locks + "\033[0m"

if __name__ == "__main__":
    import argparse
    import sys

    parser = argparse.ArgumentParser(description="Show information about Oslo Bysykkel racks.")

    parser.add_argument("RACK", type=int, nargs="*", help="ID number of the rack to be queried")

    args = parser.parse_args()

    for i in args.RACK:
        r = oslobysykkel.get_rack(i)

        if not r.description or not r.bikes or not r.locks:
            sys.stderr.write("%s: Couldn't get status of rack %d\n" % (sys.argv[0], i))
            continue

        print(r.description)
        print(format_bargraph(r.bikes, r.locks))
