Beispiel #1
0
def update(request, id):
    user = User.objects.get(id=id)
    form = UserForm(request.POST, instance = user)
    if form.is_valid():
        form.save()
        return redirect("/show")
    return render(request, 'edit.html', {'user': user})
Beispiel #2
0
def user_edit(request, id):
    errors = ''
    user = User.objects.get(id=id)
    if request.method == 'POST':
        user_form = UserForm(request.POST, request.FILES, instance=user)
        csrf = Csrf.objects.get(session=request.session.session_key)
        if csrf.csrf != request.POST.get('csrfmiddlewaretoken'):
            csrf.csrf = request.POST.get('csrfmiddlewaretoken')
            csrf.save()
            if request.POST.get('password'):
                password_p = re.compile(r"^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}")
                password = request.POST.get('password')
                if password_p.match(password):
                    if user_form.is_valid():
                        user_form.save()
                        user.set_password(request.POST['password'])
                        user.save()
                        return redirect(reverse('auth_user'))
                    else:
                        errors = user_form.errors
                else:
                    errors = "密码必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间"
            else:
                if user_form.is_valid():
                    user_form.save()
                    return redirect(reverse('auth_user'))
                else:
                    errors = user_form.errors
    else:
        user_form = UserForm(instance=user)
    return render(request, 'user_change.html', {'user_forms': user_form, 'use': user, 'errors': errors})
Beispiel #3
0
def user_add(request):
    errors = ""
    user_form = UserForm()
    if request.method == 'POST':
        user_form = UserForm(request.POST, request.FILES)
        csrf = Csrf.objects.get(session=request.session.session_key)
        if csrf.csrf != request.POST.get('csrfmiddlewaretoken'):
            csrf.csrf = request.POST.get('csrfmiddlewaretoken')
            csrf.save()
            password_p = re.compile(r"^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}")
            password = request.POST.get('password')
            if password_p.match(password):
                if user_form.is_valid():
                    user_form.save()
                    user = User.objects.get(email=request.POST.get('email'))
                    role = Role.objects.get(id=1)
                    user.username = request.POST.get('last_name')
                    user.is_active = True
                    user.role = role
                    user.set_password(request.POST['password'])
                    user.save()
                    tasks.send_user.delay(user, request.POST['password'])
                    return redirect(request.path.replace('/add/', "/"))
                else:
                    errors = user_form.errors
            else:
                errors = "密码必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间"
    return render(request, 'user_change.html', {'user_forms': user_form, 'errors': errors})
Beispiel #4
0
def settings(request):
    if request.method == "POST":
        # First and last name
        user_form = UserForm(request.POST,
                             request.FILES,
                             instance=request.user)
        if user_form.is_valid():
            user_form.save()
            messages.add_message(request, messages.INFO, "Profile updated!")
            return redirect("user_settings")
        else:
            errors = ",".join(
                map(lambda err: str(err[0]), user_form.errors.values()))
            messages.add_message(
                request, messages.ERROR,
                user_form.non_field_errors().as_text() + errors)
    token, _ = Token.objects.get_or_create(user=request.user)
    user_form = UserForm(instance=request.user)
    return render(
        request,
        "user/settings.html",
        {
            "token": token.key,
            "user_form": user_form,
            "user_change_password_form": PasswordChangeForm(user=request.user),
        },
    )
Beispiel #5
0
def update(request, id):
    user_list = User.object.get(id=id)
    form = UserForm(request.POST, instance=user_list)
    if form.is_valid():
        form.save()
        return redirect('/show')
    return render(request, 'edit.html', {'user_list': user_list})
Beispiel #6
0
def update_user(request, pk):

    # try:
    #     user = User.objects.get(pk=pk)
    # except User.DoesNotExist:
    #     raise Http404

    user = get_object_or_404(User, pk=pk)

    if request.method == 'POST':
        form = UserForm(request.POST, instance=user)
        if form.is_valid():
            form.save()
            # return HttpResponseRedirect(reverse('users-name'))
            return redirect('users-name')
    elif request.method == 'GET':
        # instance == type(user) == User
        form = UserForm(instance=user)

    context = {
        'user_form': form,
        'user_instance': user,
    }
    return render(
        request,
        'create_user.html',
        context=context,
    )
