Advertisement
abhigya

Untitled

Jun 13th, 2021
528
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.87 KB | None | 0 0
  1. class register(View):
  2.     template = "network/register"
  3.     success_url = "network:index"
  4.  
  5.     def get(self, request, type):
  6.         if type == "current":
  7.             form = StudnetForm()
  8.         elif type == "alum":
  9.             form = AlumniForm()
  10.         return render(request, self.template, {
  11.             "form": form,
  12.             "message": "Please Provide your five digit roll Number",
  13.         })
  14.  
  15.     def post(self, request, type):
  16.         if type == "current":
  17.             form = StudentForm(request.POST)
  18.             if form.is_valid():
  19.                 #'first_name', 'last_name', 'year', 'branch', 'rollNo', 'password'
  20.                 first_name = form.cleaned_data["first_name"]
  21.                 last_name = form.cleaned_data["last_name"]
  22.                 year = form.cleaned_data["year"]
  23.                 branch = form.cleaned_data["branch"]
  24.                 rollNo = form.cleaned_data["rollNo"]
  25.                 email = rollNo + '@iiitu.ac.in'
  26.                 password = form.cleaned_data["password"]
  27.             else:
  28.                 return render(request, self.template, {
  29.                     "message": "You didn't provide all the fields",
  30.                     "form": StudentForm()
  31.                 })
  32.             try:
  33.                 user = Person.objects.create_user(first_name, last_name, email, rollNo, password)
  34.                 user.set_password(password)
  35.                 user.branch = branch
  36.                 user.save()
  37.  
  38.             except IntegrityError:
  39.                 return render(request, "events/register.html", {
  40.                         "message": "User already exists",
  41.                         "form": StudentForm()
  42.                     })
  43.  
  44.             login(request, user)
  45.             return HttpResponseRedirect(reverse(self.success_url))
  46.         if type == "alum":
  47.             form = AlumniForm(request.POST)
  48.             if form.is_valid():
  49.                 first_name = form.cleaned_data["first_name"]
  50.                 last_name = form.cleaned_data["last_name"]
  51.                 batch = form.cleaned_data["batch"]
  52.                 branch = form.cleaned_data["branch"]
  53.                 rollNo = form.cleaned_data["rollNo"]
  54.                 email = rollNo + '@college.ac.in'
  55.                 compnay = form.cleaned_data["company"]
  56.                 password = form.cleaned_data["password"]
  57.                 facebook_profile = form.cleaned_data["facebook_profile"]
  58.                 instagram_profile = form.cleaned_data["instagram_profile"]
  59.                 linkedin_profile = form.cleaned_data["linkedin_profile"]
  60.                 try:
  61.                     person = Person.objects.create_user(first_name, last_name, email, rollNo, password)
  62.                     person.branch = branch
  63.                     person.linkedin_profile = linkedin_profile
  64.                     person.instagram_profile = instagram_profile
  65.                     person.facebook_profile = facebook_profile
  66.                     person.save()
  67.                 except IntegrityError:
  68.                     return render(request, "network/register.html", {
  69.                         'message': "An entry for this roll number already exists",
  70.                         "form": AlumniForm(),
  71.                     })
  72.  
  73.                 image = form.cleaned_data["image"]
  74.                 data = form.cleaned_data["data"]
  75.                 text = '#first_name last_name  \n' + '**Works at**: [{company}](company/{company})  \n  \n'
  76.                 text = text + 'Connect with {first_name} on [Linkedin]({linkedin_profile}), [Instagram]({instagram_profile}) or [Facebook]({facebook_profile})  \n  \n'
  77.                 text = text + data
  78.                 util.save_entry(rollNo, text, "people")
  79.                 entry = util.get_entry(rollNo, "companies")
  80.                 md = markdown2.Markdown()
  81.                 entry = md.convert(entry)
  82.                 return HttpResponseRedirect(reverse('network:page', args=(type, rollNo)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement