Exemplo n.º 1
0
def upgrade(request):
    if not request.user.settings.is_trial:
        raise SuspiciousOperation
    
    if not settings.BMAT_ALLOW_REGISTER:
        return render(request, "users/no_register.html", {})
    
    if request.method == "POST":
        form = CustomUserCreationForm(data=request.POST)
        if form.is_valid():
            request.user.username = form.cleaned_data["username"]
            request.user.set_password(form.cleaned_data["password1"])
            request.user.email = form.cleaned_data.get("email", "")
            request.user.settings.is_trial = False
            request.user.settings.save()
            request.user.save()

            return HttpResponseRedirect(request.GET.get("next", "/"))
    else:
        form = CustomUserCreationForm()
    
    context = {
        "form": form,
        "upgrade": True
    }
    
    return TemplateResponse(request, "users/register.html", context)
Exemplo n.º 2
0
def importar(request):

    listusers = CustomUser.objects.filter().order_by('-id')[:10]

    if not request.user.is_superuser:
        messages.error(request, ('Desculpe, você não tem permissão para importar clientes')) 
        return redirect('index')
        
    else:
        url = requests.get('https://jsonplaceholder.typicode.com/users')
        lista = url.json()
        with open('users/bd_clientes.json', 'w') as json_file:
            json.dump(lista, json_file, indent=4)
        
        print('Criando arquivo a ser importado...')
        time.sleep(2)
        
        with open('users/bd_clientes.json') as json_file:
            clientes = json.load(json_file)
            for item in clientes:
                #print(item['username'])
                newusers = {'username': item['username'],
                        'email': item['email'],
                        'name': item['name'],
                        'password1': 'senhapadrao!',
                        'password2': 'senhapadrao!',
                }
                uform = CustomUserCreationForm(newusers)
                if uform.is_valid():
                    uform.save()
        messages.success(request, ('Importação concluída com sucesso!'))

    return render(request, 'importar.html', {
        'listusers': listusers,
    })
Exemplo n.º 3
0
def register(request):
    """ Either registers a new user, displays a registration form or tells the user that they can't register
    
    If the setting BMAT_ALLOW_REGISTER is false, then this renders the template no_register.html and does nothing with
    any POST data.
    
    This uses the register.html template if users are allowed to register.
    """
    if not settings.BMAT_ALLOW_REGISTER:
        return render(request, "users/no_register.html", {})
    
    if request.method == "GET":
        return render(request, "users/register.html", {"form":CustomUserCreationForm()})
    
    elif request.method == "POST":
        f = CustomUserCreationForm(data=request.POST)
        
        if not f.is_valid():
            return render(request, "users/register.html", {"form":f})
        
        u = f.save(commit=False)
        
        u.email = f.cleaned_data.get("email", "")
        u.save()
        
        u = authenticate(username=u.username, password=f.cleaned_data["password1"])
        alogin(request, u)
    
    return redirect("/")
Exemplo n.º 4
0
def category(request):
  categories = Category.__members__.items()
  user_ip = get_client_ip(request)
  ip = user_ip[0]
  
  request.session['ip'] = ip
  
  if request.user.is_authenticated: 
    user = CustomUser.objects.get(pk=request.user.pk)
    user_form = UserProfileForm(instance=user)

    ProfileInlineFormset = inlineformset_factory(CustomUser, UserProfile, fields=('photo',))
    formset = ProfileInlineFormset(instance=user)

    if request.user.id == user.id:
        if request.method == "POST":
            formset = ProfileInlineFormset(request.POST, request.FILES, instance=user)
            
    return {
        'categories' : categories,
        'signup_form': CustomUserCreationForm(),
        'isLoggedIn': True,
        'userprofile': formset,
    }
  else :
    return {
        'categories' : categories,
        'signup_form': CustomUserCreationForm(),
        'isLoggedIn': False,
    }
Exemplo n.º 5
0
    def test_invalid_form(self):
        data = {
            'email': '',
            'password1': 'sEkRit12',
        }

        form = CustomUserCreationForm(data=data)
        self.assertFalse(form.is_valid())
Exemplo n.º 6
0
 def test_user_creation_forms_is_valid(self):
     form = CustomUserCreationForm(
         data={
             "username": "******",
             "email": "*****@*****.**",
             "password1": "Purbeurre2020",
             "password2": "Purbeurre2020"
         })
     self.assertTrue(form.is_valid())
Exemplo n.º 7
0
 def test_mismath_passwd(self):
     invalid_data = {
         'username': '******',
         'email': '*****@*****.**',
         'nick': 'nobodys_nick',
         'password1': 'passwduser',
         'password2': 'passwduserr'}
     form = CustomUserCreationForm(invalid_data)
     self.assertFalse(form.is_valid())
Exemplo n.º 8
0
 def test_correct_signup(self):
     valid_data = {
         'username': '******',
         'email': '*****@*****.**',
         'nick': 'nobodys_nick',
         'password1': 'passwduser',
         'password2': 'passwduser'}
     form = CustomUserCreationForm(valid_data)
     self.assertTrue(form.is_valid())
Exemplo n.º 9
0
 def test_no_email(self):
     invalid_data = {
         'username': '******',
         'email': '',
         'nick': 'nobodys_nick',
         'password1': 'passwduser',
         'password2': 'passwduser'}
     form = CustomUserCreationForm(invalid_data)
     self.assertFalse(form.is_valid())
Exemplo n.º 10
0
def register(request):
    if request.method == "GET":
        return render(request, "users/register.html", {"form": CustomUserCreationForm})
    elif request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect(reverse("dashboard"))
Exemplo n.º 11
0
 def test_too_long_login(self):
     # Username more than 30 character
     invalid_data = {
         'username': '******',
         'email': '*****@*****.**',
         'nick': 'nobodys_nick',
         'password1': 'passwduser',
         'password2': 'passwduser'}
     form = CustomUserCreationForm(invalid_data)
     self.assertFalse(form.is_valid())
Exemplo n.º 12
0
def signin(request):
    if request.method == 'GET':
        return render(request, 'registration/login.html',
                      {"form": CustomUserCreationForm})
    elif request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect(reverse("index"))
Exemplo n.º 13
0
    def test_user_creation_form(self):
        data = {
            'username': '******',
            'email': '*****@*****.**',
            'password1': 'fahfkasfk4563453',
            'password2': 'fahfkasfk4563453',
        }

        form = CustomUserCreationForm(data)
        self.assertTrue(form.is_valid())
Exemplo n.º 14
0
def register(request):
    if request.method == 'GET':
        return render(request, 'registration/register.html',
                      {'form': CustomUserCreationForm})
    elif request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect('project_listview')
Exemplo n.º 15
0
 def test_without_required_fields(self):
     """
     Ensure a CustomUser instance can not be created without the required form fields.
     """
     form = CustomUserCreationForm(data={})
     self.assertFalse(form.is_valid())
     self.assertEqual(form.errors['email'], ['This field is required.'])
     self.assertEqual(form.errors['first_name'],
                      ['This field is required.'])
     self.assertEqual(form.errors['last_name'], ['This field is required.'])
Exemplo n.º 16
0
 def test_signup_form_is_valid(self):
     form_data = {
         'username': '******',
         'email': '*****@*****.**',
         'birth_date': datetime.datetime.now(),
         'password1': 'Pw4Newuser',
         'password2': 'Pw4Newuser'
     }
     form = CustomUserCreationForm(data=form_data)
     self.assertTrue(form.is_valid())
Exemplo n.º 17
0
def register(request):
    """Sign in page"""
    if request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect(reverse("home"))
    return render(request, "users/register.html",
                  {"form": CustomUserCreationForm})
Exemplo n.º 18
0
 def test_user_creation_forms_is_valid(self):
     form = CustomUserCreationForm(
         data={
             "username": "******",
             "email": "*****@*****.**",
             "first_name": "user",
             "last_name": "test",
             "password1": "Rita&122055",
             "password2": "Rita&122055"
         })
     self.assertTrue(form.is_valid())
