from django.conf.urls import url

from pages import admin_views, drag_drop_admin_views, drag_drop_columns_admin_views, panorama_admin_views


urlpatterns = [

    # Themes
    url(r'^themes/$', admin_views.themes, name='admin_themes'),
    url(r'^themes/add/$', admin_views.add_theme, name='admin_themes_add'),
    url(r'^themes/(?P<slug>[-\w]+)/disable/$', admin_views.disable_theme, name='admin_themes_disable'),
    url(r'^themes/(?P<slug>[-\w]+)/enable/$', admin_views.enable_theme, name='admin_themes_enable'),
    url(r'^themes/(?P<slug>[-\w]+)/edit/$', admin_views.edit_theme, name='admin_themes_edit'),
    url(r'^themes/(?P<slug>[-\w]+)/delete/$', admin_views.delete_theme, name='admin_themes_delete'),

    # Help
    url(r'^help/$', admin_views.help, name='admin_pages_help'),
    url(r'^help/add/$', admin_views.help_add, name='admin_pages_help_add'),
    url(r'^help/(?P<id>[\d]+)/$', admin_views.help_edit, name='admin_pages_help_edit'),
    url(r'^help/(?P<id>[\d]+)/delete/$', admin_views.help_delete, name='admin_pages_help_delete'),

    # Page types
    url(r'^(?P<page_slug>[-\w]+)/select-page-type/$', admin_views.select_page_type, name='admin_select_page_type'),
    url(r'^(?P<page_slug>[-\w]+)/set-page-type/(?P<type>[-\w]+)/$', admin_views.set_page_type, name='admin_set_page_type'),
    url(r'^(?P<page_slug>[-\w]+)/edit-page-type/(?P<type>[-\w]+)/$', admin_views.edit_page_type, name='admin_edit_page_type'),
    url(r'^(?P<page_slug>[-\w]+)/delete-page-type/(?P<type>[-\w]+)/$', admin_views.delete_page_type, name='admin_delete_page_type'),

    url(r'^(?P<page_slug>[-\w]+)/movement/image/(?P<frame_id>[-\d]+)/edit/$', admin_views.edit_movement_frame, name='admin_edit_movement_frame'),
    url(r'^(?P<page_slug>[-\w]+)/movement/image/(?P<frame_id>[-\d]+)/delete/$', admin_views.delete_movement_frame, name='admin_delete_movement_frame'),

    # Self Assessments
    url(r'^(?P<page_slug>[-\w]+)/self-assessments/$', admin_views.self_assessments, name='admin_self_assessments'),
    url(r'^(?P<page_slug>[-\w]+)/self-assessments/add/$', admin_views.self_assessments_add, name='admin_self_assessments_add'),
    url(r'^(?P<page_slug>[-\w]+)/self-assessments/(?P<assessment_id>[-\d]+)/edit/$', admin_views.self_assessments_edit, name='admin_self_assessments_edit'),
    url(r'^(?P<page_slug>[-\w]+)/self-assessments/(?P<assessment_id>[-\d]+)/delete/$', admin_views.self_assessments_delete, name='admin_self_assessments_delete'),

    # Rate Activity Questions
    url(r'^(?P<page_slug>[-\w]+)/rate-questions/$', admin_views.rate_questions, name='admin_rate_questions'),
    url(r'^(?P<page_slug>[-\w]+)/rate-questions/add/$', admin_views.rate_questions_add, name='admin_rate_questions_add'),
    url(r'^(?P<page_slug>[-\w]+)/rate-questions/(?P<id>[-\d]+)/edit/$', admin_views.rate_questions_edit, name='admin_rate_questions_edit'),
    url(r'^(?P<page_slug>[-\w]+)/rate-questions/(?P<id>[-\d]+)/delete/$', admin_views.rate_questions_delete, name='admin_rate_questions_delete'),

    # Pages
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/$', admin_views.index, name='admin_pages'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/add/$', admin_views.add, name='admin_pages_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/disable/$', admin_views.disable, name='admin_pages_disable'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/enable/$', admin_views.enable, name='admin_pages_enable'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/edit/$', admin_views.edit, name='admin_pages_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/delete/$', admin_views.delete, name='admin_pages_delete'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/preview/$', admin_views.preview, name='admin_pages_preview'),

    # Rate Activities
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/$', admin_views.rate_activities, name='admin_rate_activities'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/add/$', admin_views.rate_activities_add, name='admin_rate_activities_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/edit/$', admin_views.rate_activities_edit, name='admin_rate_activities_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/delete/$', admin_views.rate_activities_delete, name='admin_rate_activities_delete'),

    # Drag Drop Draggables
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/draggables/$', drag_drop_admin_views.draggables, name='admin_drag_drop_draggables'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/draggables/add/$', drag_drop_admin_views.draggables_add, name='admin_drag_drop_draggables_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/draggables/(?P<id>[-\d]+)/edit/$', drag_drop_admin_views.draggables_edit, name='admin_drag_drop_draggables_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/draggables/(?P<id>[-\d]+)/delete/$', drag_drop_admin_views.draggables_delete, name='admin_drag_drop_draggables_delete'),

    # Drag Drop Targets
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/targets/$', drag_drop_admin_views.targets, name='admin_drag_drop_targets'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/targets/add/$', drag_drop_admin_views.targets_add, name='admin_drag_drop_targets_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/targets/(?P<id>[-\d]+)/edit/$', drag_drop_admin_views.targets_edit, name='admin_drag_drop_targets_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop/targets/(?P<id>[-\d]+)/delete/$', drag_drop_admin_views.targets_delete, name='admin_drag_drop_targets_delete'),

    # Drag Drop Columns
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/$', drag_drop_columns_admin_views.columns, name='admin_drag_drop_columns'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/add/$', drag_drop_columns_admin_views.columns_add, name='admin_drag_drop_columns_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/edit/$', drag_drop_columns_admin_views.columns_edit, name='admin_drag_drop_columns_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/delete/$', drag_drop_columns_admin_views.columns_delete, name='admin_drag_drop_columns_delete'),

    # Draggables
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/draggables/$', drag_drop_columns_admin_views.draggables, name='admin_drag_drop_columns_draggables'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/draggables/add/$', drag_drop_columns_admin_views.draggables_add, name='admin_drag_drop_columns_draggables_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/draggables/(?P<draggable_id>[-\d]+)/edit/$', drag_drop_columns_admin_views.draggables_edit, name='admin_drag_drop_columns_draggables_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns/(?P<id>[-\d]+)/draggables/(?P<draggable_id>[-\d]+)/delete/$', drag_drop_columns_admin_views.draggables_delete, name='admin_drag_drop_columns_draggables_delete'),

    # Drag Drop Columns Evaluate
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/$', drag_drop_columns_admin_views.columns_evaluate, name='admin_drag_drop_columns_evaluate'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/add/$', drag_drop_columns_admin_views.columns_evaluate_add, name='admin_drag_drop_columns_evaluate_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/(?P<id>[-\d]+)/edit/$', drag_drop_columns_admin_views.columns_evaluate_edit, name='admin_drag_drop_columns_evaluate_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/(?P<id>[-\d]+)/delete/$', drag_drop_columns_admin_views.columns_evaluate_delete, name='admin_drag_drop_columns_evaluate_delete'),

    # Draggables Evaluate
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/draggables/$', drag_drop_columns_admin_views.draggables_evaluate, name='admin_drag_drop_columns_draggables_evaluate'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/draggables/add/$', drag_drop_columns_admin_views.draggables_evaluate_add, name='admin_drag_drop_columns_draggables_evaluate_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/draggables/(?P<draggable_id>[-\d]+)/edit/$', drag_drop_columns_admin_views.draggables_evaluate_edit, name='admin_drag_drop_columns_draggables_evaluate_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/(?P<page_slug>[-\w]+)/drag-drop-columns-evaluate/draggables/(?P<draggable_id>[-\d]+)/delete/$', drag_drop_columns_admin_views.draggables_evaluate_delete, name='admin_drag_drop_columns_draggables_evaluate_delete'),


    # Panoramas
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/$', panorama_admin_views.index, name='admin_panoramas'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/add/$', panorama_admin_views.add, name='admin_panoramas_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/edit/$', panorama_admin_views.edit, name='admin_panoramas_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/delete/$', panorama_admin_views.delete, name='admin_panoramas_delete'),

    # Hotspots
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/hotspots/$', panorama_admin_views.hotspots, name='admin_panoramas_hotspots'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/hotspots/add/$', panorama_admin_views.hotspots_add, name='admin_panoramas_hotspots_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/hotspots/(?P<hotspot_id>[-\d]+)/edit/$', panorama_admin_views.hotspots_edit, name='admin_panoramas_hotspots_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/panoramas/(?P<id>[-\d]+)/hotspots/(?P<hotspot_id>[-\d]+)/delete/$', panorama_admin_views.hotspots_delete, name='admin_panoramas_hotspots_delete'),

    # Rate Activity Options
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/options/$', admin_views.rate_activities_options, name='admin_rate_activities_options'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/options/add/$', admin_views.rate_activities_options_add, name='admin_rate_activities_options_add'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/options/(?P<option_id>[-\d]+)/edit/$', admin_views.rate_activities_options_edit, name='admin_rate_activities_options_edit'),
    url(r'^(?P<course_slug>[-\w]+)/(?P<unit_slug>[-\w]+)/rate-activities/(?P<id>[-\d]+)/options/(?P<option_id>[-\d]+)/delete/$', admin_views.rate_activities_options_delete, name='admin_rate_activities_options_delete'),
]
