Fixed Web UI for demo.

This commit is contained in:
Timur Nurlygayanov 2013-02-25 08:42:29 -05:00
parent 1316bd8007
commit 3195194229
5 changed files with 36 additions and 26 deletions

View File

@ -49,8 +49,7 @@ def datacenters_list(request):
return windcclient(request).datacenters.list()
def services_create(request, datacenter, parameters):
name = parameters.get('dc_name', '')
return windcclient(request).services.create(datacenter, name)
return windcclient(request).services.create(datacenter, parameters)
def services_list(request, datacenter):
return windcclient(request).services.list(datacenter)

View File

@ -17,7 +17,7 @@
# TO DO: clear extra modules
import re
import logging
from django import shortcuts
@ -85,6 +85,27 @@ class DeleteDataCenter(tables.BatchAction):
api.windc.datacenters_delete(request, datacenter)
class DeleteService(tables.BatchAction):
name = "delete"
action_present = _("Delete")
action_past = _("Delete")
data_type_singular = _("Service")
data_type_plural = _("Service")
classes = ('btn-danger', 'btn-terminate')
def allowed(self, request, datum):
return True
def action(self, request, service_id):
############## FIX ME:
link = request.__dict__['META']['HTTP_REFERER']
datacenter_id = re.search('windc/(\S+)', link).group(0)[6:-1]
##############
datacenter = api.windc.datacenters_get(request, datacenter_id)
api.windc.services_delete(request, datacenter, service_id)
class EditService(tables.LinkAction):
name = "edit"
verbose_name = _("Edit")
@ -95,16 +116,6 @@ class EditService(tables.LinkAction):
return True
class DeleteService(tables.LinkAction):
name = "delete"
verbose_name = _("Delete")
url = "horizon:project:windc:delete"
classes = ("ajax-modal", "btn-edit")
def allowed(self, request, instance):
return True
class ShowDataCenterServices(tables.LinkAction):
name = "edit"
verbose_name = _("Services")
@ -138,13 +149,9 @@ class WinDCTable(tables.DataTable):
class WinServicesTable(tables.DataTable):
name = tables.Column('name',
link=('horizon:project:windc'),
verbose_name=_('Name'))
_type = tables.Column('type',
verbose_name=_('Type'))
status = tables.Column('status',
verbose_name=_('Status'))
name = tables.Column('dc_name', verbose_name=_('Name'))
_type = tables.Column('type', verbose_name=_('Type'))
status = tables.Column('status', verbose_name=_('Status'))
class Meta:
name = "services"

View File

@ -29,6 +29,8 @@ urlpatterns = patterns(VIEW_MOD,
url(r'^$', IndexView.as_view(), name='index'),
url(r'^create$', CreateWinServiceView.as_view(), name='create'),
url(r'^create_dc$', CreateWinDCView.as_view(), name='create_dc'),
url(r'^(?P<domain_controller_id>[^/]+)/$', WinServices.as_view(),
name='services'),
url(r'^(?P<domain_controller_id>[^/]+)/$', WinServices.as_view(),
name='services')
)

View File

@ -165,14 +165,14 @@ class CreateWinService(workflows.Workflow):
finalize_button_name = _("Deploy")
success_message = _('Created service "%s".')
failure_message = _('Unable to create service "%s".')
success_url = "horizon:project:windc:services"
success_url = "/project/windc/%s/"
default_steps = (SelectProjectUser,
ConfigureWinDC,
ConfigureWinIIS)
def format_status_message(self, message):
name = self.context.get('dc_name', 'noname')
return message % name
dc_name = self.context.get('dc_name', 'noname')
return message % dc_name
def handle(self, request, context):
try:
@ -181,6 +181,8 @@ class CreateWinService(workflows.Workflow):
datacenter_id = re.search('windc/(\S+)', link).group(0)[6:-1]
##############
self.success_url = "/project/windc/%s/" % datacenter_id
service = api.windc.services_create(request,
datacenter_id,
context)

View File

@ -31,9 +31,9 @@ class DCServiceManager(base.Manager):
return self._list("/datacenters/%s/services" % base.getid(datacenter),
'services')
def create(self, datacenter, name, **extra):
body = {'name': name,}
body.update(extra)
def create(self, datacenter, parameters):
body = {'dc_count': 1,}
body.update(parameters)
return self._create("/datacenters/%s/services" % base.getid(datacenter),
body, 'service')