Beispiel #7
0
def signup(request):
    """
    계정생성
    """
    if request.method == "POST":
        updated_request = request.POST.copy()
        updated_request['email'] += '@konkuk.ac.kr'
        form = UserForm(updated_request)
        if form.is_valid():
            form.save()
            user = User.objects.get(
                username=form.cleaned_data.get('username'))  # 유저객체 받아오기

            current_site = get_current_site(request)
            domain = current_site.domain
            uidb64 = urlsafe_base64_encode(force_bytes(user.pk))
            token = jwt.encode({
                'user': user.id
            },
                               SECRET_KEY,
                               algorithm='HS256').decode('utf-8')  # 토큰 생성
            message_data = signup_message(domain, uidb64, token)  # 메세지 생성

            mail_title = "BooKU 가입을 환영합니다! 이메일 인증을 완료해주세요!"
            mail_to = user.email
            email = EmailMessage(mail_title,
                                 message_data,
                                 from_email='*****@*****.**',
                                 to=[mail_to])
            email.send()
            return render(request, 'user/email_auth_notice.html')
    else:
        form = UserForm()
    return render(request, 'user/signup.html', {'form': form})
Beispiel #8
0
def update(request,id):
    user=User.objects.get(user_id=id)
    if request.method=="POST":
        form=UserForm(request.POST,instance=user)
        form.save()
        return redirect("/user")
    else:
        form=UserForm(instance=user)
    return render(request,"user/edit.html",{'form':form})
Beispiel #9
0
def create(request):
    print(request.POST)
    if request.method=="POST":
        form=UserForm(request.POST)
        form.save()
        return redirect("/user")
    else:
        form=UserForm()
    return render(request,"user/create.html",{'form':form})
Beispiel #10
0
def register(request):

    if request.method == "POST":
        form = UserForm(request.POST)
        if form.is_valid():
            form.save()
            form = UserForm()
    else:
        form = UserForm()
    return render(request, 'registration/register.html', {'form': form})
Beispiel #11
0
def new_user(request):
	if request.method == 'POST':
		form = UserForm(request.POST)
		if form.is_valid():
			#user_ = User.objects.create()
			form.save()#for_user=user_)
			return HttpResponseRedirect('/profile/')
	else:
		form = UserForm()
	return render(request, 'new_user.html', {'form' : form})
Beispiel #12
0
def new_user(request):
    if request.method == 'POST':
        form = UserForm(request.POST)
        if form.is_valid():
            #user_ = User.objects.create()
            form.save()  #for_user=user_)
            return HttpResponseRedirect('/profile/')
    else:
        form = UserForm()
    return render(request, 'new_user.html', {'form': form})
Beispiel #13
0
def regist(request):
    if request.method == 'POST':
        # 创建UserForm表单对象
        form = UserForm(request.POST)

        if form.is_valid():
            form.save()  # 写入数据库
            return redirect('/')

        errors = json.loads(form.errors.as_json())
    return render(request, 'user/regist.html', locals())
Beispiel #14
0
def UserAdd(request):
    if request.method == 'POST':
        user_form = UserForm(request.POST)
        if user_form.is_valid():
            user_form.save()
            return HttpResponseRedirect(reverse('user-list'))
        else:
            return render(request, 'user/add.html', {'user_form': user_form})
    else:
        user_form = UserForm()
        return render(request, 'user/add.html', {'user_form': user_form})
Beispiel #15
0
def create_user(request):
    if request.method == 'POST':
        form = UserForm(request.POST)
        if form.is_valid():
            form.save()
            # return HttpResponseRedirect(reverse('users-name'))
            return redirect('users-name')
    elif request.method == 'GET':
        form = UserForm()
    context = {'user_form': form}
    return render(request, 'create_user.html', context=context)
Beispiel #16
0
def usr(request):
    if request.method == "POST":
        form = UserForm(request.POST)
        if form.is_valid():
            try:
                form.save()
                return redirect('/show')
            except:
                pass
    else:
        form = UserForm()
    return render(request,'index.html',{'form':form})
