X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fsliceview.py;h=309347c51f9c9e3dfa534ccea7e14dbc03456630;hb=refs%2Fheads%2Ffibre;hp=10cab7cd98632f969648787caf9a131308c02d27;hpb=5a40dbe074a307538769ae873e446323d6a75f39;p=unfold.git diff --git a/portal/sliceview.py b/portal/sliceview.py index 10cab7cd..309347c5 100644 --- a/portal/sliceview.py +++ b/portal/sliceview.py @@ -13,11 +13,28 @@ from django.shortcuts import render from unfold.page import Page from manifold.core.query import Query, AnalyzedQuery from manifoldapi.manifoldapi import execute_query - +import json from myslice.theme import ThemeView class SliceView (LoginRequiredView, ThemeView): template_name = "slice-view.html" def get(self, request, slicename): - return render_to_response(self.template, {"slice": slicename, "theme": self.theme, "username": request.user, "section":"slice"}, context_instance=RequestContext(request)) + ## check user is pi or not + platform_query = Query().get('local:platform').select('platform_id','platform','gateway_type','disabled') + account_query = Query().get('local:account').select('user_id','platform_id','auth_type','config') + platform_details = execute_query(self.request, platform_query) + account_details = execute_query(self.request, account_query) + for platform_detail in platform_details: + for account_detail in account_details: + if platform_detail['platform_id'] == account_detail['platform_id']: + if 'config' in account_detail and account_detail['config'] is not '': + account_config = json.loads(account_detail['config']) + if 'myslice' in platform_detail['platform']: + acc_auth_cred = account_config.get('delegated_authority_credentials','N/A') + # assigning values + if acc_auth_cred == {} or acc_auth_cred == 'N/A': + pi = "is_not_pi" + else: + pi = "is_pi" + return render_to_response(self.template, {"slice": slicename, "theme": self.theme, "username": request.user,"pi":pi, "section": "Slice %s" % slicename }, context_instance=RequestContext(request))