1 from django.views.generic.base import TemplateView
3 from manifold.core.query import Query
4 from unfold.page import Page
6 from ui.topmenu import topmenu_items, the_user
8 from plugins.googlemap import GoogleMap
9 from plugins.hazelnut import Hazelnut
10 from plugins.lists.simplelist import SimpleList
12 # View for 1 platform and its details
13 class ResourceView(TemplateView):
14 template_name = "resource.html"
16 def get_context_data(self, **kwargs):
17 page = Page(self.request)
19 for key, value in kwargs.iteritems():
20 print "%s = %s" % (key, value)
24 resource_query = Query().get('resource')\
25 .filter_by('urn', '==', resource_urn)\
26 .select('type','hrn','urn', 'latitude', 'longitude', 'country')
27 page.enqueue_query(resource_query)
29 page.expose_js_metadata()
32 resourcelist = Hazelnut(
36 # this is the query at the core of the slice list
37 query = resource_query,
38 query_all = resource_query,
40 datatables_options = {
41 'iDisplayLength' : 25,
42 'bLengthChange' : True,
45 resource_as_map = GoogleMap(
47 title = 'Geographic view',
48 domid = 'resources-map',
49 # tab's sons preferably turn this off
51 query = resource_query,
52 query_all = resource_query,
59 # resourcelist = SimpleList(
63 # query = resource_query,
66 context = super(ResourceView, self).get_context_data(**kwargs)
67 context['person'] = self.request.user
68 context['resource'] = resourcelist.render(self.request)
69 context['resource_as_map'] = resource_as_map.render(self.request)
71 # XXX This is repeated in all pages
72 # more general variables expected in the template
73 context['title'] = 'Information about a resource'
74 # the menu items on the top
75 context['topmenu_items'] = topmenu_items('Dashboard', self.request)
76 # so we can sho who is logged
77 context['username'] = the_user(self.request)
79 context.update(page.prelude_env())