Files @ 72d37f849053
Branch filter:

Location: conntrackt/conntrackt/urls.py

branko
CONNT-5: Implemented views for updating and removing interfaces. Includes tests.
# Django imports.
from django.conf.urls import patterns, url
from django.contrib.auth.views import login, logout

# Application imports.
from .views import IndexView, EntityView, entity_iptables, project_iptables
from .views import ProjectView, ProjectCreateView, ProjectUpdateView, ProjectDeleteView
from .views import LocationCreateView, LocationUpdateView, LocationDeleteView
from .views import EntityCreateView, EntityUpdateView, EntityDeleteView
from .views import InterfaceCreateView, InterfaceUpdateView, InterfaceDeleteView


urlpatterns = patterns(
    'conntrackt.views',
    # Homepage/index view.
    url(r'^$', IndexView.as_view(), name="index"),

    # View for showing information about a project.
    url(r'^project/(?P<pk>\d+)/$', ProjectView.as_view(),
        name='project'),
    # View for creating a new project.
    url(r'^project/add/$', ProjectCreateView.as_view(), name="project_create"),
    # View for updating an existing project.
    url(r'^project/(?P<pk>\d+)/edit/$', ProjectUpdateView.as_view(), name="project_update"),
    # View for deleting a project.
    url(r'^project/(?P<pk>\d+)/remove/$', ProjectDeleteView.as_view(), name="project_delete"),

    # View for creating a new location.
    url(r'^location/add/$', LocationCreateView.as_view(), name="location_create"),
    # View for updating an existing location.
    url(r'^location/(?P<pk>\d+)/edit/$', LocationUpdateView.as_view(), name="location_update"),
    # View for deleting a location.
    url(r'^location/(?P<pk>\d+)/remove/$', LocationDeleteView.as_view(), name="location_delete"),


    # View for showing information about an entity.
    url(r'^entity/(?P<pk>\d+)/$', EntityView.as_view(),
        name='entity'),
    # View for creating a new entity.
    url(r'^entity/add/$', EntityCreateView.as_view(), name="entity_create"),
    # View for updating an existing entity.
    url(r'^entity/(?P<pk>\d+)/edit/$', EntityUpdateView.as_view(), name="entity_update"),
    # View for deleting an entity.
    url(r'^entity/(?P<pk>\d+)/remove/$', EntityDeleteView.as_view(), name="entity_delete"),

    # View for creating a new interface.
    url(r'^interface/add/$', InterfaceCreateView.as_view(), name="interface_create"),
    # View for updating an existing interface.
    url(r'^interface/(?P<pk>\d+)/edit/$', InterfaceUpdateView.as_view(), name="interface_update"),
    # View for deleting an interface.
    url(r'^interface/(?P<pk>\d+)/remove/$', InterfaceDeleteView.as_view(), name="interface_delete"),

    # View for rendering iptables rules for a specific entity.
    url(r'^entity/(?P<pk>\d+)/iptables/$', entity_iptables, name="entity_iptables"),
    # View for rendering zip file with iptables rules for all entities in a project.
    url(r'^project/(?P<project_id>\d+)/iptables/$', project_iptables, name="project_iptables"),
    # View for rendering zip file with iptables rules for all entities in a project for a specific location.
    url(r'^project/(?P<project_id>\d+)/location/(?P<location_id>\d+)/iptables/$', project_iptables, name="project_location_iptables"),
    # Views for logging-in/out the users.
    url(r'^login/$', login, {'template_name': 'conntrackt/login.html'}, name="login"),
    url(r'^logout/$', logout, name="logout"),
)