platform_details = execute_query(self.request, platform_query)
account_details = execute_query(self.request, account_query)
- # initial assignment needed for users having no account
+ # initial assignment needed for users having account.config = {}
platform_name = ''
account_type = ''
account_usr_hrn = ''
account_pub_key = ''
account_reference = ''
+ my_users = ''
+ my_slices = ''
+ my_auths = ''
platform_name_list = []
platform_name_secondary_list = []
platform_access_list = []
account_type_secondary_list = []
account_reference_list = []
delegation_type_list = []
- exp_user_cred_list = []
+ user_cred_exp_list = []
slice_list = []
auth_list = []
slice_cred_exp_list = []
account_pub_key = account_config.get('user_public_key','N/A')
account_reference = account_config.get ('reference_platform','N/A')
# credentials
+ acc_user_cred = account_config.get('delegated_user_credential','N/A')
acc_slice_cred = account_config.get('delegated_slice_credentials','N/A')
acc_auth_cred = account_config.get('delegated_authority_credentials','N/A')
+ if 'N/A' not in acc_user_cred:
+ exp_date = re.search('<expires>(.*)</expires>', acc_user_cred)
+ if exp_date:
+ user_exp_date = exp_date.group(1)
+ user_cred_exp_list.append(user_exp_date)
+
+ my_users = [{'cred_exp': t[0]}
+ for t in zip(user_cred_exp_list)]
+
+
if 'N/A' not in acc_slice_cred:
for key, value in acc_slice_cred.iteritems():
slice_list.append(key)
for t in zip(auth_list, auth_cred_exp_list)]
- account_user_credential = account_config.get('delegated_user_credential','N/A')
- # Expiration date
- result = re.search('<expires>(.*)</expires>', account_user_credential)
- if result:
- exp_user_cred = result.group(1)
# for reference accounts
if 'reference' in account_detail['auth_type']:
account_type = 'Reference'
platform_name_list.append(platform_name)
account_type_list.append(account_type)
delegation_type_list.append(delegation)
- exp_user_cred_list.append(exp_user_cred)
usr_hrn_list.append(account_usr_hrn)
pub_key_list.append(account_pub_key)
# combining 5 lists into 1 [to render in the template]
- lst = [{'platform_name': t[0], 'account_type': t[1], 'delegation_type': t[2], 'credential_expiration':t[3], 'usr_hrn':t[4], 'usr_pubkey':t[5]}
- for t in zip(platform_name_list, account_type_list, delegation_type_list, exp_user_cred_list, usr_hrn_list, pub_key_list)]
+ lst = [{'platform_name': t[0], 'account_type': t[1], 'delegation_type': t[2], 'usr_hrn':t[3], 'usr_pubkey':t[4]}
+ for t in zip(platform_name_list, account_type_list, delegation_type_list, usr_hrn_list, pub_key_list)]
# to hide private key row if it doesn't exist
if 'myslice' in platform_detail['platform']:
account_config = json.loads(account_detail['config'])
platform_list = [{'platform_no_access': t[0]}
for t in itertools.izip_longest(total_platform_list)]
-
context = super(AccountView, self).get_context_data(**kwargs)
context['data'] = lst
context['ref_acc'] = secondary_list
context['platform_list'] = platform_list
+ context['my_users'] = my_users
context['my_slices'] = my_slices
context['my_auths'] = my_auths
context['person'] = self.request.user
else:
messages.error(request, 'Account error: You need an account in myslice platform to perform this action')
return HttpResponseRedirect("/portal/account/")
-
- elif 'fuseco' in request.POST:
+
+ # add reference platforms
+ elif 'add_fuseco' in request.POST:
# The recipients are the PI of the authority
#recipients = authority_get_pi_emails(request, authority_hrn)
recipients = ["support@myslice.info"]
messages.info(request, 'Request to get access on Fuseco platform received. Please wait for PI\'s reply.')
return HttpResponseRedirect("/portal/account/")
- elif 'ple' in request.POST:
+ elif 'add_ple' in request.POST:
# The recipients are the PI of the authority
#recipients = authority_get_pi_emails(request, authority_hrn)
recipients = ["support@myslice.info"]
messages.info(request, 'Request to get access on PLE platform received. Please wait for PI\'s reply.')
return HttpResponseRedirect("/portal/account/")
- elif 'omf' in request.POST:
+ elif 'add_omf' in request.POST:
# The recipients are the PI of the authority
#recipients = authority_get_pi_emails(request, authority_hrn)
recipients = ["support@myslice.info"]
messages.info(request, 'Request to get access on OMF:NITOS platform received. Please wait for PI\'s reply.')
return HttpResponseRedirect("/portal/account/")
- elif 'wilab' in request.POST:
+ elif 'add_wilab' in request.POST:
# The recipients are the PI of the authority
#recipients = authority_get_pi_emails(request, authority_hrn)
recipients = ["support@myslice.info"]
send_mail("Onelab user %s requested an account in IOTLab"%requester , msg, sender, recipients)
messages.info(request, 'Request to get access on IOTLab platform received. Please wait for PI\'s reply.')
return HttpResponseRedirect("/portal/account/")
+
+ #delete reference platoforms
else:
messages.info(request, 'Under Construction. Please try again later!')
<caption><b>Delegated User Credential</b></caption>
<tr class="odd">
<th>Expiration Date</th>
+ <th>Download</th>
</tr>
- {% for row in data %}
+ {% for row in my_users %}
<tr class="border_bottom">
- <td class="even"> {{ row.credential_expiration }} </td>
+ <td class="even"> {{ row.cred_exp }} </td>
+ <td class="odd"><button id="dl_user_cred" name= "dl_user_cred" type="submit" title="Download User Credential">Download</button></td>
</tr>
{%endfor%}
</table>
- <p><button id="dl_user_cred" name= "dl_user_cred" type="submit" title="Download User Credential">Download</button></p>
- <table class="mytable">
+ <p></p>
+ <table class="mytable">
<caption><b>Delegated Slice Credentials</b></caption>
<tr class="odd">
<th>Slice Name</th>
<th>Expiration Date</th>
+ <th>Download</th>
</tr>
{% for row in my_slices %}
<tr class="border_bottom">
<td class="even"> {{ row.slice_name }} </td>
<td class="odd"> {{ row.cred_exp }} </td>
+ <td class="even"> <button id="dl_slice_cred" name= "dl_slice_cred" type="submit" title="Download Slice Credentials">Download</button> </td>
</tr>
{%endfor%}
</table>
- <p><button id="dl_slice_cred" name= "dl_slice_cred" type="submit" title="Download Slice Credentials">Download</button></p>
+ <p></p>
<table class="mytable">
<caption><b>Delegated Authority Credentials</b></caption>
<tr class="odd">
<th>Authority Name</th>
<th>Expiration Date</th>
+ <th>Download</th>
</tr>
{% for row in my_auths %}
<tr class="border_bottom">
<td class="even"> {{ row.auth_name }} </td>
<td class="odd"> {{ row.cred_exp }} </td>
+ <td class="even"><button id="dl_auth_cred" name= "dl_auth_cred" type="submit" title="Download Authority Credentials">Download</button></td>
</tr>
{%endfor%}
</table>
- <p><button id="dl_auth_cred" name= "dl_auth_cred" type="submit" title="Download Authority Credentials">Download</button></p>
<p></p>
<p><button id="clear_cred" name= "clear_cred" type="submit" title="Clear All Credentials">Clear Credentials</button></p>
</div>
<th>Platform</th>
<th>Account Type</th>
<th>Reference to</th>
+ <th>Remove Account</th>
</tr>
{% for row in ref_acc %}
<tr class="border_bottom">
<td class="odd"> {{ row.platform_name }} </td>
<td class="even"> {{ row.account_type }} </td>
<td class="odd"> {{ row.account_reference }} </td>
+ <td class="even">
+ <button id="delete_account" name="delete_{{platform.platform_no_access}}" type="submit" title="Delete account from this platform">Delete {{row.platform_name}}</button>
+ </td>
</tr>
{%endfor%}
</table>
<tr class="border_bottom">
<td class="odd"> {{ platform.platform_no_access }} </td>
<td class="even">
- <button id="request_access" name= {{platform.platform_no_access}} type="submit" title="Add account to this platform">Add {{platform.platform_no_access}}</button>
+ <button id="add_account" name= "add_{{platform.platform_no_access}}" type="submit" title="Add account to this platform">Add {{platform.platform_no_access}}</button>
</td>
</tr>
{%endfor%}