예제 #1
0
def signup(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST or None)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=password)
            login(request, user)
            messages.success(request,
                             'Success! Welcome %s' % username,
                             extra_tags='alert')
            return redirect('home')
        else:
            messages.warning(request,
                             'Please revise provided information',
                             extra_tags='alert')
            return render(request, 'signup.html', {
                'form': form,
            })
    else:
        form = CustomUserCreationForm()
    return render(request, 'signup.html', {
        'form': form,
    })
예제 #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,
    })
예제 #3
0
def register(request):
    if request.user.is_authenticated:
        messages.warning(
            request,
            'You are already logged in. Logout to register another user.')
        return redirect('dashboard-home')
    if request.method == 'POST':

        user_creation_form_filled = CustomUserCreationForm(request.POST)
        if user_creation_form_filled.is_valid():
            user_creation_form_filled.save()
            messages.success(
                request,
                "Registration successful, check your email inbox to verify your email."
            )
            return render(request,
                          'registration/signup.html',
                          context={'form': CustomUserCreationForm()},
                          status=status.HTTP_201_CREATED)
        else:
            return render(request,
                          'registration/signup.html',
                          {'form': user_creation_form_filled},
                          status=status.HTTP_422_UNPROCESSABLE_ENTITY
                          )  # should contain errors
    else:
        user_creation_form_empty = CustomUserCreationForm()
        return render(request, 'registration/signup.html',
                      {'form': user_creation_form_empty})
예제 #4
0
def index(request):
    form = CustomUserCreationForm(request.POST or None)
    context = {
      "form": form
    }
    if form.is_valid():
      form.save()
      form = CustomUserCreationForm()
    return render(request, 'pages/index.html', context)
예제 #5
0
def register(request):
    if request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            #login(request, user)
            username = form.cleaned_data.get('username')
            messages.success(request, f'Account Created For {username}!')
            return redirect('lastshop-homepage')
    else:
        form = CustomUserCreationForm()
    return render(request, 'users/register.html', {'form': form})
예제 #6
0
파일: views.py 프로젝트: bayedamethiam/user
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(commit=False)
            user.backend = "django.contrib.auth.backends.ModelBackend"
            user.save()
            user = form.save()
            login(request, user)
            return redirect(reverse("dashboard"))