Beispiel #17
0
def user_edit(request, id=None):
    user = get_object_or_404(User, id=id)
    if request.method == 'POST':
        user_form = UserForm(request.POST, instance=user)
        if user_form.is_valid():
            user_form.save()
            return HttpResponseRedirect(reverse('user_list'))
        else:
            return render(request, 'user/edit.html', {"user_form": user_form})
    else:
        user_form = UserForm(instance=user)
        return render(request, 'user/edit.html', {"user_form": user_form})
Beispiel #18
0
def create(request):
    if request.method == "POST":
        form = UserForm(request.POST,request.FILES)
        if form.is_valid():
            try:
                form.save()
                print(form)
                return redirect("/display_art_seller")
            except:
                pass
    else:
        form = UserForm()
    return render(request, "ArtSeller/login.html", {'form': form})
Beispiel #19
0
def new_user_oauth(request):
    if request.user.is_anonymous:
        return redirect('login-user')

    form = UserForm(request.POST or None, instance=request.user)
    if request.method == 'POST':
        form.files = request.FILES
        user = User.objects.get(pk=request.user.id)
        if form.is_valid():
            form.save()
            return redirect('all_users')
    else:
        return render(request, 'new_user_oauth.html', {'form': form})
Beispiel #20
0
def regist(request):
    if request.method == 'POST':
        # 读取 request.POST字典中的数据,借助UserProfile模型保存到数据库
        # 通过ModelForm模型表单类 验证数据并保存到数据库中
        userForm = UserForm(request.POST)
        if userForm.is_valid():  # 判断必须要字段是否都存在数据
            userForm.save()  # 保存数据
            return redirect('/')

        # post提交时有验证错误,将验证错误转成json-> dict对象
        errors = json.loads(userForm.errors.as_json())
        print(errors)

    return render(request, 'user/regist.html', locals())
Beispiel #21
0
 def post(self, request):
     pf = get_object_or_404(UserProfile, owner=self.request.user)
     form1 = ProfileForm(request.POST, instance=pf, prefix='profile')
     uf = get_object_or_404(User, username=self.request.user)
     form2 = UserForm(request.POST, instance=uf, prefix='user')
     if form1.is_valid() and form2.is_valid():
         profile = form1.save(commit=False)
         # profile.owner=self.request.user
         profile.save()
         form2.save()
         return redirect('home:all')
     else:
         ctx = {'form1': form1, 'form2': form2}
         return render(request, 'user/user_profile.html', ctx)
Beispiel #22
0
 def post(self, request):
     user_form = UserForm(request.POST,
                          request.FILES,
                          instance=request.user)
     if user_form.is_valid():
         with transaction.atomic():
             user_form.save()
         message = 'User settings successfully updated'
     else:
         message = 'Error while updating user'
     return render(
         request, "index/settings.html", {
             "user_form": user_form,
             "message": message,
             "trends": Trend.get_trends()
         })
Beispiel #23
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileInfoForm(data=request.POST)
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.save()
            profile = profile_form.save(commit=False)
            profile.user = user
            if 'profile_pic' in request.FILES:
                print('found it')
            profile.save()
            registered = True
        else:
            print(user_form.errors, profile_form.errors)
    else:
        user_form = UserForm()
        profile_form = UserProfileInfoForm()
    return render(
        request, 'user/registration.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
        })
Beispiel #24
0
def user_register(request):
    if request.method == "GET":
        user_form = UserForm()
    elif request.method == "POST":
        user_form = UserForm(request.POST)
        if user_form.is_valid():
            user = user_form.save()
            user.save()

            password = user.password
            # The form doesn't know to call this special method on user.
            user.set_password(password)
            user.save()

            # You must call authenticate before login. :(
            user = authenticate(username=user.username,
                                password=password)
            login(request, user)
            messages.add_message(
                request,
                messages.SUCCESS,
                "Congratulations, {}, on creating your new account! You are now logged in.".format(
                    user.username))
            return redirect('index')
    return render(request, "user/register.html", {'user_form': user_form,
                                                   })
