from django.conf import settings from django.core.mail import send_mail from django.conf import settings from django.core.mail import EmailMultiAlternatives from django.utils import timezone from .email_renderer import render_ticket_reply_email def send_ticket_reply_email_to_user(ticket, message): """ وقتی ادمین روی تیکت جواب داد، برای یوزر ایمیل ارسال می‌شود. """ to_email = ticket.user.email if not to_email: return context = { "WEBSITE_URL": settings.WEBSITE_URL, "TICKET_ID": ticket.id, "TICKET_SUBJECT": ticket.subject, "RESPONSE_DATE": timezone.now().strftime("%Y-%m-%d %H:%M"), "MESSAGE_BODY": message.body, "DASHBOARD_URL": f"{settings.WEBSITE_URL}/dashboard/support/ticket/{ticket.id}", "SUPPORT_URL": f"{settings.WEBSITE_URL}/support/", "UNSUBSCRIBE_URL": f"{settings.WEBSITE_URL}/unsubscribe/", } html_body, text_body = render_ticket_reply_email(context) email = EmailMultiAlternatives( subject=f"Support Reply: {ticket.subject}", body=text_body, from_email=settings.DEFAULT_FROM_EMAIL, to=[to_email], ) email.attach_alternative(html_body, "text/html") email.send(fail_silently=True) def send_ticket_reply_email_to_staff(ticket, message): """ اگر یوزر روی تیکت جواب داد، برای تیم ساپورت ایمیل بفرست. """ support_email = getattr(settings, "SUPPORT_EMAIL", settings.DEFAULT_FROM_EMAIL) subject = f"[Support] User replied to ticket: {ticket.subject}" body = ( f"User: {ticket.user.email}\n\n" f"Ticket: {ticket.subject}\n\n" f"Message:\n{message.body}\n" ) send_mail( subject, body, settings.DEFAULT_FROM_EMAIL, [support_email], fail_silently=True, )