"""
GUARDiA 이메일 발송 v3 — 피싱 경고 제거
핵심 수정: IP 직접 링크 제거, 도메인 사용, 간결한 본문
"""
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import formatdate, make_msgid
from datetime import datetime

TO     = 'ythong86@gmail.com'
FROM   = 'guardia@zioinfo.co.kr'
DOMAIN = 'zioinfo.co.kr'
NOW    = datetime.now().strftime('%Y-%m-%d %H:%M:%S')

# 텍스트 본문 — IP 링크 없음, 간결하게
text = (
    '안녕하세요,\n\n'
    '(주)지오정보기술 GUARDiA ITSM 메일 서버 테스트입니다.\n\n'
    '이 메일은 zio 서버의 Postfix + OpenDKIM 정상 동작을 확인하기 위해 발송되었습니다.\n\n'
    '발신자: guardia@' + DOMAIN + '\n'
    '발송 시각: ' + NOW + ' KST\n\n'
    '-- \n'
    '(주)지오정보기술\n'
    'guardia@' + DOMAIN + '\n'
)

# HTML 본문 — IP 링크 완전 제거, 심플하게
html = (
    '<!DOCTYPE html>\n'
    '<html lang="ko">\n'
    '<head><meta charset="UTF-8"><title>GUARDiA ITSM</title></head>\n'
    '<body style="margin:0;padding:20px;font-family:Arial,sans-serif;'
    'background:#f5f5f5;color:#333333">\n'

    '<table width="560" cellpadding="0" cellspacing="0" border="0" '
    'align="center" style="background:#ffffff;border-radius:6px">\n'

    '  <tr>\n'
    '    <td style="background:#1a3a6b;padding:20px 28px;border-radius:6px 6px 0 0">\n'
    '      <p style="color:#ffffff;margin:0;font-size:18px;font-weight:bold">'
    'GUARDiA ITSM</p>\n'
    '      <p style="color:#aac4e8;margin:4px 0 0;font-size:12px">'
    '(주)지오정보기술</p>\n'
    '    </td>\n'
    '  </tr>\n'

    '  <tr>\n'
    '    <td style="padding:24px 28px">\n'
    '      <p style="margin:0 0 12px;font-size:15px;color:#1a3a6b;font-weight:bold">'
    '메일 서버 테스트</p>\n'
    '      <p style="margin:0 0 16px;font-size:13px;line-height:1.7;color:#444">\n'
    '        zio 서버의 메일 서비스가 정상 동작하고 있습니다.<br>\n'
    '        본 메일은 시스템 점검 목적으로 발송되었습니다.\n'
    '      </p>\n'
    '      <table cellpadding="7" cellspacing="0" border="0" '
    'style="border-collapse:collapse;font-size:13px;width:100%">\n'
    '        <tr style="background:#f8f8f8">\n'
    '          <td style="border:1px solid #e0e0e0;color:#666;width:30%">발신자</td>\n'
    '          <td style="border:1px solid #e0e0e0;color:#333">'
    'guardia@' + DOMAIN + '</td>\n'
    '        </tr>\n'
    '        <tr>\n'
    '          <td style="border:1px solid #e0e0e0;color:#666">발송 시각</td>\n'
    '          <td style="border:1px solid #e0e0e0;color:#333">' + NOW + ' KST</td>\n'
    '        </tr>\n'
    '        <tr style="background:#f8f8f8">\n'
    '          <td style="border:1px solid #e0e0e0;color:#666">SPF / DKIM</td>\n'
    '          <td style="border:1px solid #e0e0e0;color:#2e7d32">인증 완료</td>\n'
    '        </tr>\n'
    '      </table>\n'
    '    </td>\n'
    '  </tr>\n'

    '  <tr>\n'
    '    <td style="padding:12px 28px;border-top:1px solid #eeeeee;'
    'text-align:center;font-size:11px;color:#999999;border-radius:0 0 6px 6px">\n'
    '      (주)지오정보기술 &nbsp;|&nbsp; guardia@' + DOMAIN + '\n'
    '    </td>\n'
    '  </tr>\n'

    '</table>\n'
    '</body>\n'
    '</html>\n'
)

msg = MIMEMultipart('alternative')
msg['Subject']          = '[GUARDiA] 메일 서버 테스트 - ' + NOW
msg['From']             = '(주)지오정보기술 GUARDiA <' + FROM + '>'
msg['To']               = TO
msg['Reply-To']         = FROM
msg['Date']             = formatdate(localtime=True)
msg['Message-ID']       = make_msgid(domain=DOMAIN)
msg['List-Unsubscribe'] = '<mailto:' + FROM + '?subject=unsubscribe>'

msg.attach(MIMEText(text, 'plain', 'utf-8'))
msg.attach(MIMEText(html, 'html',  'utf-8'))

try:
    with smtplib.SMTP('localhost', 25, timeout=15) as smtp:
        smtp.ehlo('mail.' + DOMAIN)
        smtp.sendmail(FROM, [TO], msg.as_string())
        print('OK 발송 완료 - ' + TO)
        print('시각: ' + NOW + ' KST')
        print('IP 링크 완전 제거 / SPF+DKIM 적용')
except Exception as ex:
    print('FAIL:', ex)
