X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Factions.py;h=0845619f686213af35913a4cd8fb60b6ef7f3050;hb=b5c8f8e6fa4dc872a29c4d0f00312c282dd963dc;hp=d95a78eed091e0c373d8f1ab89352ceaba87d02a;hpb=9f8467bdb234718c4ea252826725675f7a565c13;p=myslice.git diff --git a/portal/actions.py b/portal/actions.py index d95a78ee..0845619f 100644 --- a/portal/actions.py +++ b/portal/actions.py @@ -483,7 +483,37 @@ def portal_reject_request(wsgi_request, request_ids): request_status['SFA authority'] = {'status': False, 'description': str(e)} elif request['type'] == 'slice': - request_status['SFA slice'] = {'status': True } + request_status['SFA slice'] = {'status': True } + + # getting user email based on id + ## RAW SQL queries on Django DB- https://docs.djangoproject.com/en/dev/topics/db/sql/ + for user in PendingUser.objects.raw('SELECT * FROM portal_pendingslice WHERE id = %s', [request['id']]): + user_email= user.type_of_nodes # XXX type_of_nodes field contains the email [shd be renamed] + + # get the domain url + current_site = Site.objects.get_current() + current_site = current_site.domain + + ctx = { + 'portal_url' : current_site, + } + try: + theme.template_name = 'slice_request_denied.txt' + text_content = render_to_string(theme.template, ctx) + theme.template_name = 'slice_request_denied.html' + html_content = render_to_string(theme.template, ctx) + theme.template_name = 'email_default_sender.txt' + sender = render_to_string(theme.template, ctx) + sender = sender.replace('\n', '') + + subject = 'Slice request denied.' + + msg = EmailMultiAlternatives(subject, text_content, sender, [user_email]) + msg.attach_alternative(html_content, "text/html") + msg.send() + except Exception, e: + print "Failed to send email, please check the mail templates and the SMTP configuration of your server" + PendingSlice.objects.get(id=request['id']).delete() elif request['type'] == 'authority': request_status['SFA authority'] = {'status': True } @@ -578,8 +608,9 @@ def create_pending_slice(wsgi_request, request, email): slice_name = request['slice_name'], user_hrn = request['user_hrn'], authority_hrn = request['authority_hrn'], - number_of_nodes = request['url'], + number_of_nodes = request['url'], # field needs to be renamed purpose = request['purpose'], + type_of_nodes = request['email'] # field needs to be renamed ) s.save()