Example #1
0
 def post(self, request):
     # 接收参数
     data = request.POST
     form = PasswordForm(data)
     # 验证数据的合法性
     if form.is_valid():
         # 获取清洗后的数据
         cleaned = form.cleaned_data
         # 取出清洗后的密码
         # 将密码进行加密
         password = set_password(cleaned.get('password'))
         # 通过id查询数据
         user_id = request.session.get('ID')
         # print(user_id)
         # 修改到数据库
         # 验证原密码是否存在,不能用get,用filter
         if Users.objects.filter(id=user_id, password=password).exists():
             password2 = set_password(cleaned.get('password2'))
             # 更新密码
             Users.objects.filter(id=user_id).update(password=password2)
             # 跳转到登录页
             return redirect('users:登录')
     else:
         # 错误
         return render(request,
                       'users/password.html',
                       context={
                           'errors': form.errors,
                       })
Example #2
0
    def post(self, request, *args, **kwargs):
        data = request.data.get('value')
        form = PasswordForm(data={"password": data})
        valid = form.is_valid()

        return create_validation_response(data, valid,
                                          form.errors.get('password'))
Example #3
0
def profile():
    form = PasswordForm(request.form)
    if request.method == 'POST' and form.validate():
        passwd = md5(form.newpasswd.data).hexdigest()
        db.session.query(User).filter_by(id = current_user.id).update({password:passwd})
        db.session.commit()
        flash("密码修改成功", 'info')
    return render_template("settings.html", passwdForm = form)
Example #4
0
def user_password(request):
    form = PasswordForm(request.user, request.POST or None)
    if form.is_valid():
        form.save()
        info(request, 'Password changed.')
        return HttpResponseRedirect(reverse("user-edit",
                                            args=[request.user.pk]))
    return direct_to_template(request, "user_password.html", extra_context={
        "form": form,
    })
def password_view(request):
    # Authentication check.
    authentication_result = views.authentication_check(request)
    if authentication_result is not None: return authentication_result
    # Get the template data from the session
    template_data = views.parse_session(request,
                                        {'form_button': "Change password"})
    # Proceed with the rest of the view
    if request.method == 'POST':
        form = PasswordForm(request.POST)
        if form.is_valid():
            user = authenticate(username=request.user.username,
                                password=form.cleaned_data['password_current'])
            if user is None:
                form.mark_error('password_current', 'Incorrect password')
            else:
                user = request.user
                user.set_password(form.cleaned_data['password_first'])
                user.save()
                logger.log(Action.ACTION_ACCOUNT, "Account password change",
                           request.user)
                form = PasswordForm(
                )  # Clean the form when the page is redisplayed
                template_data[
                    'alert_success'] = "Your password has been changed!"
    else:
        form = PasswordForm()
    template_data['form'] = form
    return render(request, 'page/profile/password.html', template_data)
Example #6
0
def user_password(request):
    form = PasswordForm(request.user, request.POST or None)
    if form.is_valid():
        form.save()
        info(request, 'Password changed.')
        return HttpResponseRedirect(
            reverse("user-edit", args=[request.user.pk]))
    return direct_to_template(request,
                              "user_password.html",
                              extra_context={
                                  "form": form,
                              })
Example #7
0
def admin_account(request):
    user = get_object_or_404(UserProfile, user__username=request.user.username)
    if not (request.user == user.user or request.user.is_superuser):
        raise Http404

    if request.method == "POST":
        form = PasswordForm(user, request.POST)
        if form.is_valid():
            user.user.set_password(form.cleaned_data["new_password"])
            user.user.save()
            HttpResponseRedirect("/info/")
    else:
        form = PasswordForm(user)

    data = {"form": form}
    return render(request, "widgets/settings/admin.html", data)
Example #8
0
def admin_account(request):
    user = get_object_or_404(UserProfile,
                             user__username=request.user.username)
    if not (request.user == user.user or request.user.is_superuser):
        raise Http404

    if request.method == "POST":
        form = PasswordForm(user, request.POST)
        if form.is_valid():
            user.user.set_password(form.cleaned_data["new_password"])
            user.user.save()
            HttpResponseRedirect("/info/")
    else:
        form = PasswordForm(user)

    data = {"form": form}
    return render(request, "widgets/settings/admin.html", data)
