Ejemplo n.º 1
0
    def post(self, request, *args, **kwargs):
        user_form = UserUpdateForm(request.POST, instance=request.user)
        profile_form = ProfileUpdateForm(request.POST,
                                         request.FILES,
                                         instance=request.user.profile)

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

            if request.FILES:
                user = User.objects.filter(
                    username=request.user.username).first()
                if user.profile.image != "default_user.jpg":
                    __, user_image = str(user.profile.image).split("/")
                    # Delete an old profile image
                    try:
                        Path(settings.MEDIA_ROOT).joinpath(
                            str(user.profile.image)).unlink()
                    except:
                        logging.warning(
                            f"Cannot delete user image {str(user.profile.image)}"
                        )

            profile_form.save()

            messages.success(request, _("You account has been updated"))

        return redirect("user:profile")
Ejemplo n.º 2
0
 def test_UserUpdateForm_valid_data(self):
     """Testing UserUpdateForm Class - Success Valid Form"""
     form = UserUpdateForm(data={
         'username': '******',
         'email': '*****@*****.**'
     })
     self.assertTrue(form.is_valid())
Ejemplo n.º 3
0
 def test_user_update_form_is_valid(self):
     self.assertEquals(UserUpdateForm.Meta.model, User)
     form = UserUpdateForm(data={
         'username': '******',
         'email': '*****@*****.**',
     })
     self.assertTrue(form.is_valid())
Ejemplo n.º 4
0
    def test_UserUpdateForm_no_data(self):
        """Testing UserUpdateForm Class
        - Not Successfull , form not valid"""
        form = UserUpdateForm(data={})

        self.assertFalse(form.is_valid())
        self.assertEquals(len(form.errors), 2)
Ejemplo n.º 5
0
    def post(self, request, **kwargs):
        # print(request.POST)  # <QueryDict: {'id': ['7'], 'username': ['aa'], 'name_cn': ['bb'], 'phone': ['13305779168']}>
        # print(kwargs)  # {'pk': '7'}
        # print(request.body)  # b'id=7&username=aa&name_cn=bb&phone=13305779168'
        pk = kwargs.get("pk")
        data = QueryDict(request.body).dict()
        # print(data)  # {'id': '7', 'username': '******', 'name_cn': 'bb', 'phone': '13305779168'}
        _userForm = UserUpdateForm(request.POST)
        if _userForm.is_valid():
            try:
                self.model.objects.filter(pk=pk).update(**data)
                res = {
                    'code': 0,
                    "next_url": reverse("users:user_list"),
                    'result': '更新用户成功'
                }
            except:
                res = {
                    'code': 1,
                    "next_url": reverse("users:user_list"),
                    'errmsg': '更新用户失败'
                }

        else:
            # 获取所有的表单错误
            # print(_userForm.errors)
            res = {
                'code': 1,
                "next_url": reverse("users:user_list"),
                'errmsg': _userForm.errors
            }
        return render(request, settings.JUMP_PAGE, res)
Ejemplo n.º 6
0
 def test_userupdate_form_no_data(self):
     form = UserUpdateForm(data={
         'username': '******',
         'email': '*****@*****.**'
     })
     self.assertTrue(form.is_valid())
     self.assertEquals(len(form.errors), 0)
Ejemplo n.º 7
0
    def test_valid_user_update_form(self):
        self.client.login(username='******', password='******')

        new_photo.image = SimpleUploadedFile(name='testimage.png', content=open(
            users/tests/testdata/testimage.png, 'rb').read())

        form = UserUpdateForm(newPhoto.image)
        self.assertTrue(form.is_valid())
Ejemplo n.º 8
0
 def test_user_update_form_valid(self):
     self.test_user_register_form_valid()
     self.form = UserUpdateForm(data={
         'username': '******',
         'email': '*****@*****.**',
     })
     self.assertTrue(self.form.is_valid())
     self.assertEqual(str(self.form.save()), 'myusername123')
Ejemplo n.º 9
0
    def test_user_form_is_valid(self):

        form = UserUpdateForm(data={
            'username': '******',
            'email': '*****@*****.**'
        })

        self.assertTrue(form.is_valid())
Ejemplo n.º 10
0
	def test_user_profile_update_form_invalid(self):
		form = UserUpdateForm(
			data = {
			'image' :""
			}
		)

		self.assertFalse(form.is_valid())
Ejemplo n.º 11
0
    def test_user_update_form_valid_data(self):
        form = UserUpdateForm(data={
            'username': '******',
            'email': '*****@*****.**'
        })

        self.assertTrue(form.is_valid())
        print('user update form valid data pass')
Ejemplo n.º 12
0
    def test_valid_user_update_form(self):
        self.client.login(username='******', password='******')

        data = {
            'image': ''
        }

        form = UserUpdateForm(data=data)
        self.assertFalse(form.is_valid())
Ejemplo n.º 13
0
 def post(self, request):
     u_form = UserUpdateForm(request.POST, instance=request.user)
     p_form = ProfileUpdateForm(request.POST,
                                request.FILES,
                                instance=request.user.profile)
     if u_form.is_valid() and p_form.is_valid():
         u_form.save()
         p_form.save()
         return redirect('profile')
