AiC and REST login
[myslice.git] / portal / resources.py
1 import json
2 import time
3 import re
4
5 from django.shortcuts           import render
6 from django.shortcuts           import render_to_response
7 from django.template                    import RequestContext
8 from django.contrib.sites.models import Site
9
10 from unfold.page                import Page
11
12 from manifold.core.query        import Query
13 from manifoldapi.manifoldapi    import execute_admin_query, execute_query
14
15 from portal.actions             import is_pi, create_slice, create_pending_slice, clear_user_creds, authority_check_pis
16 #from portal.forms               import SliceRequestForm
17 from unfold.loginrequired       import LoginRequiredAutoLogoutView
18 from ui.topmenu                 import topmenu_items_live, the_user
19
20 from myslice.theme import ThemeView
21 from myslice.settings import logger
22
23 import activity.user
24 theme = ThemeView()
25
26 class ResourcesView (LoginRequiredAutoLogoutView, ThemeView):
27     template_name = 'resources.html'
28     
29     # because we inherit LoginRequiredAutoLogoutView that is implemented by redefining 'dispatch'
30     # we cannot redefine dispatch here, or we'd lose LoginRequired and AutoLogout behaviours
31     def post (self, request, slicename):
32         return self.get_or_post (request, 'POST', slicename)
33
34     def get (self, request, slicename):
35         return self.get_or_post (request, 'GET', slicename)
36
37     def get_or_post  (self, request, method, slicename):
38         """
39         """
40         # Page rendering
41         page = Page(request)
42         page.add_js_files  ( [ "js/jquery-ui.js" ] )
43         page.add_css_files ( [ "css/jquery-ui.css" ] )
44
45         errors = []
46         slice_name =''
47         template_env = {
48             'theme': self.theme,
49             'section': "Slice request",
50             'slicename': slicename,
51             'request': request,
52         }
53         template_env.update(page.prelude_env())
54
55         return render_to_response(self.template,template_env, context_instance=RequestContext(request))