Example #1
0
def user_register(request):
    registered = False
    context = RequestContext(request)
    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        if user_form.is_valid():
            #save user data to database
            user = user_form.save()
            #hashing password to allow us to edit the user object
            user.set_password(user.password)
            user.save()
            #User Profile Instance
            a=sendEmail(SGapikey,'*****@*****.**','Hi from TVW',user.email,'Welcome to TheVolunteerWeb! Have fun volunteering!')
            luser = authenticate(username = request.POST.get('username'), password = request.POST.get('password'))

            if luser:
                login(request, luser)
                request.session['username'] = request.POST.get('username')
            else:
                return HttpResponse (request.POST.get('username'), request.POST.get('password'))
            return HttpResponseRedirect('/register/profile/')
        else:
            print user_form.errors
    else:
        user_form = UserForm()
        return render_to_response('registration/ind_reg.html',{'user_form':user_form}, context)
Example #2
0
def user_register(request):
    registered = False
    context = RequestContext(request)
    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        if user_form.is_valid():
            #save user data to database
            user = user_form.save()
            #hashing password to allow us to edit the user object
            user.set_password(user.password)
            user.save()
            #User Profile Instance
            a = sendEmail(
                SGapikey, '*****@*****.**', 'Hi from TVW', user.email,
                'Welcome to TheVolunteerWeb! Have fun volunteering!')
            luser = authenticate(username=request.POST.get('username'),
                                 password=request.POST.get('password'))

            if luser:
                login(request, luser)
                request.session['username'] = request.POST.get('username')
            else:
                return HttpResponse(request.POST.get('username'),
                                    request.POST.get('password'))
            return HttpResponseRedirect('/register/profile/')
        else:
            print user_form.errors
    else:
        user_form = UserForm()
        return render_to_response('registration/ind_reg.html',
                                  {'user_form': user_form}, context)
Example #3
0
def register(request):

    registered = False

    if request.method == 'POST':
        user_form = UserForm(data=request.POST)

        if user_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.is_staff = True
            user.save()

            registered = True

        else:
            print(user_form.errors, profile_form.errors)

    else:
        user_form = UserForm()

    dict = {
        'user_form': user_form,
        'registered': registered,
    }

    return render(request, 'Registration/register.html', context=dict)
Example #4
0
def ngo_register(request):
    #boolean value for telling the template whether thr registration was successful
    #initially set to false
    registered = False
    context = RequestContext(request)
    if request.method == 'POST': #for processing the form data
        user_form = UserForm(data=request.POST)
        if user_form.is_valid():
            #save user data to database
            user = user_form.save()
            #hashing password to allow us to edit the user pbjecto
            user.set_password(user.password)
            user.save()
            #User Profile Instance
            luser = authenticate(username = request.POST.get('username'), password = request.POST.get('password'))

            if luser:
                login(request, luser)
                request.session['username'] = request.POST.get('username')
            else:
                return HttpResponse (request.POST.get('username'), request.POST.get('password'))

            try:
                NGOEmployeeProfile.objects.get(user_id=user.id)
            except:
                employee=NGOEmployeeProfile.objects.create(position="Owner",admin=True,user_id=user.id)
                registered = True
            return HttpResponseRedirect('/register/ngoprofile/')

        else:
            print user_form.errors,
    else:
        #set forms blank if there is no HTTP POST
        user_form = UserForm()
        #render template depending on context
    return render_to_response('registration/ngo_reg.html',{'user_form': user_form, 'registered': registered}, context)
Example #5
0
def ngoemp_register(request):
    #boolean value for telling the template whether thr registration was successful
    #initially set to false
    registered = False
    context = RequestContext(request)
    if request.method == 'POST':  #for processing the form data
        user_form = UserForm(data=request.POST)
        if user_form.is_valid():
            #save user data to database
            user = user_form.save()
            #hashing password to allow us to edit the user pbjecto
            user.set_password(user.password)
            user.save()
            #User Profile Instance
            luser = authenticate(username=request.POST.get('username'),
                                 password=request.POST.get('password'))

            if luser:
                login(request, luser)
                request.session['username'] = request.POST.get('username')
            else:
                return HttpResponse(request.POST.get('username'),
                                    request.POST.get('password'))

            try:
                NGOEmployeeProfile.objects.get(user_id=user.id)
            except:
                employee = NGOEmployeeProfile.objects.create(
                    position="Employee",
                    admin=False,
                    user_id=user.id,
                    ngo_id=NGOProfile.objects.get(
                        ngo_name=request.POST.get('ngo_name')).id)
                registered = True
            return HttpResponseRedirect('/')

        else:
            return HttpResponse('Invalid form')
    else:
        #set forms blank if there is no HTTP POST
        user_form = UserForm()
        #render template depending on context
        return render_to_response('registration/ngo_reg.html', {
            'user_form': user_form,
            'registered': registered
        }, context)
