Example #1
0
    def post(self, request, *args, **kwargs):
        user = get_object_or_404(User, id=self.request.user.id)
        member = get_object_or_404(Member, user=user)        

        user_edit_form = UserEditForm(data=request.POST, instance=user)
        password_edit_form = ChangePasswordForm(data=request.POST, user=user, initial={})
        member_edit_form = MemberDetailsForm(data=request.POST, instance=member)

        if user_edit_form.is_valid():
            user_edit_form.save()
            
        if password_edit_form.has_changed():
            if password_edit_form.is_valid():
                password_edit_form.save()
                return redirect(reverse('users:login'))
            
        if member_edit_form.is_valid():
            member_edit_form.save()
            
        context = self.get_context_data(**kwargs)
        
        context['form'] = user_edit_form
        context['form2'] = password_edit_form
        context['form3'] = member_edit_form
        
        return render_to_response(self.template_name, context, context_instance=RequestContext(request))
Example #2
0
def change_password(request, args):
    """
    Change the user's password
    """
    form = ChangePasswordForm(request.POST or None, user=request.user)

    password_changed = False

    if form.is_valid():
        cleaned_data = form.cleaned_data

        request.user.set_password(cleaned_data["new_password"])
        request.user.save()

        # Session auth hash needs to be updated after changing the password
        # or the user will be logged out
        update_session_auth_hash(request, request.user)

        password_changed = True

    args["form"] = form
    args["password_changed"] = password_changed

    return render(request,
                  "users/settings/change_password/change_password.html", args)
Example #3
0
def change_password(request):
    """Change password user"""
    profile = request.user.profile
    if request.method == 'POST':
        form = ChangePasswordForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            user = request.user
            if data['new_password'] == data['retry_password']:
                is_chequed = user.check_password(data['current_password'])
                if is_chequed:
                    user.set_password(data['new_password'])
                    user.save()
                    return redirect('profile_view')
                else:
                    return render(request, 'users/change_password.html',
                                  {'error': 'Invalid password'})
            else:
                return render(request, 'users/change_password.html',
                              {'error': 'New password does not match'})
    else:
        form = ChangePasswordForm()

    return render(request=request,
                  template_name='users/change_password.html',
                  context={
                      'profile': profile,
                      'user': request.user,
                      'form': form
                  })
Example #4
0
def change_password(request):
    msg = None
    success = None
    try:
        if request.method == 'POST':
            form = ChangePasswordForm(request.POST)

            if form.is_valid():
                u = User.objects.filter(email=request.session['session_id'])[0]
                cur_password = form.cleaned_data['cur_password']

                if cur_password == u.password:
                    password1 = form.cleaned_data['new_password']
                    password2 = form.cleaned_data['new_password2']

                    if password1 == password2:
                        u.password = password1
                        u.save()
                        msg = 'Your password was changed successfully'
                        success = 1
                    else:
                        msg = 'The new passwords do not match'
                        success = 0
                else:
                    msg = 'You entered a wrong password'
                    success = 0
        else:
            form = ChangePasswordForm()

        return render_to_response('users/change_password.html', {'name': 'Edit', 'list': menu, 'form': form, 'msg': msg, 'success': success}, context_instance=RequestContext(request))
    except KeyError:
        form = LoginForm()
        next = '/users/change_password/'
        return HttpResponseRedirect('/users/login/?next=%s' % next)
Example #5
0
 def post(self, request):
     form = ChangePasswordForm(request.POST)
     if form.is_valid():
         context = form.change_pass(request)
     else:
         error = form.errors.as_text()
         context = {'status': 2, 'msg': error}
     return HttpResponse(json.dumps(context))
Example #6
0
def _set_psw(request):
    if request.method == 'POST':
        form = ChangePasswordForm(user = request.user, data = request.POST)
        if form.is_valid():
            form.save()
            return render_to_response('users/change_psw_done.html', {})
        else:
            return TemplateResponse(request, 'users/setting_psw.html', {'form': form})
    form = ChangePasswordForm(user = request.user)
    return TemplateResponse(request, 'users/setting_psw.html', {'form': form})
Example #7
0
def change_password():
    identity = get_jwt_identity()
    user = User.query.filter_by(Email=identity).first()
    form = ChangePasswordForm()
    if not user.check_password(form.old_password.data):
        return {'error': 'Old password does not match.'}, 403
    if not form.validate_on_submit():
        return {'errors': form.errors}, 400
    user.set_password(form.new_password.data)
    db.session.commit()
    return {}, 204
Example #8
0
def update_password(request):
    if request.POST:
        form = ChangePasswordForm(request.POST, instance=request.user)
        if form.is_valid():
            user = form.save()
            return redirect('/profile/' + str(user.id))
        else:
            resp = {"response": "fail", 'error': form['password'].errors}
            resp = json.dumps(resp)
            return HttpResponse(resp, content_type="application/json")
    return HttpResponse("")
