Add details on rating modules
Change-Id: Ife6c7486d39bead03d2b34299ea1ad2c14a295b6
This commit is contained in:
parent
99fd387797
commit
b6a4ef4ebc
@ -12,6 +12,7 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from horizon import tables
|
||||
|
||||
@ -48,8 +49,14 @@ class ToggleEnabledModule(tables.BatchAction):
|
||||
self.current_past_action = ENABLE
|
||||
|
||||
|
||||
def get_details_link(datum):
|
||||
if datum.module_id:
|
||||
url = "horizon:admin:rating_modules:module_details"
|
||||
return reverse(url, kwargs={'module_id': datum.module_id})
|
||||
|
||||
|
||||
class ModulesTable(tables.DataTable):
|
||||
name = tables.Column('name', verbose_name=_("Name"))
|
||||
name = tables.Column('name', verbose_name=_("Name"), link=get_details_link)
|
||||
description = tables.Column('description', verbose_name=_("Description"))
|
||||
hot_config = tables.Column('hot-config', verbose_name=_("Configurable"))
|
||||
enabled = tables.Column('enabled', verbose_name=_("Enabled"))
|
||||
|
@ -0,0 +1,25 @@
|
||||
{% extends 'base.html' %}
|
||||
{% load i18n sizeformat %}
|
||||
{% block title %}{% trans "Rating Module Details" %}{% endblock %}
|
||||
|
||||
{% block main %}
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="detail">
|
||||
<dl>
|
||||
<dt>{% trans "Id" %}</dt>
|
||||
<dd>{{ module.module_id }}</dd>
|
||||
<dt>{% trans "Description" %}</dt>
|
||||
<dd>{{ module.description }}</dd>
|
||||
<dt>{% trans "Priority" %}</dt>
|
||||
<dd>{{ module.priority }}</dd>
|
||||
<dt>{% trans "Enabled" %}</dt>
|
||||
<dd>{{ module.enabled }}</dd>
|
||||
<dt>{% trans "Hot Config" %}</dt>
|
||||
<dd>{{ hotconfig }}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
@ -15,10 +15,12 @@
|
||||
from django.conf.urls import patterns
|
||||
from django.conf.urls import url
|
||||
|
||||
from cloudkittydashboard.dashboards.admin.modules.views \
|
||||
import IndexView
|
||||
from cloudkittydashboard.dashboards.admin.modules import views
|
||||
|
||||
urlpatterns = patterns(
|
||||
'',
|
||||
url(r'^$', IndexView.as_view(), name='index'),
|
||||
url(r'^$', views.IndexView.as_view(), name='index'),
|
||||
url(r'^(?P<module_id>[^/]+)/?$', views.ModuleDetailsView.as_view(),
|
||||
name="module_details"),
|
||||
|
||||
)
|
||||
|
@ -12,7 +12,9 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from horizon import tables
|
||||
from horizon import views
|
||||
|
||||
from cloudkittydashboard.api import cloudkitty as api
|
||||
from cloudkittydashboard.dashboards.admin.modules import tables as admin_tables
|
||||
@ -30,3 +32,19 @@ class IndexView(tables.DataTableView):
|
||||
name=True
|
||||
)
|
||||
return modules
|
||||
|
||||
|
||||
class ModuleDetailsView(views.APIView):
|
||||
template_name = 'admin/rating_modules/details.html'
|
||||
page_title = _("Rating Module Details")
|
||||
|
||||
def get_data(self, request, context, *args, **kwargs):
|
||||
module_id = kwargs.get("module_id")
|
||||
try:
|
||||
module = api.cloudkittyclient(self.request).modules.get(
|
||||
module_id=module_id)
|
||||
except Exception:
|
||||
module = None
|
||||
context['hotconfig'] = module._info['hot-config']
|
||||
context['module'] = module
|
||||
return context
|
||||
|
Loading…
Reference in New Issue
Block a user