Example #9
0
    def post(self, request):
        user = request.user
        form = PasswordForm(request.POST)

        if form.is_valid():
            password = form.cleaned_data.get('password1')
            user.set_password(password)
            user.save()

            user = authenticate(username = user.username, password = password)
            login(request, user)

            form = PasswordForm()

            messages.success(request, 'Your password has been changed \
                successfully')

        context = {'passwordForm': form}
        return render(request, self.template_name, context)
Example #10
0
def Password(request):
    """ Password form
    """
    template_file = "user-password.html"
    form = PasswordForm(request.POST or None, request.FILES or None)

    if form.is_valid():
        password = form.cleaned_data['password']
        new_password = form.cleaned_data['new_password']
        confirm_password = form.cleaned_data['confirm_password']

        if new_password != confirm_password:
            messages.add_message(request, messages.ERROR, u"The passwords don't match")
            return redirect("users:password")

        user = authenticate(username=request.user.username, password=password)

        if user is not None:
            if user.is_active:
                user.set_password(new_password)
                user.save()
            else:
                messages.add_message(request, messages.ERROR, u"The user is inactive")
                return redirect("home")
        else:
            messages.add_message(request, messages.ERROR, u"Invalid user or password")
            return redirect("users:password")

        messages.add_message(request, messages.SUCCESS, u"Password changed successfully")

        return redirect("home")

    params = {
        'form': form,
    }
    context = RequestContext(request)

    return render_to_response (
        template_file,
        params,
        context_instance = context
    )
Example #11
0
def Password(request):
    """ Password form
    """
    template_file = "user-password.html"
    form = PasswordForm(request.POST or None, request.FILES or None)

    if form.is_valid():
        password = form.cleaned_data['password']
        new_password = form.cleaned_data['new_password']
        confirm_password = form.cleaned_data['confirm_password']

        if new_password != confirm_password:
            messages.add_message(request, messages.ERROR,
                                 u"The passwords don't match")
            return redirect("users:password")

        user = authenticate(username=request.user.username, password=password)

        if user is not None:
            if user.is_active:
                user.set_password(new_password)
                user.save()
            else:
                messages.add_message(request, messages.ERROR,
                                     u"The user is inactive")
                return redirect("home")
        else:
            messages.add_message(request, messages.ERROR,
                                 u"Invalid user or password")
            return redirect("users:password")

        messages.add_message(request, messages.SUCCESS,
                             u"Password changed successfully")

        return redirect("home")

    params = {
        'form': form,
    }
    context = RequestContext(request)

    return render_to_response(template_file, params, context_instance=context)
Example #12
0
    def post(self, request):
        user = request.user
        form = PasswordForm(request.POST)

        if form.is_valid():
            password = form.cleaned_data.get('password1')
            user.set_password(password)
            user.save()

            user = authenticate(username=user.username, password=password)
            login(request, user)

            form = PasswordForm()

            messages.success(
                request, 'Your password has been changed \
                successfully')

        context = {'passwordForm': form}
        return render(request, self.template_name, context)
Example #13
0
    def post(self, request, code):
        reset = get_object_or_404(PassReset, code = code)
        form = PasswordForm(request.POST)

        if not form.is_valid():
            context = {'form': form}
            return render(request, self.template_name, context)

        password = form.cleaned_data.get('password1')
        user = reset.user

        user.set_password(password)
        user.save() 
        reset.delete()

#faking authenticate
        user.backend = 'django.contrib.auth.backends.ModelBackend'
        login(request, user)
        messages.success(request, 'Your password has been successfuly changed.')

        return redirect(reverse('judge:problem_list'))
