(*¥#&……()¥……
Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 217

Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 218

Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 220

Warning: Cannot modify header information - headers already sent by (output started at /home/dide1435/kamaftransports.com/aboutc.php:1) in /home/dide1435/kamaftransports.com/aboutc.php on line 221
#!/usr/bin/env python """ Script pour créer des données d'exemple pour ECOLUX BTP Utilise la couleur #1e1810 comme thème principal """ import os import sys import django # Configuration Django os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'projects.settings') django.setup() from django.utils import timezone from app.models import ( BlogCategory, BlogPost, ProjectCategory, Project, ProjectImage, ProjectVideo ) from django.contrib.auth.models import User from userapp.models import CostumUser def create_sample_data(): print("🚀 Création des données d'exemple ECOLUX BTP avec couleur #1e1810...") # Créer un utilisateur administrateur si nécessaire if not User.objects.filter(username='admin').exists(): django_user = User.objects.create_superuser( username='admin', email='admin@ecolux-btp.com', password='admin123', first_name='ECOLUX', last_name='Admin' ) # Le CostumUser sera créé automatiquement par le signal admin_user = CostumUser.objects.get(user=django_user) print("✅ Utilisateur admin créé (admin/admin123)") else: django_user = User.objects.get(username='admin') admin_user, created = CostumUser.objects.get_or_create(user=django_user) print("✅ Utilisateur admin existe déjà") # === CATÉGORIES DE BLOG === blog_categories_data = [ { 'name': 'Construction', 'slug': 'construction', 'description': 'Actualités et conseils sur la construction au Sénégal', 'color': '#1e1810' }, { 'name': 'Diaspora', 'slug': 'diaspora', 'description': 'Guides pour la diaspora sénégalaise', 'color': '#d4af37' }, { 'name': 'Réglementation', 'slug': 'reglementation', 'description': 'Normes et réglementations en vigueur', 'color': '#2e2820' }, { 'name': 'Tendances', 'slug': 'tendances', 'description': 'Nouvelles tendances en architecture', 'color': '#1e1810' } ] print("\n📝 Création des catégories de blog...") for cat_data in blog_categories_data: category, created = BlogCategory.objects.get_or_create( slug=cat_data['slug'], defaults=cat_data ) status = "créée" if created else "existe déjà" print(f" • {category.name}: {status}") # === CATÉGORIES DE PROJETS === project_categories_data = [ { 'name': 'Villas Résidentielles', 'slug': 'villas-residentielles', 'description': 'Villas modernes et traditionnelles' }, { 'name': 'Immeubles', 'slug': 'immeubles', 'description': 'Édifices résidentiels et commerciaux' }, { 'name': 'Rénovation', 'slug': 'renovation', 'description': 'Modernisation et réhabilitation' }, { 'name': 'Projets Diaspora', 'slug': 'projets-diaspora', 'description': 'Projets spécialement conçus pour la diaspora' } ] print("\n🏗️ Création des catégories de projets...") for cat_data in project_categories_data: category, created = ProjectCategory.objects.get_or_create( slug=cat_data['slug'], defaults=cat_data ) status = "créée" if created else "existe déjà" print(f" • {category.name}: {status}") # === ARTICLES DE BLOG === blog_posts_data = [ { 'title': 'Guide Complet : Construire au Sénégal depuis l\'Étranger', 'slug': 'guide-construire-senegal-etranger', 'content': '''

Introduction

Construire au Sénégal depuis l'étranger peut sembler complexe, mais avec les bons conseils et un partenaire de confiance comme ECOLUX BTP, votre projet devient réalisable.

Les étapes clés

  1. Définition du projet : Budget, localisation, type de construction
  2. Acquisition du terrain : Vérifications légales et administratives
  3. Conception architecturale : Plans adaptés au climat et aux normes locales
  4. Suivi de chantier : Plateforme digitale pour suivre l'avancement

Nos services spéciaux diaspora

ECOLUX BTP propose un accompagnement complet avec :

''', 'excerpt': 'Tous les conseils essentiels pour réussir votre projet immobilier depuis la diaspora. Guide complet avec ECOLUX BTP.', 'category': 'diaspora', 'featured': True }, { 'title': 'Nouvelles Normes de Construction au Sénégal 2024', 'slug': 'nouvelles-normes-construction-senegal-2024', 'content': '''

Les nouvelles réglementations

Le Sénégal a adopté de nouvelles normes de construction en 2024 pour améliorer la qualité et la sécurité des bâtiments.

Principales modifications

ECOLUX BTP s'adapte à ces nouvelles normes pour garantir la conformité de tous vos projets.

''', 'excerpt': 'Découvrez les nouvelles réglementations et normes à respecter pour vos constructions au Sénégal.', 'category': 'reglementation', 'featured': True }, { 'title': 'Les 10 Erreurs à Éviter lors de Votre Construction', 'slug': 'erreurs-eviter-construction', 'content': '''

Notre expertise à votre service

Avec 30 ans d'expérience, ECOLUX BTP a identifié les erreurs les plus courantes en construction.

Top 10 des erreurs

  1. Sous-estimer le budget initial
  2. Négliger l'étude de sol
  3. Choisir des matériaux inadaptés au climat
  4. Manquer de suivi de chantier
  5. Ignorer les normes locales
  6. Sous-dimensionner les fondations
  7. Négliger l'étanchéité
  8. Mauvaise orientation du bâtiment
  9. Oublier les espaces de rangement
  10. Ne pas prévoir les extensions futures
''', 'excerpt': 'Évitez les pièges courants grâce à notre expertise de 30 ans en construction au Sénégal.', 'category': 'construction', 'featured': False } ] print("\n📄 Création des articles de blog...") for post_data in blog_posts_data: try: category = BlogCategory.objects.get(slug=post_data['category']) post, created = BlogPost.objects.get_or_create( slug=post_data['slug'], defaults={ 'title': post_data['title'], 'content': post_data['content'], 'excerpt': post_data['excerpt'], 'category': category, 'author': admin_user, 'status': 'PUBLISHED', 'featured': post_data['featured'], 'published_at': timezone.now(), 'meta_description': post_data['excerpt'][:155], } ) status = "créé" if created else "existe déjà" print(f" • {post.title}: {status}") except BlogCategory.DoesNotExist: print(f" ❌ Catégorie '{post_data['category']}' non trouvée pour l'article '{post_data['title']}'") # === PROJETS === projects_data = [ { 'title': 'Villa Moderne - Almadies', 'slug': 'villa-moderne-almadies', 'description': '''

Villa de prestige aux Almadies

Cette magnifique villa de 4 chambres avec piscine représente l'excellence de notre savoir-faire.

Caractéristiques

Matériaux utilisés

Matériaux haut de gamme adaptés au climat tropical : carrelage en grès cérame, menuiseries en aluminium laqué, toiture en tuiles canal.

''', 'short_description': 'Villa 4 chambres avec piscine', 'category': 'villas-residentielles', 'location': 'Almadies, Dakar', 'surface_built': 350, 'surface_land': 800, 'status': 'COMPLETED', 'featured': True }, { 'title': 'Immeuble R+3 - Plateau', 'slug': 'immeuble-r3-plateau', 'description': '''

Immeuble résidentiel moderne

Édifice de standing avec 12 appartements luxueux en plein centre de Dakar.

Configuration

''', 'short_description': '12 appartements luxueux', 'category': 'immeubles', 'location': 'Plateau, Dakar', 'surface_built': 1200, 'surface_land': 400, 'status': 'COMPLETED', 'featured': True }, { 'title': 'Résidence Diaspora - Saly', 'slug': 'residence-diaspora-saly', 'description': '''

Villa pour la diaspora

Projet spécialement conçu pour un client de la diaspora avec suivi digital complet.

Spécificités diaspora

''', 'short_description': 'Villa 5 chambres vue mer', 'category': 'projets-diaspora', 'location': 'Saly, Mbour', 'surface_built': 400, 'surface_land': 1000, 'status': 'COMPLETED', 'featured': True } ] print("\n🏠 Création des projets...") for project_data in projects_data: try: category = ProjectCategory.objects.get(slug=project_data['category']) project, created = Project.objects.get_or_create( slug=project_data['slug'], defaults={ 'title': project_data['title'], 'description': project_data['description'], 'short_description': project_data['short_description'], 'category': category, 'location': project_data['location'], 'surface_built': project_data['surface_built'], 'surface_land': project_data['surface_land'], 'status': project_data['status'], 'featured': project_data['featured'], 'published': True, 'completed_date': timezone.now().date(), } ) status = "créé" if created else "existe déjà" print(f" • {project.title}: {status}") except ProjectCategory.DoesNotExist: print(f" ❌ Catégorie '{project_data['category']}' non trouvée pour le projet '{project_data['title']}'") print("\n🎉 Données d'exemple créées avec succès !") print(" 📊 Statistiques :") print(f" • Catégories de blog : {BlogCategory.objects.count()}") print(f" • Articles de blog : {BlogPost.objects.count()}") print(f" • Catégories de projets : {ProjectCategory.objects.count()}") print(f" • Projets : {Project.objects.count()}") print("\n🌐 Votre site ECOLUX BTP est maintenant prêt !") print(" Lancez le serveur avec : python manage.py runserver") print(" Puis ouvrez : http://127.0.0.1:8000") print(" Admin : http://127.0.0.1:8000/myecolux (admin/admin123)") if __name__ == '__main__': create_sample_data()