Beispiel #1
0
 def get(self, request, *args, **kwargs):
     if request.user.is_authenticated and request.user.is_active:
         request.session['django_timezone'] = time_zone(request)
         request.user.profile.timezone = time_zone(request)
         u_form = UserUpdateForm(instance=request.user)
         p_form = ProfileUpdateForm(instance=request.user.profile)
         summary = request.user.profile.summary
         gender = request.user.profile.gender
         joined_date = request.user.profile.reg_date
         threads_number = request.user.userevaluation.number_of_threads_created
         posts_number = UserEvaluation.objects.get(
             user=request.user).number_of_posts
         profile_views = UserEvaluation.objects.get(
             user=request.user).profile_views
         userevaluation = UserEvaluation.objects.get(user=request.user)
         try:
             most_recent_thread = Thread.objects.filter(
                 author=request.user).first()
             if len(most_recent_thread.post_set.all().first().content) > 50:
                 summary_of_last_reply = most_recent_thread.post_set.all(
                 ).first().content[:50]
             else:
                 summary_of_last_reply = most_recent_thread.post_set.all(
                 ).first().content
         except (exceptions.ObjectDoesNotExist, AttributeError):
             most_recent_thread = ""
             summary_of_last_reply = ""
         except TypeError:
             most_recent_thread = Thread.objects.filter(
                 author=request.user).first()
             summary_of_last_reply = ""
         try:
             last_post = request.user.post_set.all().last()
             last_post_summary = last_post.content[:80]
         except (TypeError, AttributeError):
             last_post = ""
             last_post_summary = ""
         context = {
             'joined_date': joined_date,
             'gender': gender,
             'summary': summary,
             'u_form': u_form,
             'p_form': p_form,
             'threads_number': threads_number,
             'posts_number': posts_number,
             'profile_views': profile_views,
             'user_evaluation': userevaluation,
             'most_recent_thread': most_recent_thread,
             'summary_of_last_reply': summary_of_last_reply,
             'last_post': last_post,
             'last_post_summary': last_post_summary,
         }
         return render(request, self.template_name, context=context)
     else:
         return HttpResponseRedirect(reverse('user_profiles:login'))
 def post(self, request, *args, **kwargs):
     username = request.POST['username']
     password = request.POST['password']
     user = authenticate(request, username=username, password=password)
     if user is not None:
         if user.is_active:
             login(request, user)
             request.session['django_timezone'] = time_zone(request)
             user.profile.timezone = time_zone(request)
             return HttpResponseRedirect(reverse(self.redirect_field_name))
         else:
             return HttpResponse("Account has been closed")
     user_form = self.form_class()
     context = {'user_form': user_form}
     return render(request, self.template_name, context)
Beispiel #3
0
 def post(self, request, *args, **kwargs):
     user_form = self.form_class(request.POST)
     context = {'user_form': user_form, 'timezones': pytz.common_timezones}
     User = get_user_model()
     if user_form.is_valid():
         new_user = user_form.save()
         new_user.refresh_from_db()
         new_user.save()
         username = user_form.cleaned_data.get('username')
         password = user_form.cleaned_data.get('password1')
         country = user_form.cleaned_data.get('country')
         request.session['django_timezone'] = time_zone(request)
         user = authenticate(request, username=username, password=password)
         user.profile.timezone = request.session['django_timezone']
         login(request, user)
         return HttpResponseRedirect(reverse('user_profiles:profile'))
     return render(request, self.template_name, context)