Пример #1
0
def admin():
    form = AdminForm()

    if form.is_submitted():
        if form.stats1.data:
            stats1()
            return redirect(url_for("admin"))

        if form.stats2.data:
            stats2()
            return redirect(url_for("admin"))

        if form.notify.data:
            notify()
            return redirect(url_for("admin"))

        return redirect(url_for("addevent"))

    oracle_connection_string = 'oracle+cx_oracle://{username}:{password}@{host}:{port}/{sid}'

    engine = create_engine(oracle_connection_string.format(

        username="******",
        password="******",
        sid="XE",
        host="localhost",
        port="1521",
        database="XE",
    ), echo=True)

    with engine.connect() as conn:
        events_count = conn.execute("SELECT COUNT(event_name) FROM EVENTS").fetchone()

        event_names = conn.execute("SELECT EVENT_NAME FROM EVENTS")
        tickets_left = conn.execute("SELECT QUANTITY_TIC FROM EVENTS")
        event_times = conn.execute("SELECT EVENT_TIME FROM EVENTS")
        prices = conn.execute("SELECT PRICE FROM EVENTS")

        dict_event_names = TupleToDictionary(event_names)
        dict_tickets_left = TupleToDictionary(tickets_left)
        dict_event_times = TupleToDictionary(event_times)
        dict_prices = TupleToDictionary(prices)

        event_forms = []

        for i in range(0, events_count[0]):
            event = EventForm()
            event.name.data = dict_event_names[i]
            event.tickets_left.data = dict_tickets_left[i]
            event.time.data = dict_event_times[i]
            event.price.data = dict_prices[i]

            event_forms.append(event)

        form.events = event_forms

    return render_template("admin.html", form=form)