Exemplo n.º 19
0
    def test_valid_form(self):
        data = {
            'username': '******',
            'email': '*****@*****.**',
            'password1': 'SeKrIt123',
            'password2': 'SeKrIt123'
        }

        form = CustomUserCreationForm(data=data)
        print(form.errors)
        self.assertTrue(form.is_valid())
Exemplo n.º 20
0
 def test_creation_form_display_name_too_long(self):
     email = '*****@*****.**'
     display_name = 'Display Name Over 20 Characters'
     password = '******'
     form = CustomUserCreationForm(
         data={
             'email': email,
             'display_name': display_name,
             'password1': password,
             'password2': password,
         })
     self.assertFalse(form.is_valid())
Exemplo n.º 21
0
def register(request):
    if request.method == "GET":
        return render(request, "users/register.html",
                      {"form": CustomUserCreationForm})
    elif request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.backend = "django.contrib.auth.backends.ModelBackend"
            user.save()
            login(request, user)
            return redirect(reverse("dashboard"))
Exemplo n.º 22
0
    def test_form(self):

        data = {
            'username': '******',
            'email': '*****@*****.**',
            'password1': 'Alsjdsd52&',
            'password2': 'Alsjdsd52&',
        }

        form = CustomUserCreationForm(data)

        self.assertTrue(form.is_valid())
Exemplo n.º 23
0
def register(request):
    if request.method == 'GET':
        return render(
            request, 'users/register.html',
            {'form': CustomUserCreationForm}
        )
    elif request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect (reverse('dashboard'))
Exemplo n.º 24
0
def register(request):
    if request.method == 'GET':
        return render(request, 'users/register.html',
                      {'form': CustomUserCreationForm})
    elif request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.backend = 'django.contrib.auth.backends.ModelBackend'
            user.save()
            login(request, user)
            return redirect(reverse('dashboard'))
Exemplo n.º 25
0
 def test_creation_form_data_valid(self):
     email = '*****@*****.**'
     display_name = 'Display Name'
     password = '******'
     form = CustomUserCreationForm(
         data={
             'email': email,
             'display_name': display_name,
             'password1': password,
             'password2': password,
         })
     self.assertTrue(form.is_valid())
Exemplo n.º 26
0
 def test_creation_form_email_invalid(self):
     email = 'no at symbol'
     display_name = 'Display Name'
     password = '******'
     form = CustomUserCreationForm(
         data={
             'email': email,
             'display_name': display_name,
             'password1': password,
             'password2': password,
         })
     self.assertFalse(form.is_valid())
Exemplo n.º 27
0
 def test_invalid_institution_email(self):
     """
     Ensure an email address from an unsupported institution domain is caught via the
     CustomUserCreationForm if the user is required to login via a shibboleth IDP.
     """
     form = CustomUserCreationForm(data={
         'email': 'joe.bloggs@invalid_base_domain.com',
         'first_name': 'Joe',
         'last_name': 'Bloggs',
         'is_shibboleth_login_required': True,
     }, )
     self.assertFalse(form.is_valid())
Exemplo n.º 28
0
 def test_signup_form_validation_for_blank_items(self):
     form_data = {
         'username': '',
         'email': '',
         'birth_date': '',
         'password': '',
         'password2': ''
     }
     form = CustomUserCreationForm(data=form_data)
     self.assertFalse(form.is_valid())
     for filed, error in form.errors.items():
         self.assertEqual(error, ["This field is required."])
Exemplo n.º 29
0
 def test_existing_login(self):
     self.credentials = {
         'username': '******',
         'password': '******'}
     CustomUser.objects.create_user(**self.credentials)
     invalid_data = {
         'username': '******',
         'email': '*****@*****.**',
         'nick': 'else_nick',
         'password1': 'passwduser',
         'password2': 'passwduser'}
     form = CustomUserCreationForm(invalid_data)
     self.assertFalse(form.is_valid())
Exemplo n.º 30
0
def register(request):
    if request.method == "GET":
        return render(request, "users/register.html",
                      {"form": CustomUserCreationForm})
    elif request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            messages.success(request, f'User {username} created succesfully!')
            return redirect("login")
        else:
            return render(request, 'users/register.html', {'form': form})