#!/usr/bin/env python

""" 
core URL Configuration 
"""

from django.contrib import admin
from apps.root.admin import custom_admin_site
from django.conf import settings
from django.views.static import serve
from django.conf.urls.static import static
from django.urls import path, include, re_path
# from django.views.generic.base import RedirectView
from django.contrib.sitemaps.views import sitemap
 
from apps.root.sitemaps import UsevoiceSitemap   
from apps.root import views
 
# sitemap
sitemaps = {
    'usevoice': UsevoiceSitemap,
}

urlpatterns = [
    # The django back-office interface
    path('admin/', admin.site.urls),
    # path("admin/",custom_admin_site.urls),

    path('', include('apps.root.urls', namespace='landing')),

    path('auth/', include('apps.accounts.urls', namespace='accounts')),
    path('profile/', include('apps.profiles.urls', namespace='profile')),
    # path('auth/', include('social_django.urls', namespace='social')),

    path('newsletter/', include('apps.newsletter.urls', namespace='newsletter')),  

    path('process/', include('apps.process.urls', namespace='process')),
    path('upload/',include('apps.uploads.urls', namespace='uploads')),  

    path('subcription/',include('apps.subscriptions.urls',namespace='subscription')),
    
    # A status endpoint for health-checks
    path("status/", view=views.StatusView.as_view(), name="status"),
    # add sitemap
    path('sitemap.xml', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),



    # # To RemoveAfter Adding The Demo Function
    # path('', views.LandingView.as_view(), name="demo_process"),
    # # path('membership/', include('apps.membership.urls', namespace='membership')),
    # re_path(r'^media/(?P<path>.*)$', serve,{'document_root': settings.MEDIA_ROOT}),
    # re_path(r'^static/(?P<path>.*)$', serve,{'document_root': settings.STATIC_ROOT}),
] 


handler404 = 'apps.root.views.handler404'
handler500 = 'apps.root.views.handler500'