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)
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)