mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 14:52:15 +00:00
Added delete confirmation for services. Generally cleanup of service views
This commit is contained in:
27
sso/views.py
27
sso/views.py
@@ -20,7 +20,7 @@ from reddit.models import RedditAccount
|
||||
import settings
|
||||
|
||||
def index(request):
|
||||
return render_to_response('sso/index.html')
|
||||
return render_to_response('sso/index.html', context_instance=RequestContext(request))
|
||||
|
||||
@login_required
|
||||
def profile(request):
|
||||
@@ -133,10 +133,8 @@ def service_add(request):
|
||||
else:
|
||||
error = None
|
||||
|
||||
return render_to_response('sso/serviceaccount/created.html', { 'account': acc, 'error': error }, context_instance=RequestContext(request))
|
||||
return render_to_response('sso/serviceaccount/created.html', locals(), context_instance=RequestContext(request))
|
||||
else:
|
||||
#defaults = { 'username': request.user.username, 'password': request.user.get_profile().default_service_passwd }
|
||||
|
||||
availserv = Service.objects.filter(groups__in=request.user.groups.all()).exclude(id__in=ServiceAccount.objects.filter(user=request.user).values('service'))
|
||||
if len(availserv) == 0:
|
||||
return render_to_response('sso/serviceaccount/noneavailable.html', locals(), context_instance=RequestContext(request))
|
||||
@@ -148,15 +146,22 @@ def service_add(request):
|
||||
@login_required
|
||||
def service_del(request, serviceid=0):
|
||||
if serviceid > 0 :
|
||||
|
||||
try:
|
||||
acc = ServiceAccount.objects.get(id=serviceid)
|
||||
except ServiceAccount.DoesNotExist:
|
||||
return HttpResponseRedirect(reverse('sso.views.profile'))
|
||||
|
||||
if acc.user == request.user:
|
||||
if not acc.user == request.user:
|
||||
return HttpResponseRedirect(reverse('sso.views.profile'))
|
||||
|
||||
if request.method == 'POST':
|
||||
print request.POST
|
||||
if 'confirm-delete' in request.POST:
|
||||
acc.delete()
|
||||
request.user.message_set.create(message="Service account successfully deleted.")
|
||||
else:
|
||||
return render_to_response('sso/serviceaccount/deleteconfirm.html', locals(), context_instance=RequestContext(request))
|
||||
|
||||
return HttpResponseRedirect(reverse('sso.views.profile'))
|
||||
|
||||
@login_required
|
||||
@@ -169,7 +174,7 @@ def service_reset(request, serviceid=0, accept=0):
|
||||
|
||||
if acc.user == request.user:
|
||||
if not accept:
|
||||
return render_to_response('sso/serviceaccount/reset.html', locals())
|
||||
return render_to_response('sso/serviceaccount/reset.html', locals(), context_instance=RequestContext(request))
|
||||
|
||||
passwd = hashlib.sha1('%s%s%s' % (acc.service_uid, settings.SECRET_KEY, random.randint(0, 2147483647))).hexdigest()
|
||||
|
||||
@@ -201,7 +206,7 @@ def reddit_add(request):
|
||||
defaults = { 'username': request.user.username, }
|
||||
form = RedditAccountForm(defaults) # An unbound form
|
||||
|
||||
return render_to_response('sso/redditaccount.html', locals())
|
||||
return render_to_response('sso/redditaccount.html', locals(), context_instance=RequestContext(request))
|
||||
|
||||
@login_required
|
||||
def reddit_del(request, redditid=0):
|
||||
@@ -230,9 +235,9 @@ def user_view(request, user=None):
|
||||
if form.is_valid():
|
||||
user = form.cleaned_data['username']
|
||||
else:
|
||||
return render_to_response('sso/userlookup.html', locals())
|
||||
return render_to_response('sso/userlookup.html', locals(), context_instance=RequestContext(request))
|
||||
else:
|
||||
return render_to_response('sso/userlookup.html', locals())
|
||||
return render_to_response('sso/userlookup.html', locals(), context_instance=RequestContext(request))
|
||||
|
||||
is_admin = request.user.is_staff
|
||||
|
||||
@@ -263,4 +268,4 @@ def user_view(request, user=None):
|
||||
except EVEAccount.DoesNotExist:
|
||||
eveaccounts = None
|
||||
|
||||
return render_to_response('sso/user.html', locals())
|
||||
return render_to_response('sso/user.html', locals(), context_instance=RequestContext(request))
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
this is incorrect please raise a bug on the tracker.
|
||||
</div>
|
||||
{% else %}
|
||||
<p>Your account on {{ account.service }} has been created. Your login details are as follows:</p>
|
||||
<p>Your account on {{ acc.service }} has been created. Your login details are as follows:</p>
|
||||
|
||||
<table>
|
||||
<tr><td>Service:</td><td>{{ account.service.name }}</td></tr>
|
||||
<tr><td>Service URL:</td><td><a href="{{ account.service.url }}">{{ account.service.url }}</a></td></tr>
|
||||
<tr><td>Username:</td><td>{{ account.service_uid }}</td></tr>
|
||||
<tr><td>Password:</td><td>{{ account.password }}</td></tr>
|
||||
<tr><td>Service:</td><td>{{ acc.service.name }}</td></tr>
|
||||
<tr><td>Service URL:</td><td><a href="{{ acc.service.url }}">{{ acc.service.url }}</a></td></tr>
|
||||
<tr><td>Username:</td><td>{{ acc.service_uid }}</td></tr>
|
||||
<tr><td>Password:</td><td>{{ acc.password }}</td></tr>
|
||||
</table>
|
||||
|
||||
<p><b>Warning:</b> You password is random, please either note it down or once logged into the service change it to something you
|
||||
|
||||
16
templates/sso/serviceaccount/deleteconfirm.html
Normal file
16
templates/sso/serviceaccount/deleteconfirm.html
Normal file
@@ -0,0 +1,16 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}External Service Account{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p><b>Warning</b>: This will delete your account on {{ acc.service.name }}, you will no longer be able to login and in some situtations unable to
|
||||
create a new account until fixed by a Sysop. If you are having issues logging in then please <b>use the password reset function first!</b></p>
|
||||
|
||||
<p>If you are sure, then please click confirm</p>
|
||||
|
||||
<form action="/profile/del/service/{{ acc.id }}/" method="post">
|
||||
<input name="confirm-delete" type="hidden" value="1"/>
|
||||
<input type="submit" value="Confirm Delete" />
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user