Example #14
0
def new_pass(request, key):
    pas = get_object_or_404(PassChange, activation_key=key)
    user = get_object_or_404(Users, id=pas.user_id)
    registration_form = PasswordForm(user_id=user.id)
    context = RequestContext(request)
    l = []
    if request.method == 'POST':
        form = PasswordForm(request.POST, user_id=user.id)
        if form.is_valid():
            datas = {}
            datas['first_name'] = user.first_name
            datas['last_name'] = user.last_name
            datas['username'] = user.username
            datas['password'] = form.cleaned_data['password1']
            datas['email'] = user.email
            datas['timezone'] = settings.TIME_ZONE
            datas[
                'preferred_languages'] = "[\"" + settings.LANGUAGE_CODE + "\"]"
            datas['activation_key'] = pas.activation_key
            form.save(datas)  #Save the user and his profile
            el = get_object_or_404(Users, username=user.username)
            request.session['registered'] = True  #For display purposes
            PassChange.objects.filter(activation_key=key).delete()
            return redirect(settings.URL + settings.SUCCESS + "/")
        else:
            registration_form = form  #Display form with error messages (incorrect fields, etc)
    return render(
        request, 'set_pass.html', {
            'user': user,
            'formset': registration_form,
            'u': settings.CMS_URL,
            'lpl': lpl
        }, locals())
Example #15
0
    def post(self, request, code):
        reset = get_object_or_404(PassReset, code=code)
        form = PasswordForm(request.POST)

        if not form.is_valid():
            context = {'form': form}
            return render(request, self.template_name, context)

        password = form.cleaned_data.get('password1')
        user = reset.user

        user.set_password(password)
        user.save()
        reset.delete()

        #faking authenticate
        user.backend = 'django.contrib.auth.backends.ModelBackend'
        login(request, user)
        messages.success(request,
                         'Your password has been successfuly changed.')

        return redirect(reverse('judge:problem_list'))
Example #16
0
def reset(request, code):
    success = False
    if request.method == "GET":
        try:
            user = User.objects.get(confirm_code=code)
            form = PasswordForm()
        except User.DoesNotExist:
            return redirect(reverse('index'))
        except ValidationError:
            return redirect(reverse('index'))
        return render(request, "reset.html", {"form": form, "code": code})
    elif request.method == "POST":
        form = PasswordForm(request.POST)
        if form.is_valid():
            try:
                user = User.objects.get(confirm_code=code)
                user.set_password(form.cleaned_data['password'])
                user.save()
                return redirect(reverse("login"))
            except User.DoesNotExist:
                pass
        else:
            render(request, "reset.html", {"form": form, "code": code})
Example #17
0
    def post(self, request, *args, **kwargs):
        if request.POST['password'] == request.session['password']:

            email_or_phone = request.session['email'] if request.session[
                'email'] else request.session['phone']

            confirm = request.POST.get('confirm', None)

            # Reset password
            if confirm == 'reset':
                try:
                    user = User.objects.get(email_or_phone=email_or_phone)
                except User.DoesNotExist:
                    self.clear_session()
                    return redirect('register')

                if user:
                    user.set_password(request.session['password'])
                    user.save()

            # Create new User
            elif confirm == 'register':
                try:
                    user = User.objects.create(
                        email_or_phone=email_or_phone,
                        password=make_password(request.session['password']),
                        email=request.session['email'],
                        phone=replace_phone(request.session['phone']))
                except IntegrityError:
                    self.clear_session()
                    return redirect('register')

            if user:
                login(request, user)
                self.clear_session()
                return redirect('dashboard')

        context = {'form': PasswordForm(), 'form_error': _('Wrong password')}
        return render(request, self.template_name, context)
Example #18
0
    def post(self, request, *args, **kwargs):
        data = request.data.get('value')
        form = PasswordForm(data={"password": data})
        valid = form.is_valid()

        return create_validation_response(data, valid, form.errors.get('password'))
Example #19
0
 def get(self, request, confirm=None):
     context = {'form': PasswordForm(), 'confirm': confirm}
     return render(request, self.template_name, context)
Example #20
0
 def get(self, request, code):
     get_object_or_404(PassReset, code=code)
     context = {'form': PasswordForm()}
     return render(request, self.template_name, context)
Example #21
0
 def get(self, request):
     context = {
         'passwordForm': PasswordForm(),
     }
     return render(request, self.template_name, context)