Exemple #1
0
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            password = form.cleaned_data['password']
            first_name = form.cleaned_data['first_name']
            last_name = form.cleaned_data['last_name']

            user = User.objects.create_user(
                email,  #email is username
                email,  #email
                password)
            user.first_name = first_name
            user.last_name = last_name
            user.save()
            return authenticate(request, email, password)
    else:
        # setup the redirect url if user attempted to access a page
        # that required login
        if 'next' in request.GET:
            request.session['next'] = request.GET['next']
        form = RegistrationForm()

    return render_to_response("login.html", {
        'form': form,
    },
                              context_instance=RequestContext(request))
Exemple #2
0
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            first_name = form.cleaned_data['first_name']
            last_name = form.cleaned_data['last_name']
            password = form.cleaned_data['pwd1']
            usr = User.objects.create_user(
                username=email,
                email=email,
                password=password)
            usr.first_name = first_name
            usr.last_name = last_name
            usr.save()
            messages.info(request, 'You have registered successfully')
            # create training schedule
            _training = Training.objects.create(user=usr)
            # No schedule is marked as current yet (bug or feature?)
            for learning_page in LearningPage.objects.order_by('placement'):
                TrainingSchedule.objects.create(
                    user_training=_training,
                    learning_page=learning_page)

            # authenticate and login
            user = authenticate(request, username=email, password=password)
            if user is not None:
                login(request, user)
                return redirect('/learning/')
    else:
        form = RegistrationForm()
    return render(request, 'register.html', {'form': form})
Exemple #3
0
def registration(request):
    if request.user.is_authenticated():
        return redirect('/')

    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            try:
                user_pk = form.save(request.FILES.get('avatar'))
                admins = User.objects.filter(is_superuser=True)
                msg = EmailMessage(
                    u'Новый пользователь %s' % request.POST['username'],
                    (u'<html>'
                     u'<meta http-equiv="Content-Type" content="text/html; '
                     u'charset=UTF-8"><body>'
                     u'Зарегистрировался новый пользователь '
                     u'<a href="http://%s/admin/auth/user/%i">%s</a>'
                     u'<br />'
                     u'Данные:<br /><ul>%s</ul>'
                     u'</body></html>') %
                    (settings.HOSTNAME, user_pk, request.POST['username'],
                     form.as_ul()), u'admin@%s' % settings.HOSTNAME,
                    [a.email for a in admins])
                msg.content_subtype = "html"
                msg.send()
                return redirect(reverse('registration-thanks'))
            except ValidationError:
                pass
    else:
        form = RegistrationForm()

    return render(request, 'registration/registration.html', {'form': form})
Exemple #4
0
def registration(request):
    context = {}
    if request.method == "POST":
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect("login")

    context["form"] = RegistrationForm()
    return render(request, "core/registration.html", context)
Exemple #5
0
def registration(request):
    """Форма регистрации"""
    if request.user.is_authenticated:
        return redirect('home')
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect(login)

    context = {}
    context['form'] = RegistrationForm()
    return render(request, 'core/registration.html', context)
Exemple #6
0
def register(request, registration_key):
    if settings.CLOSED_NETWORK:
        rc = RequestContext(request)
        return render_to_response('auth/register_info.html', rc)

    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = RegistrationForm(request.POST)
        # check whether it's valid:
        if form.is_valid():

            username = form.cleaned_data.get('username')
            email = form.cleaned_data.get('email')
            password = form.cleaned_data.get('password')
            registration_key = form.cleaned_data.get('registration_key')

            u = User.objects.create_user(username=username,
                                         email=email,
                                         password=password)
            user = djauth.authenticate(username=username, password=password)

            if settings.CLOSED_NETWORK:
                rk = InvitationKey.objects.get(key=registration_key)
                p = UserProfile(user=u, invited_by=rk.user)
                p.save()
                rk.delete()
            else:
                p = UserProfile(user=u, invited_by=None)
                p.save()

            try:
                wcm = WelcomeMail()
                wcm.send(username=user.username, recipient_list=[email])
                rbe_logger.info("Send welcome message to {}".format(email))
            except Exception as e:
                rbe_logger.exception(e)

            djauth.login(request, user)

            return HttpResponseRedirect(
                reverse('profile', kwargs={'user_id': request.user.id}))

    # if a GET (or any other method) we'll create a blank form
    else:
        form = RegistrationForm(initial={'registration_key': registration_key})

    return render(request, 'auth/register.html', {
        'form': form,
        'closed_network': settings.CLOSED_NETWORK
    })
