示例#1
0
	def post(self, request):

		form = UserCreationForm(request.POST)

		if not form.is_valid():

			return render(request, self.template_name, {
				'errors': form.errors.items(),
				'page': self._paginator(request)
			}, status=422)

		user, created = get_user_model().objects.get_or_create(**{
			'email': form.cleaned_data['email'],
		})

		if created:

			user.is_active = False
			user.save()

		# New or resend invite
		if created or not user.is_active:

			self._send_invite(user)

		return render(request, self.template_name, {
			'page': self._paginator(request)
		})
示例#2
0
文件: form.py 项目: marcio0/niqels
    def test_clean_password_invalid(self):
        data = {'email': '*****@*****.**', 'password_confirm': u'asd'}

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_password)
示例#3
0
	def post(self, request):

		form = UserCreationForm(request.POST)

		if not form.is_valid():

			return render(request, self.template_name, {
				'errors': form.errors.items(),
				'page': self._paginator(request)
			}, status=422)

		user, created = get_user_model().objects.get_or_create(**{
			'email': form.cleaned_data['email'],
			'defaults': {
				'is_active': False
			}
		})

		# New or resend invite
		if created or not user.is_active:

			ticket = RecoveryTicket.objects.create(**{
				'user': user
			})

			self._send_invite(request, user, ticket)

		return render(request, self.template_name, {
			'page': self._paginator(request)
		})
示例#4
0
文件: form.py 项目: marcio0/niqels
    def test_no_password(self):
        data = {'email': '*****@*****.**', 'password': None}

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_password)
示例#5
0
文件: views.py 项目: marcio0/niqels
def register(request):
    if request.user.is_authenticated():
        return redirect('index')

    if request.method == 'POST':
        form = UserCreationForm(request.POST)

        if form.is_valid():
            form.save()
            email = request.POST['email']
            password = request.POST['password']

            user = authenticate(email=email, password=password)
            login(request, user)

            _send_welcome_email(email, user.name)

            request.session['first_login'] = True

            return redirect('index')
    else:
        form = UserCreationForm()

    context = {
        'register_form': form
    }

    return render(request, 'access/register.html', context)
示例#6
0
文件: form.py 项目: marcio0/niqels
    def test_no_password(self):
        data = {
            'email': '*****@*****.**',
            'password': None
        }

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_password)
示例#7
0
文件: form.py 项目: marcio0/niqels
    def test_clean_password_invalid(self):
        data = {
            'email': '*****@*****.**',
            'password_confirm': u'asd'
        }

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_password)
示例#8
0
文件: form.py 项目: marcio0/niqels
    def test_clean_email_new(self):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': '******',
            'password_confirm': 'asdasd'
        }

        form = UserCreationForm(data)

        self.assertTrue(form.is_valid())

        self.assertEquals(form.clean_email(), data['email'])
示例#9
0
文件: form.py 项目: marcio0/niqels
    def test_clean_email_new(self):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': '******',
            'password_confirm': 'asdasd'
        }

        form = UserCreationForm(data)

        self.assertTrue(form.is_valid())

        self.assertEquals(form.clean_email(), data['email'])
示例#10
0
文件: form.py 项目: marcio0/niqels
    def test_clean_password_confirm_match(self):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm(data)
        form.cleaned_data = data

        self.assertTrue(form.is_valid())

        self.assertEquals(form.clean_password_confirm(), data['password_confirm'])
示例#11
0
文件: form.py 项目: marcio0/niqels
    def test_clean_password_confirm_match(self):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm(data)
        form.cleaned_data = data

        self.assertTrue(form.is_valid())

        self.assertEquals(form.clean_password_confirm(),
                          data['password_confirm'])
示例#12
0
文件: form.py 项目: marcio0/niqels
    def test_clean_email_exists(self):
        user = User.objects.create_user(email='*****@*****.**',
                                        password='******')

        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_email)
示例#13
0
文件: form.py 项目: marcio0/niqels
    def test_save_commit_false(self, set_password):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm(data)
        form.save(commit=False)

        set_password.assert_called_with(data['password'])

        self.assertFalse(
            User.objects.filter(email='*****@*****.**').exists())
示例#14
0
文件: form.py 项目: marcio0/niqels
    def test_clean_email_exists(self):
        user = User.objects.create_user(
            email='*****@*****.**',
            password='******')

        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm()
        form.cleaned_data = data

        self.assertRaises(forms.ValidationError, form.clean_email)
示例#15
0
文件: form.py 项目: marcio0/niqels
    def test_save_commit_false(self, set_password):
        data = {
            'name': 'foo',
            'email': '*****@*****.**',
            'password': u'asdasd',
            'password_confirm': u'asdasd'
        }

        form = UserCreationForm(data)
        form.save(commit=False)

        set_password.assert_called_with(data['password'])

        self.assertFalse(
            User.objects.filter(email='*****@*****.**').exists()
        )
示例#16
0
def register(request):
    if request.user.is_authenticated():
        return redirect('index')

    if request.method == 'POST':
        form = UserCreationForm(request.POST)

        if form.is_valid():
            form.save()
            email = request.POST['email']
            password = request.POST['password']

            user = authenticate(email=email, password=password)
            login(request, user)

            _send_welcome_email(email, user.name)

            request.session['first_login'] = True

            return redirect('index')
    else:
        form = UserCreationForm()

    context = {'register_form': form}

    return render(request, 'access/register.html', context)
示例#17
0
def signup(request):
    form = UserCreationForm(request.POST or None)
    if form.is_valid():
        user = form.save()
        user = authenticate(username=user.username, password=request.POST['password1'])
        if user is not None:
            if user.is_active:
                django_login(request, user)
                request.session['key_ring'] = request.POST['password1']
        return redirect('verify-email')
    
    context = {
        'form': form,
    }
    return render_to_response(
        "www/access/signup.html",
        context,
        context_instance=RequestContext(request)
    )
示例#18
0
 def get_context_data(self):
     context = super(LandingPage, self).get_context_data()
     context['register_form'] = UserCreationForm()
     return context
示例#19
0
 def get_context_data(self):
     context = super(PresentationView, self).get_context_data()
     context['register_form'] = UserCreationForm()
     return context