CHECK PI: check in sfa using a function in actions.py -- authority_check_pis
authorYasin <mohammed-yasin.rahman@lip6.fr>
Wed, 21 Jan 2015 17:30:57 +0000 (18:30 +0100)
committerYasin <mohammed-yasin.rahman@lip6.fr>
Wed, 21 Jan 2015 17:30:57 +0000 (18:30 +0100)
portal/homeview.py
portal/slicerequestview.py
portal/templates/fed4fire/fed4fire_home-view.html
portal/templates/fed4fire/fed4fire_slicerequest_view.html
portal/templates/onelab/onelab_home-view.html
portal/templates/onelab/onelab_slicerequest_view.html

index 3e9514f..214bd7f 100644 (file)
@@ -19,6 +19,7 @@ from myslice.configengine               import ConfigEngine
 from myslice.theme                      import ThemeView
 from portal.account                     import Account, get_expiration
 from portal.models                      import PendingSlice
+from portal.actions                     import authority_check_pis
 
 import json, time
 import activity.user
@@ -89,10 +90,12 @@ class HomeView (FreeAccessView, ThemeView):
                                             acc_auth_cred = account_config.get('delegated_authority_credentials','N/A')
                                             acc_user_cred = account_config.get('delegated_user_credential','N/A')
                     # assigning values
-                    if acc_auth_cred=={} or acc_auth_cred=='N/A':
-                        pi = "is_not_pi"
-                    else:
-                        pi = "is_pi"
+                    #if acc_auth_cred=={} or acc_auth_cred=='N/A':
+                    #    pi = "is_not_pi"
+                    #else:
+                    #    pi = "is_pi"
+                    user_email = str(self.request.user)                   
+                    pi = authority_check_pis(self.reques, user_email)
 
                     # check if the user has creds or not
                     if acc_user_cred == {} or acc_user_cred == 'N/A':
@@ -156,11 +159,12 @@ class HomeView (FreeAccessView, ThemeView):
                                         acc_auth_cred = account_config.get('delegated_authority_credentials','N/A')
                                         acc_user_cred = account_config.get('delegated_user_credential','N/A')
             # assigning values
-            if acc_auth_cred=={} or acc_auth_cred=='N/A':
-                pi = "is_not_pi"
-            else:
-                pi = "is_pi"
-
+            #if acc_auth_cred=={} or acc_auth_cred=='N/A':
+            #    pi = "is_not_pi"
+            #else:
+            #    pi = "is_pi"
+            user_email = str(self.request.user) 
+            pi = authority_check_pis(self.request, user_email)
             # check if the user has creds or not
             if acc_user_cred == {} or acc_user_cred == 'N/A':
                 user_cred = 'no_creds'
index 4a52560..15e2d74 100644 (file)
@@ -7,7 +7,7 @@ from unfold.page                import Page
 from manifold.core.query        import Query
 from manifoldapi.manifoldapi    import execute_admin_query, execute_query
 
-from portal.actions             import is_pi, create_slice, create_pending_slice, clear_user_creds
+from portal.actions             import is_pi, create_slice, create_pending_slice, clear_user_creds, authority_check_pis
 #from portal.forms               import SliceRequestForm
 from unfold.loginrequired       import LoginRequiredAutoLogoutView
 from ui.topmenu                 import topmenu_items_live, the_user
@@ -60,14 +60,14 @@ class SliceRequestView (LoginRequiredAutoLogoutView, ThemeView):
         # Handle the case when we use only hrn and not name
         if authority_name is None:
             authority_name = user_authority
-        #
+        
         account_query  = Query().get('local:account').select('user_id','platform_id','auth_type','config')
         account_details = execute_query(wsgi_request, account_query)
-        #
+        
         platform_query  = Query().get('local:platform').select('platform_id','platform','gateway_type','disabled')
         platform_details = execute_query(wsgi_request, platform_query)
         user_hrn = None
-        # getting user_hrn from local:account
+        #getting user_hrn from local:account
         for account_detail in account_details:
             for platform_detail in platform_details:
                 if platform_detail['platform_id'] == account_detail['platform_id']:
@@ -76,15 +76,16 @@ class SliceRequestView (LoginRequiredAutoLogoutView, ThemeView):
                     if 'myslice' in platform_detail['platform']:
                         account_config = json.loads(account_detail['config'])
                         user_hrn = account_config.get('user_hrn','N/A')
