
from .models import *
from django.conf import settings

from django.template.loader import render_to_string
from django.core.mail import send_mail
from django.urls import reverse
from django.utils.html import strip_tags

from django.core import signing


EMAIL_FROM = settings.EMAIL_HOST_USER


def email_send_invoice(request,id):
    
    invoice = Invoice.objects.get(pk=id)
    email = invoice.customer.email

    base_url = "{}://{}".format(request.scheme, request.get_host())
    token = signing.dumps(id)
    url = reverse('secure_invoice_detail', kwargs={'token': token})
    new_url = base_url + url

    context = {'invoice': invoice, 'url': new_url}
    html_message = render_to_string('pos_system/email/send_invoice.html', context)
    subject = 'Invoice No ' + str(id) + ' for Work Site ' + str(invoice.work_site.name) 
    plain_message = strip_tags(html_message)

    send_mail(subject, plain_message, EMAIL_FROM, [email], fail_silently=False, html_message=html_message)

def email_send_quotation(request,id):
    
    quotation = Quotation.objects.get(pk=id)
    email = quotation.customer.email

    base_url = "{}://{}".format(request.scheme, request.get_host())
    token = signing.dumps(id)
    url = reverse('secure_quotation_detail', kwargs={'token': token})

    new_url = base_url + url
    context = {'quotation': quotation, 'url': new_url}
    html_message = render_to_string('pos_system/email/send_quotation.html', context)
    # secret_key = "muqrrab"
    # signed_url = signing.dumps(url)
    # signed_url = signing.dumps(url, key=secret_key, salt='my-salt')
    # signed_url = signing.dumps(url, key=secret_key, salt='my-salt', max_age=3600)
    subject = 'Quotation No ' + str(id) + ' for Work Site ' + str(quotation.work_site.name) 
    plain_message = strip_tags(html_message)
    send_mail(subject, plain_message, EMAIL_FROM, [email], fail_silently=False, html_message=html_message)