# coding: utf-8

import sys, json
from flask import Flask, request, render_template
from przykladowe_wiersze import przykladowe_wiersze
from rymy import posortuj_pary_wierszy_wedlug_zrymowania, zbierz_bliskie_wiersze_w_pary, daj_ostatnie_slowo, daj_koncowke, oznacz_kolorami_grupy_zrymowane, gloskuj_tekst_wielolinijkowy

app = Flask(__name__)

@app.route('/')
def root():
     return render_template('startowa.html', przykladowe_wiersze=przykladowe_wiersze)

@app.route('/rymy_z_odleglosciami', methods=['POST'])
def rymy_z_odleglosciami():
    tresc_wiersza = request.form['tresc_wiersza']
    linie = [w.rstrip() for w in tresc_wiersza.split(u'\n')]

    linie_i_koncowki = [{'linia': linia, 'slowo': daj_ostatnie_slowo(linia), 'koncowka': daj_koncowke(daj_ostatnie_slowo(linia))} for linia in linie]

    pary_linii = [(linie[a:b+1], zrymowanie) for a, b, zrymowanie in posortuj_pary_wierszy_wedlug_zrymowania(linie, zbierz_bliskie_wiersze_w_pary(linie))]
    
    wiersz_pogloskowany = gloskuj_tekst_wielolinijkowy(tresc_wiersza)

    return render_template('rymy_z_odleglosciami.html', tresc_wiersza=tresc_wiersza, rymy=rymy, linie_i_koncowki=linie_i_koncowki, pary_linii=pary_linii, wiersz_pogloskowany=wiersz_pogloskowany)

@app.route('/rymy', methods=['POST'])
def rymy():
    tresc_wiersza = request.form['tresc_wiersza']
    prog = float(request.form['prog'])
    
    wiersze = [w.rstrip() for w in tresc_wiersza.split(u'\n')]
    linie_oznaczone_kolorami = oznacz_kolorami_grupy_zrymowane(wiersze, prog)
    return render_template('rymy.html', prog=prog, linie_oznaczone_kolorami=linie_oznaczone_kolorami)

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000, debug=True)
    


