from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from django.views.generic.base import RedirectView
from apps.core.health import health_check

urlpatterns = [
    # Health check endpoint for Docker
    path('health/', health_check, name='health_check'),
    
    # Admin
    path('admin/', admin.site.urls),
    
    # API Authentication
    path('api-auth/', include('rest_framework.urls')),
    
    # App URLs
    path('', RedirectView.as_view(url='/dashboard/', permanent=False), name='index'),
    path('auth/', include('apps.users.urls')),
    path('dashboard/', include('apps.core.urls')),
    path('campaigns/', include('apps.campaigns.urls')),
    path('advertisers/', include('apps.advertisers.urls')),
    path('channels/', include('apps.channels.urls')),
    path('playlists/', include('apps.playlists.urls')),
    path('analytics/', include('apps.analytics.urls')),
    path('vast/', include('apps.vast.urls')),
    
    # API URLs
    path('api/v1/', include('apps.core.api_urls')),
]

# Serve media files in development
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

# Admin site customization
admin.site.site_header = "Adtlas Administration"
admin.site.site_title = "Adtlas Admin Portal"
admin.site.index_title = "Welcome to Adtlas Administration Portal"