<?php

namespace Database\Seeders;

use App\Models\EmailTemplate;
use Illuminate\Database\Seeder;

class EmailTemplateSeeder extends Seeder
{
    public function run(): void
    {
        // Utiliser updateOrCreate pour éviter les doublons
        $templates = [
            [
                'slug' => 'verification-code',
                'name' => 'Code de Vérification Email',
                'subject' => 'Vérifiez votre email - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #7C3AED 0%, #DB2777 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">BIJOU EXPRESS</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #7C3AED;">Bonjour {{name}},</h2>
            <p>Merci de vous être inscrit sur Bijou Express !</p>
            <p>Votre code de vérification est :</p>
            <div style="background-color: #7C3AED; color: #fff; font-size: 32px; font-weight: bold; padding: 20px; text-align: center; border-radius: 8px; margin: 20px 0; letter-spacing: 8px;">
                {{code}}
            </div>
            <p>Ce code est valide pendant 15 minutes.</p>
            <p style="color: #666; font-size: 14px; margin-top: 30px;">Si vous n\'avez pas créé de compte, ignorez cet email.</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['name', 'code', 'email'],
                'description' => 'Email envoyé lors de l\'inscription avec le code de vérification à 6 chiffres',
                'is_active' => true
            ],
            [
                'slug' => 'purchase-confirmation',
                'name' => 'Confirmation d\'Achat',
                'subject' => 'Confirmation de votre commande #{{order_number}} - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #7C3AED 0%, #DB2777 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">BIJOU EXPRESS</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #7C3AED;">Merci pour votre commande !</h2>
            <p>Bonjour {{customer_name}},</p>
            <p>Votre commande a été confirmée avec succès.</p>
            <div style="background-color: #f3f4f6; padding: 20px; border-radius: 8px; margin: 20px 0;">
                <p><strong>Numéro de commande :</strong> #{{order_number}}</p>
                <p><strong>Montant total :</strong> {{total_amount}} FCFA</p>
                <p><strong>Date :</strong> {{order_date}}</p>
            </div>
            <p>Vous recevrez un email de confirmation lorsque votre commande sera expédiée.</p>
            <p style="margin-top: 30px;">Merci de votre confiance !</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['customer_name', 'order_number', 'total_amount', 'order_date'],
                'description' => 'Email envoyé après confirmation d\'un achat',
                'is_active' => true
            ],
            [
                'slug' => 'referral-notification',
                'name' => 'Notification de Parrainage',
                'subject' => 'Nouveau filleul inscrit ! - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #7C3AED 0%, #DB2777 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">BIJOU EXPRESS</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #7C3AED;">🎉 Félicitations {{sponsor_name}} !</h2>
            <p>Vous avez un nouveau membre dans votre réseau !</p>
            <div style="background-color: #f3f4f6; padding: 20px; border-radius: 8px; margin: 20px 0;">
                <p><strong>Nouveau membre :</strong> {{new_member_name}}</p>
                <p><strong>Code membre :</strong> {{new_member_code}}</p>
                <p><strong>Date d\'inscription :</strong> {{registration_date}}</p>
            </div>
            <p>Vous commencerez à gagner des commissions sur les achats de ce membre !</p>
            <p style="margin-top: 30px;">Continuez à développer votre réseau !</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['sponsor_name', 'new_member_name', 'new_member_code', 'registration_date'],
                'description' => 'Email envoyé au parrain lorsqu\'un nouveau membre s\'inscrit avec son code',
                'is_active' => true
            ],
            [
                'slug' => 'commission-notification',
                'name' => 'Notification de Commission',
                'subject' => 'Nouvelle commission gagnée ! - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #7C3AED 0%, #DB2777 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">BIJOU EXPRESS</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #7C3AED;">💰 Commission gagnée !</h2>
            <p>Bonjour {{member_name}},</p>
            <p>Vous avez gagné une nouvelle commission !</p>
            <div style="background-color: #f3f4f6; padding: 20px; border-radius: 8px; margin: 20px 0;">
                <p><strong>Montant :</strong> {{commission_amount}} FCFA</p>
                <p><strong>Niveau :</strong> {{commission_level}}</p>
                <p><strong>Membre :</strong> {{buyer_name}}</p>
                <p><strong>Commande :</strong> #{{order_number}}</p>
                <p><strong>Date :</strong> {{commission_date}}</p>
            </div>
            <p>Cette commission a été ajoutée à votre solde disponible.</p>
            <p style="margin-top: 30px;">Connectez-vous à votre espace membre pour voir tous les détails !</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['member_name', 'commission_amount', 'commission_level', 'buyer_name', 'order_number', 'commission_date'],
                'description' => 'Email envoyé lorsqu\'un membre gagne une commission',
                'is_active' => true
            ],
            [
                'slug' => 'password-reset',
                'name' => 'Réinitialisation de Mot de Passe',
                'subject' => 'Réinitialisation de votre mot de passe - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #DC2626 0%, #F59E0B 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">BIJOU EXPRESS</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #DC2626;">Réinitialisation de mot de passe</h2>
            <p>Bonjour {{user_name}},</p>
            <p>Vous avez demandé la réinitialisation de votre mot de passe.</p>
            <p>Cliquez sur le bouton ci-dessous pour créer un nouveau mot de passe :</p>
            <div style="text-align: center; margin: 30px 0;">
                <a href="{{reset_url}}" style="display: inline-block; background-color: #DC2626; color: #fff; padding: 15px 40px; text-decoration: none; border-radius: 8px; font-weight: bold;">Réinitialiser mon mot de passe</a>
            </div>
            <div style="background-color: #FEF2F2; border: 1px solid #FECACA; padding: 15px; border-radius: 8px; margin: 20px 0;">
                <p style="margin: 0;"><strong>⚠️ Important :</strong> Ce lien expire dans 1 heure. Si vous n\'avez pas demandé cette réinitialisation, ignorez cet email.</p>
            </div>
            <p style="color: #666; font-size: 14px; margin-top: 30px;">Si le bouton ne fonctionne pas, copiez ce lien dans votre navigateur :</p>
            <p style="color: #7C3AED; word-break: break-all; font-size: 12px;">{{reset_url}}</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['user_name', 'reset_url'],
                'description' => 'Email envoyé lors d\'une demande de réinitialisation de mot de passe',
                'is_active' => true
            ],
            [
                'slug' => 'welcome-email',
                'name' => 'Email de Bienvenue',
                'subject' => 'Bienvenue sur Bijou Express ! 🎉',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">🎉 BIENVENUE !</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #7C3AED;">Félicitations {{user_name}} !</h2>
            <p>Votre compte a été activé avec succès. Vous faites maintenant partie de la famille <strong>Bijou Express</strong> !</p>
            <div style="background-color: #F0FDF4; border-left: 4px solid #10B981; padding: 15px; margin: 20px 0;">
                <p style="margin: 0;"><strong>🎁 Avantages Membres :</strong></p>
                <ul style="margin: 10px 0;">
                    <li>Réductions exclusives sur nos bijoux</li>
                    <li>Livraison gratuite dès 50 000 FCFA</li>
                    <li>Gagnez des commissions en parrainant des amis</li>
                    <li>Accès prioritaire aux nouvelles collections</li>
                </ul>
            </div>
            <div style="background-color: #EEF2FF; padding: 20px; border-radius: 8px; margin: 20px 0;">
                <p style="margin: 0 0 10px 0;"><strong>Votre code de parrainage :</strong></p>
                <p style="font-size: 28px; color: #7C3AED; font-weight: bold; margin: 0; text-align: center; letter-spacing: 2px;">{{referral_code}}</p>
                <p style="margin: 10px 0 0 0; font-size: 14px; color: #666; text-align: center;">Partagez ce code et gagnez jusqu\'à 10% de commission !</p>
            </div>
            <div style="text-align: center; margin: 30px 0;">
                <a href="{{dashboard_url}}" style="display: inline-block; background-color: #7C3AED; color: #fff; padding: 15px 40px; text-decoration: none; border-radius: 8px; font-weight: bold;">Accéder à mon espace</a>
            </div>
            <p style="color: #666; font-size: 14px; text-align: center;">Besoin d\'aide ? Contactez notre support à tout moment.</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['user_name', 'referral_code', 'dashboard_url'],
                'description' => 'Email de bienvenue envoyé après l\'activation du compte utilisateur',
                'is_active' => true
            ],
            [
                'slug' => 'order-confirmation',
                'name' => 'Confirmation de Commande',
                'subject' => 'Commande confirmée #{{order_number}} - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #059669 0%, #10B981 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">✅ COMMANDE CONFIRMÉE</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #059669;">Merci pour votre commande !</h2>
            <p>Bonjour {{customer_name}},</p>
            <p>Nous avons bien reçu votre commande et elle est en cours de traitement.</p>
            <div style="background-color: #F3F4F6; padding: 20px; border-radius: 8px; margin: 20px 0;">
                <p><strong>📦 Numéro de commande :</strong> #{{order_number}}</p>
                <p><strong>📅 Date :</strong> {{order_date}}</p>
                <p><strong>💰 Montant total :</strong> {{total_amount}} FCFA</p>
            </div>
            <div style="margin: 20px 0;">
                <h3 style="color: #059669;">Articles commandés :</h3>
                {{items_html}}
            </div>
            <div style="background-color: #ECFDF5; border-left: 4px solid #059669; padding: 15px; margin: 20px 0;">
                <p style="margin: 0;"><strong>📍 Adresse de livraison :</strong></p>
                <p style="margin: 5px 0 0 0;">{{shipping_address}}</p>
            </div>
            <p style="margin-top: 30px;">Vous recevrez une notification dès que votre commande sera expédiée.</p>
            <div style="text-align: center; margin: 30px 0;">
                <a href="{{order_url}}" style="display: inline-block; background-color: #059669; color: #fff; padding: 15px 40px; text-decoration: none; border-radius: 8px; font-weight: bold;">Suivre ma commande</a>
            </div>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['customer_name', 'order_number', 'order_date', 'total_amount', 'items_html', 'shipping_address', 'order_url'],
                'description' => 'Email de confirmation envoyé après une commande validée',
                'is_active' => true
            ],
            [
                'slug' => 'seller-verification',
                'name' => 'Vérification Email Vendeur',
                'subject' => 'Vérifiez votre compte vendeur - Bijou Express',
                'body' => '<html>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
    <div style="max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9;">
        <div style="background: linear-gradient(135deg, #059669 0%, #10B981 100%); padding: 30px; text-align: center; border-radius: 10px 10px 0 0;">
            <h1 style="color: #fff; margin: 0;">🏪 ESPACE VENDEUR</h1>
        </div>
        <div style="background-color: #fff; padding: 30px; border-radius: 0 0 10px 10px;">
            <h2 style="color: #059669;">Bienvenue {{business_name}} !</h2>
            <p>Votre inscription en tant que vendeur sur <strong>Bijou Express</strong> a été reçue.</p>
            <p>Pour finaliser votre inscription, veuillez vérifier votre adresse email :</p>
            <div style="text-align: center; margin: 30px 0;">
                <a href="{{verification_url}}" style="display: inline-block; background-color: #059669; color: #fff; padding: 15px 40px; text-decoration: none; border-radius: 8px; font-weight: bold;">Vérifier mon email</a>
            </div>
            <div style="background-color: #ECFDF5; border-left: 4px solid #059669; padding: 15px; margin: 20px 0;">
                <p style="margin: 0 0 10px 0;"><strong>📋 Prochaines étapes :</strong></p>
                <ol style="margin: 0; padding-left: 20px;">
                    <li>Vérifiez votre email</li>
                    <li>Complétez votre profil vendeur</li>
                    <li>Soumettez vos documents KYC</li>
                    <li>Attendez la validation de votre compte (24-48h)</li>
                    <li>Commencez à vendre vos produits !</li>
                </ol>
            </div>
            <div style="background-color: #FEF2F2; border: 1px solid #FECACA; padding: 15px; border-radius: 8px; margin: 20px 0;">
                <p style="margin: 0;"><strong>⚠️ Important :</strong> Ce lien expire dans 24 heures.</p>
            </div>
            <p style="color: #666; font-size: 14px; margin-top: 30px;">Si vous n\'avez pas créé de compte vendeur, ignorez cet email.</p>
        </div>
        <div style="text-align: center; padding: 20px; color: #666; font-size: 12px;">
            <p>&copy; 2025 Bijou Express. Tous droits réservés.</p>
        </div>
    </div>
</body>
</html>',
                'variables' => ['business_name', 'verification_url'],
                'description' => 'Email de vérification envoyé lors de l\'inscription d\'un nouveau vendeur',
                'is_active' => true
            ]
        ];

        foreach ($templates as $template) {
            EmailTemplate::updateOrCreate(
                ['slug' => $template['slug']],
                $template
            );
        }
    }
}
