diff --git a/sso/urls.py b/sso/urls.py index c978f21..3805aea 100644 --- a/sso/urls.py +++ b/sso/urls.py @@ -16,6 +16,7 @@ urlpatterns = patterns('', (r'^profile/add/reddit', views.reddit_add), (r'^profile/del/reddit/$', views.reddit_del), (r'^profile/del/reddit/(?P\d+)/$', views.reddit_del), + (r'^profile/refresh/eveapi/(?P\d+)/$', views.eveapi_refresh), (r'^profile/characters$', views.characters), (r'^profile/characters/(?P.*)/$', views.characters), (r'^users/(?P.*)/$', views.user_view), diff --git a/sso/views.py b/sso/views.py index 9eef356..13cf89b 100644 --- a/sso/views.py +++ b/sso/views.py @@ -115,6 +115,19 @@ def eveapi_del(request, userid=0): return HttpResponseRedirect(reverse('sso.views.profile')) +def eveapi_refresh(request, userid=0): + if userid > 0 : + try: + acc = EVEAccount.objects.get(id=userid) + except EVEAccount.DoesNotExist: + pass + else: + import_eve_account(acc.api_key, acc.api_user_id) + request.user.get_profile().update_access() + request.user.message_set.create(message="Key %s has been refreshed from the EVE API." % acc.api_user_id) + + return HttpResponseRedirect(reverse('sso.views.profile')) + @login_required def service_add(request): clsform = UserServiceAccountForm(request.user) diff --git a/templates/sso/profile.html b/templates/sso/profile.html index 0f39cbb..ad494c1 100644 --- a/templates/sso/profile.html +++ b/templates/sso/profile.html @@ -64,7 +64,8 @@ setup.

{{ acc.api_key }} {{ acc.description }} {{ acc.api_status_description }} - Delete + Refresh,  + Delete {% endfor %}