Some checks failed
- Add complete hosting module (models, routes, schemas, services, templates, migrations) - Add HostWizard platform to init_production seed (code=hosting, domain=hostwizard.lu) - Fix cms_002 migration down_revision to z_unique_subdomain_domain - Fix prospecting_001 migration to chain after cms_002 (remove branch label) - Add hosting/prospecting version_locations to alembic.ini - Fix admin_services delete endpoint to use proper response model - Add hostwizard.lu to deployment docs (DNS, Caddy, Cloudflare) - Add hosting and prospecting user journey docs to mkdocs nav Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
# app/modules/hosting/__init__.py
|
|
"""
|
|
Hosting Module - Web hosting, domains, email, and website building.
|
|
|
|
This is a self-contained module providing:
|
|
- POC website lifecycle management (draft → live pipeline)
|
|
- Client service tracking (domains, email, SSL, hosting, maintenance)
|
|
- Integration with prospecting module for prospect → merchant conversion
|
|
- Dashboard with KPIs, status charts, and renewal alerts
|
|
|
|
Module Structure:
|
|
- models/ - Database models (hosted_site, client_service)
|
|
- services/ - Business logic (lifecycle, service management, stats)
|
|
- schemas/ - Pydantic DTOs
|
|
- routes/ - API and page routes (admin + public POC viewer)
|
|
- tasks/ - Celery background tasks for expiry checks
|
|
- exceptions.py - Module-specific exceptions
|
|
"""
|
|
|
|
|
|
def __getattr__(name: str):
|
|
"""Lazy import module components to avoid circular imports."""
|
|
if name == "hosting_module":
|
|
from app.modules.hosting.definition import hosting_module
|
|
|
|
return hosting_module
|
|
if name == "get_hosting_module_with_routers":
|
|
from app.modules.hosting.definition import (
|
|
get_hosting_module_with_routers,
|
|
)
|
|
|
|
return get_hosting_module_with_routers
|
|
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
|
|
|
|
|
__all__ = ["hosting_module", "get_hosting_module_with_routers"]
|