from celery import shared_task
from django.core.mail import send_mail
from django.conf import settings

@shared_task
def send_comment_notification_email(comment_title, comment_body, post_title, user_email):
    """
    Yeni bir yorum yapıldığında admin'e e-posta gönderir.
    """
    subject = f'Yeni Yorum: {post_title}'
    message = f"""
    Merhaba Admin,
    
    "{post_title}" başlıklı yazıya yeni bir yorum yapıldı.
    
    Yorum Yapan: {user_email}
    Başlık: {comment_title}
    Yorum: {comment_body}
    
    Kontrol etmek için admin paneline giriş yapabilirsiniz.
    """
    
    # Admin e-posta adresini settings'den veya doğrudan buraya yazabilirsiniz
    # Örnek olarak settings.DEFAULT_FROM_EMAIL kullanıldı, admin listesi de kullanılabilir
    admin_email = settings.DEFAULT_FROM_EMAIL 
    
    # Eğer settings.ADMINS tanımlıysa oradaki ilk kişiye de atılabilir
    if hasattr(settings, 'ADMINS') and settings.ADMINS:
        recipient_list = [email for name, email in settings.ADMINS]
    else:
        # Fallback olarak bir email
        recipient_list = ['admin@example.com'] 

    send_mail(
        subject,
        message,
        settings.DEFAULT_FROM_EMAIL,
        recipient_list,
        fail_silently=False,
    )
