X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fviews.py;h=60e149ceeeb0f605575e2383b89ca7882a128f40;hb=129b1502b5188c74f48e82da6c20c3b63350936c;hp=cf5f59ddc2ed320443e1c2197b79215a514355c4;hpb=b5b1c487c354a2f66be7c4dc1f92ab514af76554;p=myslice.git diff --git a/portal/views.py b/portal/views.py index cf5f59dd..60e149ce 100644 --- a/portal/views.py +++ b/portal/views.py @@ -29,13 +29,13 @@ from django.views.generic.base import TemplateView from django.shortcuts import render from plugins.lists.simplelist import SimpleList - +from plugins.hazelnut import Hazelnut from plugins.pres_view import PresView from portal.event import Event import json from portal import signals -from portal.forms import UserRegisterForm, SliceRequestForm, ContactForm +from portal.forms import SliceRequestForm, ContactForm from portal.util import RegistrationView, ActivationView from portal.models import PendingUser, PendingSlice from manifold.core.query import Query @@ -479,6 +479,57 @@ def my_account(request): 'username': the_user (request) }) +# View for platforms +class PlatformsView(TemplateView): + template_name = "platforms.html" + + def get_context_data(self, **kwargs): + page = Page(self.request) + + network_query = Query().get('local:platform').filter_by('disabled', '==', '0').select('platform','platform_longname','gateway_type') + page.enqueue_query(network_query) + + page.expose_js_metadata() + page.expose_queries() + networklist = Hazelnut( + page = page, + title = 'List', + domid = 'checkboxes', + # this is the query at the core of the slice list + query = network_query, + query_all = network_query, + checkboxes = False, + datatables_options = { + # for now we turn off sorting on the checkboxes columns this way + # this of course should be automatic in hazelnut + 'aoColumns' : [None, None, None, None, {'bSortable': False}], + 'iDisplayLength' : 25, + 'bLengthChange' : True, + }, + ) +# +# networklist = SimpleList( +# title = None, +# page = page, +# key = 'platform', +# query = network_query, +# ) + + context = super(PlatformsView, self).get_context_data(**kwargs) + context['person'] = self.request.user + context['networks'] = networklist.render(self.request) + + # XXX This is repeated in all pages + # more general variables expected in the template + context['title'] = 'Platforms connected to MySlice' + # the menu items on the top + context['topmenu_items'] = topmenu_items('Platforms', self.request) + # so we can sho who is logged + context['username'] = the_user(self.request) + + context.update(page.prelude_env()) + + return context #my_acc form value processing def acc_process(request):