Example #6
0
def register(request):
    registered = False
    if request.method == "POST":
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileInfoForm(data=request.POST)

        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.is_active = False
            user.save()

            profile = profile_form.save(commit=False)
            profile.user = user
            if 'profile_pic' in request.FILES:
                profile.profile_pic = request.FILES['profile_pic']
            profile.save()
            registered = True
            current_site = get_current_site(request)
            mail_subject = 'Thanks for registering.Activate your account here.'
            message = render_to_string(
                'Registration/activate_account.html', {
                    'user': user,
                    'domain': current_site.domain,
                    'uid': urlsafe_base64_encode(force_bytes(
                        user.pk)).decode(),
                    'token': account_activation_token.make_token(user),
                })
            to_email = user.email
            print(user.email)
            send_mail(mail_subject, message, ['*****@*****.**'],
                      [to_email])
            message1 = "please verify your email"
            return render(request, 'Registration/alert.html',
                          {'message1': message1})
        else:
            print(user_form.errors, profile_form.errors)
    else:
        user_form = UserForm()
        profile_form = UserProfileInfoForm()
    return render(
        request, 'Registration/register.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
        })
Example #7
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        if user_form.is_valid():
            user = user_form.save()
            #Hashing user's password
            user.set_password(user.password)
            user.save()
            registered = True
        else:
            print(user_form.errors)
    else:
        user_form = UserForm()

    return render(request, 'Registration_app/registration.html', {
        'user_form': user_form,
        'registered': registered
    })
Example #8
0
def register(request):

    registered = False

    if request.method == 'POST':
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileInfoForm(data=request.POST)

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

            user = user_form.save()
            user.set_password(user.password)
            user.save()

            profile = profile_form.save(commit=False)
            profile.user = user

            #if 'profile_pic' in request.FILES:
            #profile.profile_pic = request.FILES['profile_pic']

            profile.save()

            registered = True
        else:
            print(user_form.errors, profile_form.errors)

    else:
        user_form = UserForm()
        profile_form = UserProfileInfoForm()

    return render(
        request, 'registration.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered,
            'username': user_form.password
        })