Exemple #7
0
def authenticate(request, email, password):
    user = auth.authenticate(username=email, password=password)
    if user is not None:
        if not user.is_active:
            auth.logout(request)
            return redirect('/?msg=notactive')  #TODO

        auth.login(request, user)

        if 'next' in request.session:
            next = request.session['next']
            del request.session['next']
            return redirect(next)

        return redirect('/')
    else:
        form = RegistrationForm()
        return render_to_response(
            "login.html",
            {
                'login_error':
                True,  # indicates username / pword did not match
                'form': form,
            },
            context_instance=RequestContext(request))
Exemple #8
0
    def member_edit(member_idx):
        '''
        신청서 수정
        '''
        form = RegistrationForm(request.form)
        form.set_camp(campcode)

        if request.method == "POST":
            form.update(member_idx)
            flash('수정이 완료되었습니다')
            return redirect(url_for('.member', member_idx=member_idx))

        member = db.session.query(Member).filter(
            Member.idx == member_idx).one()

        form.set_member_data(member)

        params = {
            'form':
            form,
            'page_header':
            "개인 신청서 수정",
            'script':
            url_for('static',
                    filename='{0}/js/reg-individual-edit.js'.format(campcode)),
            'editmode':
            True
        }
        return render_template('{0}/form.html'.format(campcode), **params)
Exemple #9
0
    def post(self, request):
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/success/')

        return HttpResponseRedirect('/')
Exemple #10
0
    def post(self, request):
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            messages.add_message(request, messages.SUCCESS, 'Registration successful!')
            return HttpResponseRedirect(reverse('core:login'))

        # Form has errors
        return render(request, 'core/register.html', {'form': form})
Exemple #11
0
def register(req):
    office_locations = OfficeLocation.objects.all()
    if req.method == 'POST':
        form = RegistrationForm(req.POST)
        if form.is_valid():
            u = add_user(req)
            return HttpResponseRedirect(reverse('core:landing_page'))
        else:
            return render_to_response('core/register.html', {
                'form': form,
                'office_locations': office_locations,
                'is_registration': True
            },
                                      context_instance=RequestContext(req))
    else:
        form = RegistrationForm()
        return render_to_response('core/register.html', {
            'form': form,
            'office_locations': office_locations,
            'is_registration': True
        },
                                  context_instance=RequestContext(req))
Exemple #12
0
 def post(self, request, *args, **kwargs):
     context = {}
     form = RegistrationForm(request.POST)
     if form.is_valid() and request.recaptcha_is_valid:
         form.save()
         email = form.cleaned_data.get('email')
         raw_password = form.cleaned_data.get('password1')
         account = authenticate(email=email, password=raw_password)
         login(request, account)
         return redirect('homePage')
     else:
         context['form'] = form
         return render(request, self.template_name, context)
Exemple #13
0
def register():
    if User.query.first():
        return redirect(url_for('auth.login'))

    if current_user.is_authenticated:
        return redirect(url_for('messages.read'))

    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data, password=generate_password_hash(form.password.data))
        db.session.add(user)
        db.session.commit()
        return redirect(url_for('auth.login'))
    return render_template('auth/register.html', title='Register', form=form)
Exemple #14
0
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            new_user = form.save()
            username = new_user.username
            email = new_user.email
            password = request.POST['password1']

            salt = hashlib.sha1(str(random.random())).hexdigest()[:5]
            activation_key = hashlib.sha1(salt + email).hexdigest()
            key_expires = datetime.datetime.today() + datetime.timedelta(2)

            #Get user by username
            user = get_user_model().objects.get(username=username)

            # Create and save user profile
            new_profile = UserProfile(user=user,
                                      activation_key=activation_key,
                                      key_expires=key_expires)
            new_profile.save()

            # Send email with activation key
            email_subject = 'Account confirmation'
            email_body = "Hey %s, thanks for signing up. To activate your account, click this link within \
          48hours http://ivebeenfound-dev2.elasticbeanstalk.com/accounts/confirm/%s" % (
                username, activation_key)

            send_mail(email_subject,
                      email_body,
                      '*****@*****.**', [email],
                      fail_silently=False)

            context = RequestContext(request, {
                'request': request,
                'user': request.user,
                'email': email
            })

            return render_to_response('public/confirm_sent.html',
                                      context_instance=context)
        else:
            pass
    context = RequestContext(request, {
        'request': request,
        'user': request.user
    })
    return render_to_response('public/registration_form.html',
                              context_instance=context)