-                        acc_auth_cred = account_config.get('delegated_authority_credentials','N/A')
+        #                acc_auth_cred = account_config.get('delegated_authority_credentials','N/A')
 
 
         # checking if pi or not
-        if acc_auth_cred == {} or acc_auth_cred == 'N/A':
-            pi = "is_not_pi"
-        else:
-            pi = "is_pi"
+        #if acc_auth_cred == {} or acc_auth_cred == 'N/A':
+        #    pi = "is_not_pi"
+        #else:
+        #    pi = "is_pi"
 
+        pi = authority_check_pis (wsgi_request, user_email)       
 
         # Page rendering
         page = Page(wsgi_request)
index 385f698..89972ac 100644 (file)
@@ -55,7 +55,7 @@
        {%if 'creds_expired'  in user_cred %}
        <p class="command"><a href="#" style="color:red" data-toggle="modal" data-target="#myModal">EXPIRED CREDENTIALS</a> Please delegate again your credentials to the portal!</p>
     {%endif%}
-               {%if 'is_pi'  in pi %}
+               {% if pi %}
                <div class="col-md-3">
                        <h3>
                                EXPERIMENT
index c8fecf6..0d28ec1 100644 (file)
                                title="Please enter a name for your slice"required="required">
                          </div>
                          <div class="form-group">
-                               {%if 'is_pi'  in pi %}
+                               {% if pi %}
                                <input type="text" class="form-control" id="authority_hrn" name="org_name" style="width:300px" placeholder="Organization" 
                                title="An authority responsible for vetting your slice" required="required">
-                               {%else%}
+                               {% else %}
                            <input type="text" class="form-control" id="authority_hrn" name="org_name" placeholder="Organization" style="width:300px;" 
                                title="An authority responsible for vetting your slice" required="required" readonly>
-                               {%endif%}
+                               {% endif %}
                          </div>
                          <div class="form-group">
                            <input type="text" class="form-control" name="url" id="url" style="width:300px" placeholder="Experiment URL (if one exists)"
                                <textarea id="purpose" name="purpose" class="form-control" rows="6" placeholder="Experiment purpose" style="width:300px" 
                                title="Purpose of your experiment (informative)" required="required">{{ purpose }}</textarea>
                          </div>
-                         {%if 'is_pi'  in pi %}        
+                         {% if pi %}   
                          <button type="submit" id=submit_pi class="btn btn-onelab"><span class="glyphicon glyphicon-plus"></span> Create slice</button>
-                         {%else%}
+                         {% else %}
                          <button type="submit" class="btn btn-onelab"><span class="glyphicon glyphicon-plus"></span> Request slice</button>
-                         {%endif%}     
+                         {% endif %}   
                        </form>
        
                </div>
index 4e8b22c..32e7373 100644 (file)
@@ -56,7 +56,7 @@
     {%endif%}
 
        <div class="row">
-               {%if 'is_pi'  in pi %}
+               {% if pi %}
                <div class="col-md-3">
                        <h3>
                                EXPERIMENT
index 211f35d..3394e59 100644 (file)
                                title="Please enter a name for your slice"required="required">
                          </div>
                          <div class="form-group">
-                               {%if 'is_pi'  in pi %}
+                               {% if pi %}
                                <input type="text" class="form-control" id="authority_hrn" name="org_name" style="width:300px" placeholder="Organization" 
                                title="An authority responsible for vetting your slice" required="required">
-                               {%else%}
+                               {% else %}
                            <input type="text" class="form-control" id="authority_hrn" name="org_name" placeholder="Organization" style="width:300px;" 
                                title="An authority responsible for vetting your slice" required="required" readonly>
-                               {%endif%}
+                               {% endif %}
                          </div>
                          <div class="form-group">
                            <input type="text" class="form-control" name="url" id="url" style="width:300px" placeholder="Experiment URL (if one exists)"
                                <textarea id="purpose" name="purpose" class="form-control" rows="6" placeholder="Experiment purpose" style="width:300px" 
                                title="Purpose of your experiment (informative)" required="required">{{ purpose }}</textarea>
                          </div>
-                         {%if 'is_pi'  in pi %}        
+                         {% if pi %}   
                          <button type="submit" id=submit_pi class="btn btn-onelab"><span class="glyphicon glyphicon-plus"></span> Create slice</button>
-                         {%else%}
+                         {% else %}
                          <button type="submit" class="btn btn-onelab"><span class="glyphicon glyphicon-plus"></span> Request slice</button>
-                         {%endif%}     
+                         {% endif %}   
                        </form>
        
                </div>