Beispiel #25
0
def register(request):
    #is registration successful
    registered = False

    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileForm(data=request.POST)
        
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()

            #hash password
            user.set_password(user.password)
            user.save()

            # commit - we need to set the user attribute our selves
            profile = profile_form.save(commit=False)
            profile.user = user

            profile.save()

            registered = True
        else:
            print user_form.errors, profile_form.errors
    else:
        user_form = UserForm()
        profile_form = UserProfileForm()

    return render(request, 'user/register.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
            })
Beispiel #26
0
def register(request):
    #is registration successful
    registered = False

    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileForm(data=request.POST)

        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()

            #hash password
            user.set_password(user.password)
            user.save()

            # commit - we need to set the user attribute our selves
            profile = profile_form.save(commit=False)
            profile.user = user

            profile.save()

            registered = True
        else:
            print user_form.errors, profile_form.errors
    else:
        user_form = UserForm()
        profile_form = UserProfileForm()

    return render(
        request, 'user/register.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
        })
Beispiel #27
0
def register(request):
    user_form = UserForm(request.POST or None)
    profile_form = ProfileForm(request.POST or None, request.FILES or None)
    if user_form.is_valid() and profile_form.is_valid():
        user = user_form.save(commit=False)
        try:
            validate_password(user_form.cleaned_data.get('password'), user)
        except ValidationError as e:
            user_form.add_error('password', e)
            return render(request,
                          'user/registration.html',
                          context={
                              'user_form': user_form,
                              'profile_form': profile_form,
                          })

        user.set_password(user.password)
        user.save()
        profile = profile_form.save(commit=False)
        profile.user = user
        profile.save()
    return render(request,
                  'user/registration.html',
                  context={
                      'user_form': user_form,
                      'profile_form': profile_form
                  })
Beispiel #28
0
    def post(self, request):
        account_form = AccountForm(request.POST)
        user_form = UserForm(request.POST)

        if account_form.is_valid() and user_form.is_valid():
            # save user details, but don't add to database yet
            user = user_form.save(commit=False)
            # save username as email
            user.username = user.email
            # save account detail, but don't add to database
            account = account_form.save(commit=False)
            # add account to user
            user.account = account
            # save user to user database
            user.save()
            # Redirect to login page
            return redirect(reverse('login'))
        else:
            # Make new form
            account_form = AccountForm()
            user_form = UserForm()

        args = {'account_form': account_form, 'user_form': user_form}

        return render(request, self.template_name, args)
Beispiel #29
0
def CreateProfile(request):

    if request.method == 'POST':
        user_form = UserForm(request.POST)
        profile_form = ProfileForm(request.POST)
        if user_form.is_valid() and profile_form.is_valid():

            user = user_form.save()

            user.set_password(user.password)

            user.save()
            profile = profile_form.save(commit=False)
            profile.user = user
            profile.save()
            messages.add_message(request, messages.INFO,
                                 "Vous êtes désormais inscrit.")
            return redirect('/')

    else:
        user_form = UserForm()
        profile_form = ProfileForm()

    return render(request, 'registration/create.html', {
        'user_form': user_form,
        'profile_form': profile_form
    })
Beispiel #30
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_form = UserForm(request.POST)
        user_detail_form = UserDetailForm(request.POST, request.FILES)
        if user_form.is_valid() and user_detail_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.save()
            profile = user_detail_form.save(commit=False)
            profile.user = user
            if 'profile_picture' in request.FILES:
                print('found profile picture')
                profile.profile_picture = request.FILES['profile_picture']
            profile.save()
            registered = True
        else:
            print(user_form.errors, user_detail_form.errors)
    else:
        user_form = UserForm()
        user_detail_form = UserDetailForm()
    return render(request,'user/registration.html',
                          {'user_form':user_form,
                           'user_detail_form':user_detail_form,
                           'registered':registered})
