try:
user_query = Query().get('local:user').filter_by('email', '==', user_email).select('user_id','email','password','config')
user_details = execute_admin_query(request, user_query)
-
# getting the user_id from the session
for user_detail in user_details:
user_id = user_detail['user_id']
Exception
"""
hrn = "%s.%s" % (request['authority_hrn'], request['slice_name'])
+
# XXX tmp sfa dependency
from sfa.util.xrn import Xrn
urn = Xrn(hrn, request['type']).get_urn()
# Add User to Slice if we have the user_hrn in pendingslice table
user_hrn = request.get('user_hrn', None)
+ user_obj = User.objects.get(username = user_hrn.split(".")[1])
+ list_users = []
user_hrns = list([user_hrn]) if user_hrn else list()
+ for user in user_hrns:
+ list_users +=[User.objects.get(username = user.split(".")[1])]
+
+ #user_query = Query.get('local:user').select('email').filter_by('email','==',user.username)
+ #user_details_sfa = execute_admin_query(wsgi_request, user_query)
+
+ pendinguser = PendingUser.objects.filter(login__iexact = user_obj.username)
+ if pendinguser :
+ raise Exception, "User %s doesn't exist, validate user before validating slice" % user_obj.username
+ #if not user_details_sfa:
+ # raise Exception, "User %s doesn't exist, validate user before validating slice" % user_hrn
+ #for user in list_users:
+
+ user_email = user_obj.email
- user_query = Query().get('user').select('user_hrn','user_email').filter_by('user_hrn','==',user_hrn)
- user_details_sfa = execute_admin_query(wsgi_request, user_query)
- if not user_details_sfa:
- raise Exception, "User %s doesn't exist, validate user before validating slice" % user_hrn
- for user in user_details_sfa:
- user_email = user['user_email']
-
# XXX LOIC Quick fix because this is totally inconsistent
if not 'number_of_nodes' in request:
request['number_of_nodes']=""
# ignored in request: id, timestamp, number_of_nodes, type_of_nodes, purpose
query = Query.create('slice').set(slice_params).select('slice_hrn')
- results = execute_query(wsgi_request, query)
+ results = execute_admin_query(wsgi_request, query)
if not results:
raise Exception, "Could not create %s. Already exists ?" % slice_params['hrn']
- else:
- clear_user_creds(wsgi_request,user_email)
+ else:
+ clear_user_creds(wsgi_request,user_obj.username)
# log user activity
- activity.slice.validate(self.request, "Slice validation", { "slice" : hrn })
+ activity.slice.validate(request,{ "slice" : hrn }) #"Slice validation", { "slice" : hrn })
+
try:
theme.template_name = 'slice_request_validated.txt'
text_content = render_to_string(theme.template, request)
}
manifold_add_account(wsgi_request, manifold_account_params)
-def sfa_create_user(wsgi_request, request, namespace = None, as_admin = False):
+def sfa_create_user(wsgi_request, request, namespace = None, as_admin = True):
"""
Arguments:
wsgi_request (~ WSGIRequest) :
#query = Query.create('user').set(sfa_user_params).select('user_hrn')
#results = execute_query(wsgi_request, query)
+ ###### Guilherme 08-07-2015
+ ##subject = 'Teste das chaves publicas'
+ ##message = 'Um novo usuario SFA esta sendo criado\n'
+ ##message += "request['public_key']: " + request['public_key'] + '\n'
+ ##message += "sfa_user_params['keys']: " + sfa_user_params['keys'] + '\n'
+ ##send_mail(subject, message, 'support@fibre.org.br', [request['email']], fail_silently=False)
+
if namespace is not None:
query = Query.create('%s:user' % namespace).set(sfa_user_params).select('user_hrn')
else:
"structure" : request['authority_hrn'],
"city" : "N/A",
"country" : "N/A",
- "sshPublicKey" : [request['public_key']],
+ "sshPublicKey" : request['public_key'],
"motivations" : "SFA federation",
}
#################################################
## first you must open a connection to the server
try:
- # Connect to NOC
+ # Connect to UFRJ
l = ldap.initialize("ldap://200.130.15.186:389")
# Bind/authenticate with a root user to search all objects
l.simple_bind_s("cn=Manager,dc=br,dc=fibre","fibre2013")
else:
# log user activity
#activity.user.login(self.request, "error")
- env['state'] = "Your username and/or password were incorrect."
-
+
+ env['state'] = "Your username and/or password were incorrect."
+
return render_to_response(self.template, env, context_instance=RequestContext(request))
def get (self, request, state=None):
# XXX Something like an invalid session seems to make the execute fail sometimes, and thus gives an error on the main page
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_id' in platform_detail:
- 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')
- acc_user_cred = account_config.get('delegated_user_credential','N/A')
+ if platform_details is not None and platform_details != {}:
+ for platform_detail in platform_details:
+ for account_detail in account_details:
+ if 'platform_id' in platform_detail:
+ 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')
+ 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"
{% block content %}
<div class="container">
- <div class="row">
- <div class="col-md-12">
- <div class="breadcrumbs">
- Management > Institution: <span id="authority_name"></span>
- </div>
- </div>
- </div>
+ <div class="row">
+ <div class="col-md-12">
+ <div class="breadcrumbs">
+ Management > Institution: <span id="authority_name"></span>
+ </div>
+ </div>
+ </div>
</div>
+
<div class="container">
- <div class="row">
- <div class="col-md-12">
- <ul class="nav nav-tabs nav-section">
- <!-- <li class="active"><a href="#about">About</a></li>-->
- <li class="active"><a href="#users">Users</a></li>
- <li><a href="#slices">Slices</a></li>
- <li><a href="#requests">Requests</a></li>
- </ul>
- </div>
- </div>
+ <div class="row">
+ <div class="col-md-12">
+ <ul class="nav nav-tabs nav-section">
+ <li class="active"><a href="#users">Users</a></li>
+ <li><a href="#slices">Slices</a></li>
+ <li><a href="#requests">Requests</a></li>
+ </ul>
+ </div>
+ </div>
</div>
+
<div class="container tab-content">
-<!--
- <div class="tab-pane active row" id="about">
- </div>
--->
- <div class="tab-pane row" id="users" data-authority="{{user_details.parent_authority}}">
+ <div class="tab-pane active row" id="users" data-authority="{{user_details.parent_authority}}">
<div class="col-md-12 el">
<div id="user-tab-loading"><img src="{{ STATIC_URL }}img/loading.gif" alt="Loading Slices" /></div>
<div id="user-tab-loaded" style="display:none;">
{% if user_details.parent_authority %}
$.post("/rest/slice/",{'filters':{'parent_authority':'{{user_details.parent_authority}}'}}, function( data ) {
- var username = "{{person.username}}";
var list_slices = [];
var table_slices = [];
/* "slice_hrn", "slice_description", "slice_type", "parent_authority", "created", "nodes", "slice_url", "slice_last_updated", "users", "slice_urn", "slice_expires" */
$.each( data, function( key, val ) {
- if(String(val.users[0]).indexOf("@") != -1){
- if(String(val.users[0]).split("@")[1] == username.split("@")[1]){
list_slices.push( "<li><a href=\"portal/slice/"+val.slice_hrn+"\">" + val.slice_hrn + "</a></li>" );
if(val.nodes=="undefined" || val.nodes==null){
nodes_length=0;
slice_row += "<td>"+val.slice_expires+"</td>";
slice_row += "</tr>";
table_slices.push(slice_row);
- }
- }
});
/* $("div#slice-list").html($( "<ul/>", { html: list_slices.join( "" ) })); */