# Django imports
from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static
from django.views.generic.base import RedirectView

# LeakLess Monitor imports
import Applications.Users.urls
import Applications.Devices.urls
import Applications.Files.urls
import Applications.Measure.urls
import Applications.Notifications.urls

from LeakLessMonitor.views import *

admin.autodiscover()


urlpatterns = patterns('',
        url(r'^admin/'         , include(admin.site.urls)),
        url(r'^user/'          , include(Applications.Users.urls)),
        url(r'^devices/'       , include(Applications.Devices.urls)),
        url(r'^files/'         , include(Applications.Files.urls)),
        url(r'^measure/'       , include(Applications.Measure.urls)),
        url(r'^notifications/' , include(Applications.Notifications.urls)),

        # Base site
	    #url(r'^$', RedirectView.as_view(url='/', permanent=False)),

        # Sites
        url(r'^home/'                   , 'LeakLessMonitor.views.leakless_monitor_return_home'             , name='home_page'),
        url(r'^login/'                  , 'Applications.Users.views.user_view_login'                       , name='login_page'),
        url(r'^maps/'                   , 'Applications.Devices.Maps.views.maps_view_map'                  , name='maps_page'),
        url(r'^tracking/'               , 'Applications.Measure.Tracking.views.tracking_view'              , name='tracking_page'),
        url(r'^totalizers/'             , 'Applications.Measure.Totalizers.views.totalizers_view'          , name='totalizers_page'),
        url(r'^devices/'                , 'Applications.Devices.views.devices_return_table'                , name='device_list_page'),
        url(r'^alarms/'                 , 'Applications.Measure.Alarms.views.alarm_return_alarm_table'     , name='alarm_list_page'),
        url(r'^alarm_profiles/'         , 'Applications.Devices.AlarmProfiles.views.alarm_profiles_view'   , name='alarm_profile_page'),
        url(r'^measurement_groups/'     , 'Applications.Measure.Groups.views.measurement_groups_view'      , name='measurement_groups_page'),
        url(r'^downloads/'              , 'Applications.Files.views.files_download_view'                   , name='downloads_page'),
        url(r'^production/'             , 'Applications.Devices.Production.views.production_view'          , name='production_page'),

        # This has to be last in the list
        (r'', 'Applications.Users.views.user_redirect_to_login')
)


if settings.DEBUG is True:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)