Example #9
0
 def post(self, request, *args, **kwargs):
     error, errors = "", ""
     form = ChangePasswordForm(request.POST)
     if form.is_valid():
         user = request.user
         if not check_password(request.POST.get('CurrentPassword'), user.password):
             error = "Invalid old password"
         else:
             user.set_password(request.POST.get('Newpassword'))
             user.is_active = True
             user.save()
             return HttpResponseRedirect('/')
     else:
         errors = form.errors
     return render(request, "change_password.html", {'error': error, 'errors': errors})
Example #10
0
def change_password(request):
    form = ChangePasswordForm()
    error = ''
    if request.method == 'POST':
        old_password = request.POST.get('old_password')
        new_password1 = request.POST.get('new_password1')
        new_password2 = request.POST.get('new_password2')
        user = auth.authenticate(username=request.user, password=old_password)
        if user is not None:
            if new_password1 == new_password2:
                if len(new_password1) >= 6:
                    user = auth.get_user(request)
                    user.set_password(new_password2)
                    user.save()
                    return HttpResponseRedirect(reverse('index'))
                else:
                    error = u'新密码长度小于6位'
            else:
                error = u'两次输入不匹配'
        else:
            error = u'原密码错误'
        return render_to_response('users/change_password.html', locals(),
                                  RequestContext(request))
    else:
        return render_to_response('users/change_password.html', locals(),
                                  RequestContext(request))
Example #11
0
    def put(self, request, *args, **kwargs):
        """
        修改密码
        """
        form = ChangePasswordForm(request.data)
        if not form.is_valid():
            return Response(form.errors, status=status.HTTP_400_BAD_REQUEST)

        obj = BusinessUser.get_object(**{'pk': request.user.id})
        serializer = UserSerializer(obj)
        try:
            serializer.update_password(obj, form.cleaned_data)
        except Exception as e:
            return Response({'Error': e.args},
                            status=status.HTTP_400_BAD_REQUEST)

        serializer_response = UserInstanceSerializer(obj)
        return Response(serializer_response.data,
                        status=status.HTTP_206_PARTIAL_CONTENT)
Example #12
0
def _set_psw(request):
    if request.method == 'POST':
        form = ChangePasswordForm(user=request.user, data=request.POST)
        if form.is_valid():
            form.save()
            return render_to_response('users/change_psw_done.html', {})
        else:
            return TemplateResponse(request, 'users/setting_psw.html',
                                    {'form': form})
    form = ChangePasswordForm(user=request.user)
    return TemplateResponse(request, 'users/setting_psw.html', {'form': form})
Example #13
0
def vista_clau(request):
    if request.method=='POST':
        form = ChangePasswordForm(request.POST)
        if form.is_valid():
            cleaned_data=form.cleaned_data
            password=cleaned_data.get('password')
            user=request.user
            user.set_password(password)
            user.save()
            logout(request)
            messages.success(request,'La clau s\'ha modificat correctament')
            return HttpResponseRedirect(reverse('login'))
        else:
            messages.error(request,"Hi ha errors en el formulari")
    else:
        form=ChangePasswordForm()

    form.helper=FormHelper()
    form.helper.form_class='form-horizontal'
    form.helper.add_input(Submit('submit','Desar'))

    return render(request,'forms/registration.html',{'form':form})
Example #14
0
def new_password(request, token):
    try:
        payload = jwt.decode(token, settings.SECRET_KEY, algorithms=['HS256'])
        if request.method == 'POST':
            form = ChangePasswordForm(request.POST)
            if form.is_valid():
                password = form.cleaned_data['password']
                user = User.objects.get(username=payload['username'])
                user.set_password(password)
                user.save()
                messages.success(
                    request, 'Your password has been changed successfully!')
                return redirect('users:login')
        else:
            form = ChangePasswordForm()
        return render(request, 'users/new_password.html', {
            'username': payload['username'],
            'form': form
        })
    except jwt.ExpiredSignatureError:
        messages.error(request, 'Your password reset token has been expired.')
    except jwt.InvalidTokenError:
        messages.error(request, 'Your password reset token is invalid.')
    return redirect('users:password-reset')
Example #15
0
def change_password(request, args):
    """
    Change the user's password
    """
    form = ChangePasswordForm(request.POST or None, user=request.user)
    
    password_changed = False
    
    if form.is_valid():
        cleaned_data = form.cleaned_data
        
        request.user.set_password(cleaned_data["new_password"])
        request.user.save()
        
        # Session auth hash needs to be updated after changing the password
        # or the user will be logged out
        update_session_auth_hash(request, request.user)
        
        password_changed = True
        
    args["form"] = form
    args["password_changed"] = password_changed
        
    return render(request, "users/settings/change_password/change_password.html", args)
Example #16
0
 def post(self, request):
     form = ChangePasswordForm(request.POST)
     if form.is_valid():
         form.save()
         return redirect('/home/')
     return Response({'form': form}, status=status.HTTP_200_OK)
Example #17
0
 def get(self, request):
     form = ChangePasswordForm()
     return Response({'form': form})