Ejemplo n.º 14
0
    def test_form(self):

        data = {
            'username': '******',
            'email': '*****@*****.**',
        }

        form = UserUpdateForm(data)
        self.assertTrue(form.is_valid())
Ejemplo n.º 15
0
	def test_user_update_form_invalid(self):
		form = UserUpdateForm(
			data = {
			'username' :"user2",
			'email' : ""
			}
		)

		self.assertFalse(form.is_valid())
Ejemplo n.º 16
0
	def test_user_update_form_valid(self):
		form = UserUpdateForm(
			data = {
			'username' :"user2",
			'email' : "*****@*****.**"
			}
		)

		self.assertTrue(form.is_valid())
Ejemplo n.º 17
0
    def test_profile_form_valid_email(self):
        form_data = {
            'username': self.base_user.username,
            'email': '*****@*****.**'
        }

        form = UserUpdateForm(instance=self.base_user, data=form_data)

        assert form.is_valid() == True
Ejemplo n.º 18
0
    def post(self, request):
        user_info_form = UserUpdateForm(request.POST, instance=request.user)
        if user_info_form.is_valid():
            user_info_form.save()
            return HttpResponse('{"status":"success"}',
                                content_type='application/json')

        else:
            return HttpResponse(json.dumps(user_info_form.errors),
                                content_type='application/json')
Ejemplo n.º 19
0
 def post(self, request, *args, **kwargs):
     u_form = UserUpdateForm(request.POST, instance=request.user)
     p_form = ProfileUpdateForm(request.POST,
                                request.FILES,
                                instance=request.user.profile)
     if u_form.is_valid() and p_form.is_valid():
         u_form.save()
         p_form.save()
         messages.success(request, f'Your account was updated.')
         return redirect('profile')
Ejemplo n.º 20
0
 def test_update_userdata_is_not_valid(self):
     """ function testing that username and email are not valid"""
     self.client.login(username='******', password='******')
     form_data2 = {'username': '',
                 'email': 'jacob123ail.com',
             }
     u_form = UserUpdateForm(form_data2)
     self.assertFalse(u_form.is_valid())
     response = self.client.post(reverse('profile'), form_data2)
     self.assertTemplateUsed(response, 'users/profile.html')
Ejemplo n.º 21
0
    def test_valid_user_update_form(self):
        self.client.login(username='******', password='******')

        data = {
            'username': '******',
            'email': '*****@*****.**'
        }

        form = UserUpdateForm(data=data)
        self.assertTrue(form.is_valid())
Ejemplo n.º 22
0
def edit_profile(request):
    u_form = UserUpdateForm()
    p_form = ProfileUpdateForm()
    if request.method == 'POST':
        
        u_form = UserUpdateForm(request.POST, instance=request.user)
        p_form = ProfileUpdateForm(request.POST,
                                   request.FILES,
                                   instance=request.user.profile)
        # pas_form = PasswordChangeForm(data=request.POST, user=request.user)
        if u_form.is_valid() and p_form.is_valid():
            u_form.save()
            p_form.save()
            # pas_form.save()
            # update_session_auth_hash(request, form.user)
            messages.success(request, f'Your account has been updated!')
            return redirect('blog-profile')

    else:
        u_form = UserUpdateForm(instance=request.user)
        p_form = ProfileUpdateForm(instance=request.user.profile)
        # pas_form = PasswordChangeForm(user=request.user)
    context = {
        'u_form':u_form,
        'p_form':p_form,
        # 'pas_form':pas_form
    }
    return render(request,'users/editprofile.html',context)
Ejemplo n.º 23
0
	def test_user_update_form(self):
		data = {
			'email':self.user.email,
			'first_name':'Ravi',
			'last_name'	:'Kumar'
		}

		form = UserUpdateForm(data=data, instance=self.user)
		# print(form.errors)
		self.assertTrue(form.is_valid())
		form.save()
		self.assertTrue(SnetUser.objects.get(id=self.user.id).first_name=='Ravi')
Ejemplo n.º 24
0
 def test_update_userdata_is_valid(self):
     """ function testing that username and email are updated"""
     self.client.login(username='******', password='******')
     u_form = UserUpdateForm(self.form_data)   
     u_form.save()
     response = self.client.post(reverse('profile'), self.form_data)
     self.assertTrue(u_form.is_valid())
     self.user.username = '******'
     self.user.email = '*****@*****.**'
     self.assertContains(response, 'jacob123')
     self.assertContains(response, '*****@*****.**')
     self.assertEqual(response.status_code, 200)
Ejemplo n.º 25
0
def user_view(request):

	if not request.user.is_authenticated:
			return redirect("login")

	context = {}
	if request.POST:
		form = UserUpdateForm(request.POST, instance=request.user)
		if form.is_valid():
			form.initial = {
					"email": request.POST['email'],
					"username": request.POST['username'],
			}
			form.save()
			context['success_message'] = "Updated"
	else:
		form = UserUpdateForm(

			initial={
					"email": request.user.email,
					"username": request.user.username,
				}
			)

	context['user_form'] = form

	movie_posts = MoviePost.objects.filter(author=request.user)
	context['movie_posts'] = movie_posts

	return render(request, "users/user.html", context)
