Exemplo n.º 1
0
def find_free(events):
    """
    uses the not free events to find the free blocks
    :param events: dict of busy events
    :return: dict of free times
    """
    #pass in the event list
    agenda = Agenda.from_dict(events)
    app.logger.debug("Find Free Events")

    #Just get all the block in questions info
    start_date = arrow.get(flask.session['begin_date']).date()
    end_date = arrow.get(flask.session['end_date']).date()
    start_time = arrow.get(flask.session['start_time']).time()
    end_time = arrow.get(flask.session['end_time']).time()

    #Make two arrow objects for freeblock query
    begin = arrow.Arrow(start_date.year, start_date.month, start_date.day, start_time.hour, start_time.minute)
    end = arrow.Arrow(end_date.year, end_date.month, end_date.day, end_time.hour, end_time.minute)

    free = Appt(begin, end, "Free")
    free_time = agenda.complement(free)
    app.logger.debug(free_time.list_convert())

    #convert to dict for later use
    return free_time.list_convert()