def post(self, request): serializer = RegisterSerializer(data=request.data) data = {} if serializer.is_valid(): email = request.data['email'] username = request.data['username'] if email != '': email_list = User.objects.filter(email=email) username = User.objects.filter(username=username) if not email_list and not username: user = serializer.save() profile = Profile(user=user, bio='', photo_url='', location='', phone_number='') profile.save() data['response'] = 'Successfully registered!' return Response(data, status=status.HTTP_200_OK) else: data[ 'response'] = 'User with that email or username already exists.' return Response( data, status=status.HTTP_500_INTERNAL_SERVER_ERROR) else: data = serializer.errors return Response(data, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def save(self): profile = Profile( user=self.validated_data('user'), bio=self.validated_data('bio'), photo_url=self.validated_data('photo_url'), location=self.validated_data('location'), phone_number=self.validated_data('phone_number'), ) profile.save()
def register(request): if request.method == 'POST': form = UserRegistrationForm(request.POST) if form.is_valid(): userObj = form.cleaned_data username = userObj['username'] email_address = userObj['email'] password = userObj['password'] User = get_user_model() if not (User.objects.filter(username=username).exists() or User.objects.filter(email=email_address).exists()): User.objects.create_user(username, email_address, password) user = authenticate(username=username, password=password) auth_login(request, user) profile = Profile(user=User.objects.get(username=username), balance=0, email=email_address) temp_slug = uuid.uuid4().hex profile.verify_email_slug = temp_slug profile.save() send_mail( 'Please Verify your account', 'You have just signed up on SMMPanel.guru. Please confirm your Email ID by clicking on https://smmpanel.guru/verify-email/' + temp_slug, '*****@*****.**', [email_address], fail_silently=False, ) send_mail( 'New sign up on SMMPanel.guru', email_address + ' just signed up on SMMPanel.guru. A moment of joy, more and more people are joining SMMPanel.guru.', '*****@*****.**', ['*****@*****.**'], fail_silently=False, ) return HttpResponseRedirect('/dashboard') else: messages.add_message( request, messages.ERROR, 'Looks like a username with that email or password already exists.' ) return HttpResponseRedirect('/') return HttpResponseRedirect('/')
def create_profile(request): if request.method == 'POST': profile_create = Profile( username = User.objects.get(username=request.user.username), photo = request.FILES['photo'], nickname = request.POST['nickname'], telegram = request.POST['telegram'], skype = request.POST['skype'], hipchat = request.POST['hipchat'], phone = request.POST['phone'], about = request.POST['about'], agent = True, ) profile_create.save() system_notify("Bem vindo a Valhalla!","/about", request) return redirect('/home', status=200) else: return HttpResponse('Unauthorized', status=401)
def profile(request, email): # Create your views here. # If this is a POST request then process the Form data # user=Student.objects.filter(student_email__exact=email) profile = Profile() # jr=Joiners() if request.method == 'POST': # Create a form instance and populate it with data from the request (binding): form = ProfileForm(request.POST) # Check if the form is valid: if form.is_valid(): # process the data in form.cleaned_data as required (here we just write it to the model due_back field) profile.test_uid = form.cleaned_data['test_uid'] # jr.test_uid=profile.test_uid profile.test_score = 0 profile.ques_used = 0 # profile.ques_id=1 profile.student_emailid = email # jr.save() profile.save() zero = 0 zero = str(zero) # redirect to a new URL: return HttpResponseRedirect('/test/%s/%s/%s' % (email, profile.test_uid, zero)) # If this is a GET (or any other method) create the default form. else: form = ProfileForm() context = {'form': form, 'email': email, 'Profile': profile} return render(request, 'dashboard.html', context)
def exam(request, email, testno, qno): qno = int(qno) pr = list( Profile.objects.filter(test_uid__exact=testno, student_emailid__exact=email, ques_id__exact=qno)) mcq = Mcq.objects.filter(test_no__exact=testno) total_ques = mcq.count() if request.method == 'POST': form = TestForm(request.POST) if form.is_valid(): one = form.cleaned_data['ans1'] two = form.cleaned_data['ans2'] three = form.cleaned_data['ans3'] four = form.cleaned_data['ans4'] # jr=list(Joiners.objects.filter(test_uid__exact=testno,student_emailid__exact=email,ques_id__exact=qno)) # if len(jr)==0: # jrr=Joiners() # jrr.ques_used=0 # jrr.student_emailid=email # jrr.ques_id=qno # jrr.test_uid=testno # jrr.save() # jr.append(jrr) if one == mcq[qno].ans1 and two == mcq[qno].ans2 and three == mcq[ qno].ans3 and four == mcq[qno].ans4 and pr[ 0].ques_used == 0: # qno=str(qno) # qno=int(qno) pr[0].test_score = pr[0].test_score + mcq[qno].points pr[0].ques_used = 1 # jr[0].save() # qno=str(qno) # request.session[qno]=True # request.session.modified=True pr[0].save() # pr[0].save() qno = int(qno) qno = qno + 1 qno = str(qno) pro = Profile() pro.test_uid = testno pro.ques_used = 0 pro.test_score = 0 pro.ques_id = qno pro.student_emailid = email pro.save() return HttpResponseRedirect('/test/%s/%s/%s' % (email, testno, qno)) else: form = TestForm() if qno < total_ques: context = {'form': form, 'Mcq': mcq[qno], 'Profile': pr[0]} return render(request, 'ques.html', context) else: pr = list( Profile.objects.filter(test_uid__exact=testno, student_emailid__exact=email)) score = 0 for i in pr: score += int(i.test_score) for i in range(len(pr)): pr[i].test_score = score pr[i].save() context = { 'form': form, 'Mcq': mcq[qno - 1], 'Profile': pr[0], 'score': score } return render(request, 'result.html', context)
def update_profile(request): id = request.user.id profile = Profile.objects.filter(user=request.user).first() print(profile) if request.method == 'POST': if profile: print("--------------") else: profile = Profile() firstname = request.POST.get("fname") fathername = request.POST.get("lname") aging = request.POST.get("age") sex = request.POST.get("gender") # education inslist = request.POST.getlist("Institute[]") boardlist = request.POST.getlist("Board_Uni[]") degreelist = request.POST.getlist("Degree[]") startingdatelist = request.POST.getlist("PassingYear[]") endingdatelist = request.POST.getlist("enddate[]") resultlist = request.POST.getlist("Result[]") percentagelist = request.POST.getlist("Number_CGPA[]") # Experience orglist = request.POST.getlist("Organization[]") pdlist = request.POST.getlist("Previous_Designation[]") fromdlist = request.POST.getlist("FromDate[]") todlist = request.POST.getlist("ToDate[]") reslist = request.POST.getlist("Responsibility[]") # skiils skilllist = request.POST.getlist('Skills[]') # contact mail = request.POST.get('email') number1 = request.POST.get('contact1') number2 = request.POST.get('contact2') linked = request.POST.get('linkedin') location = request.POST.get('address') profile.name = firstname profile.fname = fathername profile.age = aging profile.gender = sex profile.email = mail profile.contactno1 = number1 profile.contactno2 = number2 profile.linkedin = linked profile.address = location profile.save() profile.user.add(request.user) profile.save() # cont = ProfileContact(email=mail, contactno1=number1, contactno2=number2, linkedin=linked, address=location) # cont.save() # profile.contact.add(cont) # profile.save() profile.education.clear() # object = Employee.objects.all() for i in range(len(inslist)): print(i) edu = ProfileEducation(institute=inslist[i], board=boardlist[i], degree=degreelist[i], startingdate=startingdatelist[i], endingdate=endingdatelist[i], result=resultlist[i], percentage=percentagelist[i]) edu.save() profile.education.add(edu) profile.save() profile.experience.clear() for i in range(len(orglist)): exp = ProfileExperience(organization=orglist[i], previousDesignation=pdlist[i], startingDate=fromdlist[i], endingDate=todlist[i], responsibilities=reslist[i]) exp.save() profile.experience.add(exp) profile.save() profile.skills.clear() for i in range(len(skilllist)): skl = ProfileSkills(skills=skilllist[i]) skl.save() profile.skills.add(skl) profile.save() # # detail = Profile.objects.filter(user=request.user).first() # return render(request, 'dashboard/profile_view.html', {'id': id, 'detail': detail}) request.method = 'GET' return newProfile(request) return render(request, 'dashboard/profile_update.html', {'profile': profile, 'id': id})