in core/views.py [0:0]
def signup(request):
if request.method == 'POST':
username = request.POST.get('username', False)
email = request.POST.get('email', False)
password = request.POST.get('password', False)
password2 = request.POST.get('password2', False)
if password == password2:
if User.objects.filter(email=email).exists():
messages.info(request, 'Email Taken')
return redirect('signup')
elif User.objects.filter(username=username).exists():
messages.info(request, 'Username Taken')
return redirect('signup')
else:
user = User.objects.create_user(username=username, email=email, password=password)
user.save()
hash_userid = hash_function(username)
upload_blob_from_memory(GS_BUCKET_NAME, "media/blank-profile-picture.png", str(hash_userid) + "/profile/profile.png")
blob = bucket.get_blob(str(hash_userid) + "/profile/profile.png")
metadata = {'userid': hash_userid, username: username}
blob.metadata = metadata
blob.patch()
#log user in and redirect to settings page
user_login = auth.authenticate(username=username, password=password)
auth.login(request, user_login)
#create a Profile object for the new user
image_file_url = "https://storage.cloud.google.com/" + GS_BUCKET_NAME + "/" + str(hash_userid) + "/profile/profile.png"
user_model = User.objects.get(username=username)
new_profile = ProfileGCP.objects.create(user=user_model, id_user=user_model.id, profileimg=image_file_url)
new_profile.save()
return render(request, 'setting.html', {"user_id": hash_userid})
else:
messages.info(request, 'Password Not Matching')
return redirect('signup')
else:
return render(request, 'signup.html')