Example #9
0
def general(request):
    if (request.method == 'POST'):
        dec = request.POST.get('dec')
        if dec == "User Complete":
            if Volunteer_ngo_request.objects.get(
                    id=request.POST.get('id')) == "NGO Complete":
                Volunteer_ngo_request.objects.filter(
                    id=request.POST.get('id')).update(status="Completed")
            else:
                Volunteer_ngo_request.objects.filter(
                    id=request.POST.get('id')).update(status=dec)
            return HttpResponse('User Completed',
                                content_type="application/text")

        elif dec == "User Abort":
            Volunteer_ngo_request.objects.filter(
                id=request.POST.get('id')).update(status=dec)
            return HttpResponse('User Aborted',
                                content_type="application/text")

        elif dec == "NGO Complete":
            if Volunteer_ngo_request.objects.get(
                    id=request.POST.get('id')) == "User Complete":
                Volunteer_ngo_request.objects.filter(
                    id=request.POST.get('id')).update(status="Completed")
            else:
                Volunteer_ngo_request.objects.filter(
                    id=request.POST.get('id')).update(status=dec)
            return HttpResponse('NGO Completed',
                                content_type="application/text")

        elif dec == "NGO Abort":
            Volunteer_ngo_request.objects.filter(
                id=request.POST.get('id')).update(status=dec)
            return HttpResponse('Aborted', content_type="application/text")

        elif dec == "Accept":
            Volunteer_ngo_request.objects.filter(
                id=request.POST.get('id')).update(status=dec)
            return HttpResponse('Accepted', content_type="application/text")
        elif dec == "Reject":
            Volunteer_ngo_request.objects.filter(
                id=request.POST.get('id')).update(status=dec)
            return HttpResponse('Rejected', content_type="application/text")

        elif dec == "Accept Recurring":
            Recurring_request.objects.filter(id=request.POST.get('id')).update(
                status=dec)
            recur_request = Recurring_request.objects.get(
                id=request.POST.get('id'))
            if recur_request.frequency == "Daily":
                new_reqdatetime = datetime.datetime.combine(
                    recur_request.startdate_vol, recur_request.time_vol)
                while (new_reqdatetime.date() <= recur_request.enddate_vol):
                    duplicate.apply_async(
                        eta=new_reqdatetime - datetime.timedelta(days=1),
                        args=[
                            recur_request.sender, recur_request.recepient,
                            new_reqdatetime.date(), recur_request.time_vol,
                            recur_request.activity
                        ])
                    new_reqdatetime += datetime.timedelta(days=1)

            elif recur_request.frequency == "Weekly":
                new_reqdatetime = datetime.datetime.combine(
                    recur_request.startdate_vol, recur_request.time_vol)
                while (new_reqdatetime.date() <= recur_request.enddate_vol):
                    duplicate.apply_async(
                        eta=new_reqdatetime - datetime.timedelta(days=3),
                        args=[
                            recur_request.sender, recur_request.recepient,
                            new_reqdatetime.date(), recur_request.time_vol,
                            recur_request.activity
                        ])
                    new_reqdatetime += datetime.timedelta(days=7)

            elif recur_request.frequency == "Fortnightly":
                new_reqdatetime = datetime.datetime.combine(
                    recur_request.startdate_vol, recur_request.time_vol)
                while (new_reqdatetime.date() <= recur_request.enddate_vol):
                    duplicate.apply_async(
                        eta=new_reqdatetime - datetime.timedelta(days=3),
                        args=[
                            recur_request.sender, recur_request.recepient,
                            new_reqdatetime.date(), recur_request.time_vol,
                            recur_request.activity
                        ])
                    new_reqdatetime += datetime.timedelta(days=15)

            elif recur_request.frequency == "Monthly":
                new_reqdatetime = datetime.datetime.combine(
                    recur_request.startdate_vol, recur_request.time_vol)
                while (new_reqdatetime.date() <= recur_request.enddate_vol):
                    duplicate.apply_async(
                        eta=new_reqdatetime - datetime.timedelta(days=3),
                        args=[
                            recur_request.sender, recur_request.recepient,
                            new_reqdatetime.date(), recur_request.time_vol,
                            recur_request.activity
                        ])
                    new_reqdatetime += datetime.timedelta(days=30)

            return HttpResponse('Recurring Accepted',
                                content_type="application/text")

        elif dec == "Reject Recurring":
            Recurring_request.objects.filter(id=request.POST.get('id')).update(
                status=dec)
            return HttpResponse('Recurring Rejected',
                                content_type="application/text")

        elif dec == "Approved":
            Expenditure.objects.filter(ngo_id=NGOEmployeeProfile.objects.get(
                user_id=user_id.id).ngo_id).update(status=dec)
            return HttpResponse('Approved', content_type="application/text")
        elif dec == "Denied":
            Expenditure.objects.filter(ngo_id=NGOEmployeeProfile.objects.get(
                user_id=user_id.id).ngo_id).update(status=dec)
            return HttpResponse('Denied', content_type="application/text")

    else:
        context = RequestContext(request)

        profile_data['is_requests'] = True
        profile_data['is_member'] = False
        profile_data['is_ngo'] = False
        profile_data['is_user'] = False
        try:
            user_id = User.objects.get(username=request.session['username'])

            profile_data['is_member'] = True
        except:
            pass
        try:
            profile_id = NGOProfile.objects.get(ngo_id=user_id.id)
            profile_data['is_ngo'] = True
        except:
            try:
                profile_id = UserProfile.objects.get(user_id=user_id.id)
                profile_data['is_user'] = True
            except:
                pass

        if profile_data['is_user']:
            profile_data['name'] = user_id.first_name
            hours_count_requests = Volunteer_ngo_request.objects.filter(
                sender=user_id.id)
            profile_data['hours_vol'] = 0
            for req in hours_count_requests:
                profile_data['hours_vol'] += req.vol_duration
            context = RequestContext(request)
            return render_to_response('home/user/feed.html', profile_data,
                                      context)

        elif profile_data['is_ngo']:
            profile_data['name'] = user_id.first_name
            hours_count_requests = Volunteer_ngo_request.objects.filter(
                recepient=user_id.id)
            profile_data['hours_vol'] = 0
            for req in hours_count_requests:
                profile_data['hours_vol'] += req.vol_duration

            offline_vols = Offline_Vol.objects.filter(ngo_id=user_id.id)
            profile_data['offlinehours_vol'] = 0
            for req in offline_vols:
                profile_data['offlinehours_vol'] += req.hours_vol

            expenses = Expenditure.objects.filter(ngo_id=user_id.id)
            profile_data['total_expenditure'] = 0
            for req in expenses:
                profile_data['total_expenditure'] += req.amount

            donations = Offline_Donations.objects.filter(ngo_id=user_id.id)
            profile_data['total_donation'] = 0
            for req in donations:
                profile_data['total_donation'] += req.amount_donated

            context = RequestContext(request)
            return render_to_response('home/ngo/ngofeed.html', profile_data,
                                      context)
        else:
            profile_data['totalhours_vol'] = 0
            hours_count_requests = Volunteer_ngo_request.objects.filter()
            for req in hours_count_requests:
                profile_data['totalhours_vol'] += req.vol_duration
            profile_data['total_users'] = User.objects.filter().count()
            profile_data['total_ngos'] = NGOProfile.objects.filter().count()
            profile_data['user_form'] = UserForm()
            profile_data['array'] = list(NGOProfile.objects.filter())
        return render_to_response('home/home.html', profile_data, context)