Exemple #15
0
def register(request):
    if request.user.is_authenticated:
        return redirect('/')
    else:
        if request.method == 'POST':
            form = RegistrationForm(request.POST)
            if form.is_valid():
                form.save()
                oid = form.cleaned_data['organisation_id']
                rio = form.cleaned_data['role_in_organisation']
                first_name = form.cleaned_data['first_name']
                user = User.objects.get(first_name=first_name)
                up = UserProfile.objects.get(user=user)
                up.rio = rio
                up.oid = oid
                up.save()
                return redirect('/')
            else:
                args = {'form': form}
                return render(request, 'core/reg_form.html', context=args)
        else:
            form = RegistrationForm()
            args = {'form': form}
            return render(request, 'core/reg_form.html', context=args)
Exemple #16
0
    def registration():
        '''개인 신청.'''
        form = RegistrationForm(request.form)
        form.set_camp(campcode)

        if request.method == "POST":
            idx = form.insert()
            flash('신청이 완료되었습니다.')
            session['type'] = '개인'
            session['idx'] = idx
            return redirect(url_for('.member_info'))

        params = {
            'form': form,
            'page_header': "개인신청",
            'script': url_for('static', filename='{0}/js/reg-individual.js'.format(campcode))
        }
        return render_template('{0}/form.html'.format(campcode), **params)
Exemple #17
0
    def member_add():
        '''단체 멤버 추가'''
        idx = session['idx']
        group = db.session.query(Group).filter(Group.idx == idx).one()
        form = RegistrationForm(request.form)
        form.set_camp(campcode)
        form.set_group_mode(group_idx=idx, group_area_idx=group.area_idx)

        if request.method == "POST":
            form.insert()
            group.mem_num += 1
            db.session.commit()
            flash("멤버가 추가되었습니다.")
            return redirect(url_for(".group_info"))

        script_file = '{0}/js/reg-individual.js'.format(campcode)
        return render_template('{0}/form.html'.format(campcode),
                               form=form, page_header="멤버 추가",
                               script=url_for('static', filename=script_file))
Exemple #18
0
    def member_edit(member_idx):
        '''단체 멤버 수정'''
        idx = session['idx']
        group = db.session.query(Group).filter(Group.idx == idx).one()
        form = RegistrationForm(request.form)
        form.set_camp(campcode)
        form.set_group_mode(group_idx=idx, group_area_idx=group.area_idx)

        if request.method == "POST":
            form.update(member_idx)
            flash("성공적으로 수정되었습니다.")
            return redirect(url_for(".group_info"))

        member = db.session.query(Member).filter(Member.idx == member_idx).one()
        form.set_member_data(member)
        script_file = '{0}/js/reg-individual-edit.js'.format(campcode)
        return render_template('{0}/form.html'.format(campcode),
                               form=form, page_header="멤버 수정",
                               script=url_for('static', filename=script_file))
Exemple #19
0
def registration():
    if current_user.is_authenticated:
        return redirect(url_for('home'))

    form = RegistrationForm()
    if form.validate_on_submit():
        hashed_pw = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user = User(username=form.username.data,
                    email=form.email.data.lower(),
                    password=hashed_pw,
                    image_file='default_' + str(random.randrange(1, 4, 1)) +
                    '.jpg')

        db.session.add(user)
        db.session.commit()

        #flash('Your account has been  created you can now login', 'success')
        return redirect(url_for('login'))
    return render_template('registration.html',
                           title='Registration',
                           form=form)
Exemple #20
0
def registration(request):
    form = RegistrationForm()
    return render(request, 'main/registration.html', context={
        'form': form,
    })
Exemple #21
0
 def get(self, request, *args, **kwargs):
     context = {}
     form = RegistrationForm()
     context['form'] = form
     return render(request, self.template_name, context)