Browse Source

Adiciona botão para renovar token

pull/3151/head
Vinícius Cantuária 6 years ago
parent
commit
83bbe8b03a
  1. 6
      sapl/api/views.py
  2. 4
      sapl/base/forms.py
  3. 1
      sapl/base/views.py
  4. 16
      sapl/templates/crud/edit_usuario_form.html

6
sapl/api/views.py

@ -8,7 +8,7 @@ from django.db.models import Q
from django.db.models.fields.files import FileField from django.db.models.fields.files import FileField
from django.db.models.signals import post_save from django.db.models.signals import post_save
from django.dispatch import receiver from django.dispatch import receiver
from django.http import HttpResponseRedirect, HttpResponse from django.http import HttpResponse, JsonResponse
from django.utils.decorators import classonlymethod from django.utils.decorators import classonlymethod
from django.utils.text import capfirst from django.utils.text import capfirst
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
@ -53,9 +53,9 @@ def create_auth_token(sender, instance=None, created=False, **kwargs):
def renova_token(request): def renova_token(request):
if request.user.is_authenticated: if request.user.is_authenticated:
Token.objects.filter(user_id=request.user.id).delete() Token.objects.filter(user_id=request.user.id).delete()
Token.objects.create(user_id=request.user.id) token = str(Token.objects.create(user_id=request.user.id))
return HttpResponseRedirect(reverse_lazy("sapl.base:user_edit", kwargs={"pk": request.user.id})) return JsonResponse({"message": "Token atualizado com sucesso!", "token": token})
else: else:
return HttpResponse('Usuário não autenticado!', status=401) return HttpResponse('Usuário não autenticado!', status=401)

4
sapl/base/forms.py

@ -226,8 +226,6 @@ class UsuarioEditForm(ModelForm):
super(UsuarioEditForm, self).__init__(*args, **kwargs) super(UsuarioEditForm, self).__init__(*args, **kwargs)
rows = to_row(( rows = to_row((
('username', 12),
('token', 12),
('first_name', 6), ('first_name', 6),
('last_name', 6), ('last_name', 6),
('email', 6), ('email', 6),
@ -237,6 +235,8 @@ class UsuarioEditForm(ModelForm):
self.helper = SaplFormHelper() self.helper = SaplFormHelper()
self.helper.layout = Layout( self.helper.layout = Layout(
'username',
FieldWithButtons('token', StrictButton('Renovar', id="renovar-token", css_class="btn-outline-primary")),
rows, rows,
'roles', 'roles',
form_actions(label='Salvar Alterações')) form_actions(label='Salvar Alterações'))

1
sapl/base/views.py

@ -1878,6 +1878,7 @@ class DeleteUsuarioView(PermissionRequiredMixin, DeleteView):
class EditUsuarioView(PermissionRequiredMixin, UpdateView): class EditUsuarioView(PermissionRequiredMixin, UpdateView):
model = get_user_model() model = get_user_model()
form_class = UsuarioEditForm form_class = UsuarioEditForm
template_name = "crud/edit_usuario_form.html"
success_message = 'Usuário editado com sucesso!' success_message = 'Usuário editado com sucesso!'
permission_required = ('base.change_appconfig',) permission_required = ('base.change_appconfig',)

16
sapl/templates/crud/edit_usuario_form.html

@ -0,0 +1,16 @@
{% extends "crud/form.html" %}
{% load i18n %}
{% block extra_js %}
<script type="text/javascript">
$(() => {
$("#renovar-token").click(() => {
$.get("{% url 'sapl.api:renova_token' %}", (res) => {
$("#id_token").val(res.token);
});
});
});
</script>
{% endblock %}
Loading…
Cancel
Save