Ejemplo n.º 26
0
 def post(self, request, *args, **kwargs):
     u_form = UserUpdateForm(request.POST, instance=request.user)
     p_form = ProfileUpdateForm(request.POST,
                                request.FILES,
                                instance=request.user.profile)
     if u_form.is_valid() and p_form.is_valid():
         u_form.save()
         p_form.save()
         messages.success(request,
                          f'Account has been updated successfully!')
         return redirect('profile')
     else:
         context = {'u_form': u_form, 'p_form': p_form}
         return render(request, self.template_name, context)
Ejemplo n.º 27
0
def create_or_update_phone_number(request):
    form_class = PhoneNumberForm
    user = get_object_or_404(User, pk=request.user.id)
    if request.method == "POST":
        form = form_class(request.POST, request.FILES)
        if form.is_valid():
            try:
                old_number = PhoneNumber.objects.get(user=user)
                new_number = form['number'].value()
                old_number.number = str(new_number)
                old_number.twilio_formatted_number = format_twilio_number(
                    str(new_number))
                old_number.created_date = timezone.now()
                old_number.is_valid_phone_number = old_number.is_valid_number()
                old_number.save()
            except PhoneNumber.DoesNotExist:
                phone_number = form.save(commit=False)
                phone_number.user = user
                phone_number.twilio_formatted_number = format_twilio_number(
                    phone_number.number)
                phone_number.created_date = timezone.now()
                phone_number.is_valid_phone_number = phone_number.is_valid_number(
                )
                phone_number.save()
        return render(
            request, 'users/account.html', {
                'user': user,
                'form': UserUpdateForm(request.POST or None, instance=user),
            })

    context = {
        'form': form_class,
    }
    return render(request, 'phone_numbers/update_phone_number.html', context)
Ejemplo n.º 28
0
    def get(self, request, *args, **kwargs):
        user = request.user
        user_form = UserUpdateForm(instance=user)
        profile_form = ProfileUpdateForm(instance=user.profile)

        # Number of approved user posts
        approved = Post.objects.filter(author=user).filter(
            status=Post.APPROVED).count()
        # Posts under review
        pending = Post.objects.filter(author=user).filter(
            status=Post.PENDING).count()
        # Posts declined to publication
        declined = Post.objects.filter(author=user).filter(
            status=Post.DECLINED).count()

        context = {
            "user": user,
            "user_form": user_form,
            "profile_form": profile_form,
            "approved": approved,
            "pending": pending,
            "declined": declined,
        }

        return render(request, self.template_name, context)
Ejemplo n.º 29
0
def update_account(request, user_id):
    user = get_object_or_404(User, pk=user_id)

    if request.user.is_authenticated() and request.user.id == user.id:
        form = UserUpdateForm(request.POST or None, instance=user)

        context = {
            'user': user,
            'form': form,
        }

        if form.is_valid():
            form.save()

        return render(request, 'users/account.html', context)
    else:
        raise PermissionDenied
Ejemplo n.º 30
0
def update(request):
    if request.POST:
        form = UserUpdateForm(request.POST, instance=request.user)
        if form.is_valid():
            form.save()

            return HttpResponseRedirect('.')

    else:
        form = UserUpdateForm(instance=request.user)

    context = {
        'form': form,
        'have_addresses': Address.objects.filter(user=request.user, is_deleted=False).exists(),
    }

    return render(request, 'users/user/update.html', context)
Ejemplo n.º 31
0
    def __init__(self, *args, **kwargs):
        self.request = kwargs.pop('request')
        super().__init__(*args, **kwargs)
        self.fields['subjects'].label = 'Vakken'
        self.fields['teacher_email'].label = 'Leraar email'
        self.fields['profile_picture'].label = 'Profielfoto'
        self.fields['hourprice'].label = 'Uurprijs'

        self.helper = FormHelper()
        self.helper.layout = Layout(
            TabHolder(
                Tab(
                    'Algemeen',
                    HTML(
                        '{% load crispy_forms_tags %}{% crispy form.user_form %}'
                    )),
                Tab(
                    'LeraarProfiel',
                    Row(
                        Col('teacher_email'),
                        Col('hourprice'),
                    ),
                    Row(Col('subjects'), ),
                    Row(
                        Col(HTML(
                            """{% if form.profile_picture.value %}<img class="img-responsive img-fluid rounded" src="{{ MEDIA_URL }}{{ form.profile_picture.value }}">{% endif %}""",
                        ),
                            css_class='col-sm-1'),
                        Col('profile_picture'),
                    ),
                ),
                Tab('Beschikbaarheid'),
                Tab('Preview'),
            ))
        self.helper.add_input(Submit("submit", "Update profiel"))

        if self.request.method == 'GET':
            self.user_form = UserUpdateForm(instance=self.request.user)
        else:
            self.user_form = UserUpdateForm(
                data=self.request.POST,
                instance=self.request.user,
                initial={
                    field: getattr(self.request.user, field)
                    for field in UserUpdateForm.Meta.fields
                })