from django.shortcuts import render

from django.http import FileResponse
import os
from datetime import datetime

from .utils.astrales import f1_lunario, f2_astrales
from .utils.tarifas.tarifaselectricas import TarifaHora
# Create your views here.


def index(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='')
    return render(request, 'valletera/index.html', context)


def avisolegal(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='')
    return render(request, 'valletera/avisolegal.html', context)


def diccionariolocal(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Diccionario Local')
    return render(request, 'valletera/diccionariolocal.html', context)


def lunario(request):
    """ Calendario lunar de plantilla y lunario"""
    context = f2_astrales.Efemerides(f2_astrales.Place_cdt())
    context.update(title='Valle Tera')
    context.update(site_title='Lunario')
    now = datetime.now()
    YEAR = now.year
    cal = f1_lunario.Calendar()
    context.update(cal.populate(YEAR))
    context.update(url_agro='valletera/agro/agro_{}.html'.format(now.month))
    context.update(url_fabula='valletera/fabulas/f_{}.html'.format(now.month))
    return render(request, 'valletera/lunario.html', context)


def lunarcalendar(request):
    """ Calendario lunar calculado y lunario con día de la semana"""
    context = f2_astrales.Efemerides(f2_astrales.Place_cdt())
    context.update(title='Valle Tera')
    context.update(site_title='CalendarioLunar')
    now = datetime.now()
    YEAR = now.year
    cal = f1_lunario.Calendar()
    context.update(cal.populate(YEAR))
    context.update(url_agro='valletera/agro/agro_{}.html'.format(now.month))
    context.update(url_fabula='valletera/fabulas/f_{}.html'.format(now.month))
    return render(request, 'valletera/lunarcalendar.html', context)


def efemerides(request):
    """ Efemerides del día y la hora """
    context = f2_astrales.Efemerides(f2_astrales.Place_cdt())
    context.update(title='Valle Tera')
    context.update(site_title='Efemérides')
    return render(request, 'valletera/efemerides.html', {'context': context})


def interes(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Interes')
    print(context)
    return render(request, 'valletera/interes.html', context)


def show_pdf(request):
    filepath = os.path.join('static', 'sample.pdf')
    return FileResponse(open(filepath, 'rb'), content_type='application/pdf')


def calzadilladetera(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Calzadilla de Tera')
    return render(request, 'valletera/calzadilladetera.html', context)


def calzadadetera(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Calzada de Tera')
    return render(request, 'valletera/calzadadetera.html', context)


def ollerosdetera(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Olleros de Tera')
    return render(request, 'valletera/ollerosdetera.html', context)


def secuoyas(request):
    context = {}
    context.update(title='Valle Tera')
    context.update(site_title='Secuoyas Fenal')
    return render(request, 'valletera/secuoyas.html', context)


def calzadilla_iglesia(request):
    context = {}
    context.update(title='Santas Justa y Rufina')
    context.update(site_title='Calzadilla de Tera')
    return render(request, 'valletera/calzadilla_iglesia.html', context)


def casarural(request):
    context = {}
    context.update(title='Alojamiento Rural')
    context.update(site_title='Valle Tera')
    return render(request, 'valletera/casarural.html', context)

def barblanco(request):
    context = {}
    context.update(title='Bar Blanco')
    context.update(site_title='Valle Tera')
    return render(request, 'valletera/barblanco.html', context)


def bartorero(request):
    context = {}
    context.update(title='Bar El Torero')
    context.update(site_title='Valle Tera')
    return render(request, 'valletera/bartorero.html', context)

def barblanco(request):
    context = {}
    context.update(title='Bar Blanco')
    context.update(site_title='Valle Tera')
    return render(request, 'valletera/barblanco.html', context)


def bartorero(request):
    context = {}
    context.update(title='Bar El Torero')
    context.update(site_title='Valle Tera')
    return render(request, 'valletera/bartorero.html', context)

def tarifaselectricas(request):
    """ Tarifas electricas del día por horas """
    context = {}
    #context.update(title='Valle Tera')
    #context.update(site_title='Tarifas Electricas')
    now = datetime.now()
    tarifas = TarifaHora(now)[0]
    maximo = TarifaHora(now)[1]
    minimo = TarifaHora(now)[2]
    ahora = TarifaHora(now)[3]
    labels = TarifaHora(now)[4]
    data = TarifaHora(now)[5]
    media = TarifaHora(now)[6]
    context =  context | ahora
    context =  context | maximo
    context =  context | minimo
    context =  context | tarifas
    return render(request, 'valletera/tarifaselectricas.html', {
        'context': context, 
        'labels': labels,
        'data': data,
        'ahora': ahora,
        'maximo':maximo,
        'minimo': minimo,
        'media': media
        })