예제 #7
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})
예제 #8
0
def signup(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('home')
    else:
        form = CustomUserCreationForm()
    return render(request, 'signup.html', {'form': form})
예제 #9
0
def join(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            # new_user = form.save(commit=False)
            username = form.cleaned_data.get('username')
            messages.success(request,
                             "Account created for {0}".format(username))
            return redirect('login')  # og: 'login'
    else:
        form = CustomUserCreationForm()
    return render(request, 'users/join.html', {'form': form})
예제 #10
0
    def post(self, request):
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            email = form.cleaned_data.get('email')
            messages.success(request,
                             'Account für ' + email + ' erfolgreich erstellt.')

            return redirect('shop:login')

        context = {
            'form': form,
        }
        return render(request, 'accounts/register.html', context)
예제 #11
0
def signup(request):
    if request.method == 'POST':

        signup_form = CustomUserCreationForm(request.POST, request.FILES)

        if signup_form.is_valid():
            signup_form.save()

            return redirect('recipes:home')
    else:
        signup_form = CustomUserCreationForm()

    return render(request, 'registration/signup.html',
                  {'signup_form': signup_form})
예제 #12
0
 def test_password_generation_for_shibboleth_user(self):
     """
     Ensure a random password is genereted for a shibboleth user.
     """
     email = '@'.join(['joe.bloggs', self.institution.base_domain])
     form = CustomUserCreationForm(data={
         'email': email,
         'first_name': 'Joe',
         'last_name': 'Bloggs',
         'is_shibboleth_login_required': True,
     }, )
     self.assertTrue(form.is_valid())
     form.save()
     self.assertEqual(CustomUser.objects.filter(email=email).count(), 1)
     self.assertIsNotNone(CustomUser.objects.get(email=email).password)
예제 #13
0
def AplikacjaConfirm(request, pk):
    podanie = Podanie.objects.get(pk=pk)
    new_user = None
    username = None
    if request.method == 'POST':
        form = CustomUserCreationForm(pk, request.POST)
        if form.is_valid():
            new_user = form.save(commit=False)
            username = new_user.username
            new_user.save()
            return redirect('aplikacja_confirm2', podanie.pk, username)
        else:
            print(form.errors)

    else:
        form = CustomUserCreationForm(pk)
    context_dict = {
        'podanie': podanie,
        'new_user': new_user,
        'username': username,
        'form': form,
    }
    response = render(request,
                      'aplikacje/aplikacja_confirm.html',
                      context=context_dict)
    return response
예제 #14
0
def signup(req):
  if req.user.is_authenticated:
    return redirect('tire_list')
  if req.method == 'POST':
    form = CustomUserCreationForm(req.POST)
    if form.is_valid():
      user = form.save() # Add the user to the database
      # Send email to user
      email = user.email
      subject = f"Thank you for registering for a Roadstar Tire Wholesale account"
      message = f"Hello {user.full_name} – Thank you for registering {user.company_name} for an account with us. Your account will need to be verified before you can log in and place an order. Please allow us 24 business hours to do so. If this is urgent, please contact us at (905) 660-3209."
      send_mail(
        subject, 
        message, 
        'settings.EMAIL_HOST_USER', 
        [email], 
        fail_silently=False
      )
      # Send email to admin
      mail_admins(
        f"New user: {user.full_name} from {user.company_name}",
        f"{user.full_name} from {user.company_name}, {user.email} – needs to be verified. Please log in to your admin account and verify this new user.\nhttps://www.roadstartirewholesale.ca/admin/users/customuser/{user.id}/change/",
        fail_silently=False
      )
      return redirect('confirmation')
  else:
    form = CustomUserCreationForm()
  return render(req, 'signup.html', {'form': form})
예제 #15
0
def signup(req):
  if req.user.is_authenticated:
    return redirect('tire_list')
  if req.method == 'POST':
    form = CustomUserCreationForm(req.POST)
    if form.is_valid():
      user = form.save() # Add the user to the database
      #Info needed to send user email
      email = user.email
      subject = f"Thank you for registering with Road Star Tires Wholesale."
      message = f"Thank you for registering {user.company_name} for an account with us. Your account will need to be verified before you can log in and place an order, please allow us 24 business hours to do so. If this is urgent, please contact us during business hours at 111-111-1111"
      send_mail(
        subject, 
        message, 
        'settings.EMAIL_HOST_USER', 
        [email], 
        fail_silently=False
      )
      #Info needed to send admin email
      mail_admins(
        f"New signup: {user.company_name}",
        f"This user - {user.company_name}, {user.email} - needs to be verified. Please log in to your admin account (http://www.roadstartirewholesale.ca/admin/login/) and verify this new user.",
        fail_silently=False
      )
      return redirect('confirmation')
  else:
    form = CustomUserCreationForm()
  return render(req, 'signup.html', {'form': form}) # redirect to signup page
예제 #16
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("/")
예제 #17
0
def register_user(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data['username']
            password = form.cleaned_data['password1']
            user = authenticate(username=username, password=password)
            login(request, user)
            messages.success(request, ('Yay! You have registered'))
            return redirect('main-urls:home')
    else:
        form = CustomUserCreationForm()

    context = {'form': form}
    return render(request, 'users/register.html', context)
예제 #18
0
def register(request):

    if request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user.is_active = False
            user.save()
            current_site = get_current_site(request)
            mail_subject = "Activate your account."
            message = render_to_string('registration/acc_activate_email.html', {
                'user': user,
                'domain': current_site.domain,
                'uid': urlsafe_base64_encode(force_bytes(user.pk)),
                'token': account_activation_token.make_token(user),
            })
            to_email = form.cleaned_data.get('email')
            email = EmailMessage(
                mail_subject, message, to=[to_email]
            )
            email.send()
            login(request, user)
            return HttpResponse('Please confirm your email address to complete the registration.')
    else:
        form = CustomUserCreationForm()
    args = {'form': form}
    return render(
        request, "registration/signup.html", args
    )
예제 #19
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_form = CustomUserCreationForm(data=request.POST)
        if user_form.is_valid():
            user = user_form.save(commit=False)
            user.save()
            registered = True
            current_site = get_current_site(request)
            subject = 'Activate Your MySite Account'
            message = render_to_string(
                'account_activation_email.html', {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(user.pk)),
                    'token': account_activation_token.make_token(user),
                })
            send_mail(
                subject,
                message,
                '*****@*****.**',
                [user.email],
            )
            # user.email_user(subject, message)
            # return redirect('index')
        else:
            print(user_form.errors)
    else:
        user_form = CustomUserCreationForm()
    return render(request, 'signup.html', {
        'user_form': user_form,
        'registered': registered
    })
예제 #20
0
def create_user(request):
    # User creation
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        # username = form.cleaned_data.get('username') # May cause issues
        if form.is_valid():
            form.save(commit=False)
            username = form.cleaned_data.get('username')
            # first_name = form.data.get('first_name')
            # last_name = form.data.get('last_name')
            # email = form.data.get('email')
            # contact_number = form.data.get('contact_number')
            # id_number = form.data.get('id_number')
            # dob = str(id_number)[:6]
            # raw_password = dob  # Will be changed below

            # If this user exists but has been 'deleted" previously reset is_active to true
            # if CustomUser.objects.filter(username=username).exists():
            #     curr_user = CustomUser.objects.filter(username=username)
            #     if curr_user.is_active:
            #         print(curr_user.username + " already exists, cannot add")
            #         messages.error(request, curr_user.username + " already exists, cannot add")
            #     else:
            #         curr_user.is_active = True
            # else:
            #     pass

            curr_user = CustomUser.objects.create_user(username=username)
            # curr_user = CustomUser.objects.create_user(username=username, password=raw_password, email=email, first_name=first_name, last_name=last_name, contact_number=contact_number, id_number=id_number)
            # curr_user = authenticate(username=username, password=raw_password)
            # basically says that the user has no password - used for custom authentication i.e. LDAP
            # curr_user.set_unusable_password()
            curr_user.save()
            # redirect back to manage_users
            return redirect(manage_users)
        # elif CustomUser.objects.filter(username=username).exists():
        #     curr_user = CustomUser.objects.filter(username=username)
        #     if curr_user.is_active:
        #         messages.error(request, curr_user.username + " already exists")
        #     else:
        #         curr_user.is_active = True
        #         print(curr_user.username + " re-added")
    else:
        form = CustomUserCreationForm()
    return render(request, 'administration/create_user.html', {'form': form})
예제 #21
0
def registerThroughAPI(request):
    content1 = {'message': 'Created'}
    content2 = {'message': 'Not Created'}
    #User.objects.create_user(username=username, email=email, password=password)
    form = CustomUserCreationForm(request.POST)
    if form.is_valid():
        form.save()
        return Response(content1)
    else:
        error = form.errors.get_json_data()
        for items in error:
            error_message = error[items][0]['message']
            content2['error_type'] = items
            content2['error_message'] = error_message
            #print(items)
            #print(error_message)
            break
        return Response(content2)
예제 #22
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"))
예제 #23
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"))
예제 #24
0
파일: views.py 프로젝트: hasansajedi/myCRM
def new(request):
    if request.method == "POST":
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            try:
                form.save()
                return redirect('/users/')
            except:
                pass
        else:
            err = form.errors
            print(err)
            return render(request, 'users/new.html', {
                'form': form,
                'error': err
            })
    else:
        form = CustomUserCreationForm()
    return render(request, 'users/new.html', {'form': form})
예제 #25
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})
예제 #26
0
def userregister(request):
	if request.method == "POST":
		form = CustomUserCreationForm(request.POST)
		if form.is_valid():
			user = form.save()
			messages.success(request, 'Account has been created')
			return redirect("users:login")
	else:
		form = CustomUserCreationForm()
	return render(request,"users/register.html",{"form":form})
예제 #27
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')
예제 #28
0
파일: views.py 프로젝트: dlalap/crewSync
def signup(request):
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            print(f'user: {user}')
            login(request, user, backend='django.contrib.auth.backends.ModelBackend')
            return redirect('home')
    else:
        form = CustomUserCreationForm()
    return render(request, 'signup.html', {'form': form})
예제 #29
0
파일: views.py 프로젝트: zvolsky/aaweb
def signup(request
           ):  # TODO: accounts vs users (which owns CustomUserCreationForm)?
    if request.method == 'POST':
        form = CustomUserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            login(request, user)
            return redirect(settings.LOGIN_REDIRECT_URL)
    else:
        form = CustomUserCreationForm()
    return render(request, 'accounts/signup.html', {'form': form})
예제 #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():
            user = form.save()
            login(request, user)
            return redirect (reverse('dashboard'))