Beispiel #31
0
def signup(request):
    if request.POST:
        try:
            form = UserForm(request.POST)

            if form.is_valid():
                user = form.save()
                user.first_name = form.cleaned_data['first_name']
                user.last_name = form.cleaned_data['last_name']
                user.username = form.cleaned_data['username']
                user.email = form.cleaned_data['email']
                user.password = form.cleaned_data['password']
                user.password_confirm = form.cleaned_data['password_confirm']
                user.set_password(user.password)
                user.save()

                return HttpResponseRedirect('/user/login')
            else:
                form.add_error(None, "Please enter all fields correctly")

        except IntegrityError:
            form.add_error(None, "Username is already taken")
            return render(request, 'accounts/create.html', {'form': form})
    else:
        form = UserForm()

    return render(request, 'accounts/create.html', {'form': form})
Beispiel #32
0
def regist(request):
    if request.method == 'POST':
        # 创建UserForm表单对象
        form = UserForm(request.POST)
        name = request.POST.get('username')
        try:
            User.objects.get(username=name)
            msg = '用户名已存在'
            return render(request, 'user/regist.html', locals())
        except:
            if form.is_valid():
                form.save()  # 写入数据库
                return redirect('/user/login/')

        errors = json.loads(form.errors.as_json())
    return render(request, 'user/regist.html', locals())
Beispiel #33
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileInfoForm(data=request.POST)
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.save()
            profile = profile_form.save(commit=False)
            profile.user = user
            if 'photos' in request.FILES:
                print('found it')
                profile.profile_pic = request.FILES['photos']
            profile.save()
            registered = True
            messages.success(request, 'Registered!')
        else:
            print(user_form.errors,profile_form.errors)
            messages.warning(request, 'Username already taken.')
            return render(request,'login/registration1.html',
                             {'registered':registered})
        return redirect('/warehouse/')
    else:
        user_form = UserForm()
        profile_form = UserProfileInfoForm()
    return render(request,'login/registration1.html')
Beispiel #34
0
def register(request):
    template = 'user/register.html'
    if request.method=='GET':
        return render(request, template, {'userForm':UserForm(),
                                          'userProfileForm':UserProfileForm()})
    # request.method == 'POST':
    userForm = UserForm(request.POST)
    userProfileForm = UserProfileForm(request.POST)
    if not (userForm.is_valid() and userProfileForm.is_valid()):
        return render(request, template, {'userForm':userForm,
                                          'userProfileForm':userProfileForm})
    user = userForm.save()
    user.set_password(user.password)
    user.save()
    userProfile = userProfileForm.save(commit=False)
    userProfile.user = user
    userProfile.save()
    messages.success(request, '歡迎註冊')
    return redirect(reverse('main:main'))
Beispiel #35
0
def register(request):
    if request.method == 'POST':
        user_form = UserForm(request.POST)
        userinformation_form = UserInformationForm(request.POST)
        studentinformation_form = StudentInformationForm(request.POST)
        if (    user_form.is_valid()
            and userinformation_form.is_valid()
            and (studentinformation_form.is_valid()
                 or (not studentinformation_form.cleaned_data.get('faculty')
                     and not studentinformation_form.cleaned_data.get('s_number')))):

            created_user = user_form.save(commit=False)
            created_user.is_active = False
            created_user.save()

            acc = []

            if (studentinformation_form.cleaned_data.get('faculty')
                and studentinformation_form.cleaned_data.get('s_number')):

                created_student_information = studentinformation_form.save(commit=False)

                created_student_information.user = created_user

                created_student_information.save()

                zih_mail = created_student_information.make_zih_mail()
                verification_mail(created_user, 'student', zih_mail, request)

                acc.append(zih_mail)


            else:
                created_user_information = userinformation_form.save(commit=False)

                created_user_information.user = created_user

                created_user_information.save()

                verification_mail(created_user, 'email', created_user.email, request)

                acc.append(created_user.email)

            return render(
                request,
                'registration/success.html',
                {
                    'title': _('Registration successfull'),
                    'acc': acc
                }
            )
        else:
            print('validation failed')
    else:
        user_form = UserForm()
        userinformation_form = UserInformationForm()
        studentinformation_form = StudentInformationForm()

    return render(
        request,
        'registration/register.html',
        {
            'title': _('Registration'),
            'user_form': user_form,
            'userinformation_form': userinformation_form,
            'studentinformation_form': studentinformation_form
        }
    )