Example #10
0
def register(request):
    registered = False
    if request.method == 'POST':
        user_input = request.POST.get('user', '')
        if user_input:
            otp = request.POST.get('otp', '')
            user_input = User.objects.filter(username=user_input)[0]
            if otp:
                if (otp == (UserOTP.objects.filter(
                        user=user_input).last()).otp):
                    user_input.is_active = True
                    user_input.save()
                    login(request, user_input)
                    messages.success(request, "Your account has been verified")
                    return HttpResponseRedirect(reverse('index'))
                else:
                    messages.error(request, "OTP mismatched")
                    return render(request, 'Registration/Register.html', {
                        'otp': True,
                        'user': user_input
                    })
            else:
                otp = genOTP()
                print(otp)
                UserOTP.objects.create(user=user_input, otp=otp)
                message = "Your OTP for Account - Validation is" + str(otp)
                send_mail(
                    'Validate your E-mail',
                    message,
                    '*****@*****.**',
                    [user_input.email],
                    fail_silently=False,
                )
                messages.success(request, "OTP Resent!")
                return render(request, 'Registration/Register.html', {
                    'otp': True,
                    'user': user_input
                })
        user_form = UserForm(data=request.POST)
        profile_form = UserProfileInfoForm(data=request.POST)
        curr_user = request.POST.get('username', '')
        user_existing = User.objects.filter(username=curr_user)
        if (len(user_existing)) and user_existing[0].is_active == False:
            user_existing[0].delete()
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save()
            user.set_password(user.password)
            user.is_active = False
            user.save()
            otp = genOTP()
            UserOTP.objects.create(user=user, otp=otp)
            message = "Your OTP for Account - Validation is" + str(otp)
            html_message = "<html><body><a href = 'http://www.facebook.com'>Click to Reset</a></body></html>"
            send_mail(
                'Validate your E-mail',
                message,
                '*****@*****.**',
                [user.email],
                fail_silently=False,
                html_message=html_message,
            )
            print("muskan")
            profile = profile_form.save(commit=False)
            profile.user = user
            if 'profile_pic' in request.FILES:
                profile.profile_pic = request.FILES['profile_pic']
            profile.save()
            print("Saved")
            registered = True
            print(otp)
            return render(request, 'Registration/Register.html', {
                'otp': True,
                'user': user
            })
        else:
            print(user_form.errors, profile_form.errors)
    else:
        user_form = UserForm()
        profile_form = UserProfileInfoForm()

    return render(
        request, 'Registration/Register.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
        })