class UserProfileView(TemplateView, MyPaginator): template_name = 'users/profile.html' def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and request.user.pk == int(kwargs['user_id']): self.user = request.user else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.wall_post_form = UserWallPostForm(request.POST or None) return super(UserProfileView, self).dispatch(request, *args, **kwargs) def get_context_data(self, **kwargs): context = super(UserProfileView, self).get_context_data(**kwargs) context['profile_user'] = self.user # context['wall_posts'] = self.get_wall_posts() context['wall_posts'] = self.get_paginator(self.user.wall_posts.select_related('author')) context['wall_post_form'] = self.wall_post_form if self.request.user != self.user: context['is_my_friend'] = User.friendship.are_friends(self.request.user, self.user) return context def post(self, request, *args, **kwargs): if self.wall_post_form.is_valid(): post = self.wall_post_form.save(commit=False) post.user = self.user post.author = request.user post.save() FriendInfo.friendinfom.add_post_wall(post.author.pk, post.user.pk, post) messages.success(request, _(u'Сообщение успешно опубликовано.')) return redirect(request.path) return self.get(request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and int( kwargs['user_id']) == request.user.pk: self.user = request.user self.is_my_profile = True else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.is_my_profile = False self.wallpost_form = UserWallPostForm(request.POST or None) return super(UserProfileView, self).dispatch(request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and request.user.pk == int(kwargs['user_id']): self.user = request.user else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.wall_post_form = UserWallPostForm(request.POST or None) return super(ProfileViews, self).dispatch(request, *args, **kwargs)
class UserProfileView(TemplateView): template_name = 'users/profile.html' @method_decorator(login_required) def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and int( kwargs['user_id']) == request.user.pk: self.user = request.user self.is_my_profile = True else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.is_my_profile = False self.wallpost_form = UserWallPostForm(request.POST or None) return super(UserProfileView, self).dispatch(request, *args, **kwargs) def get_wall_posts(self): paginator = Paginator(self.user.wall_posts.select_related('author'), 20) page = self.request.GET.get('page') try: wall_posts = paginator.page(page) except PageNotAnInteger: wall_posts = paginator.page(1) except EmptyPage: wall_posts = paginator.page(paginator.num_pages) return wall_posts def get_context_data(self, **kwargs): context = super(UserProfileView, self).get_context_data(**kwargs) context['is_my_profile'] = self.is_my_profile context['profile_user'] = self.user context['wall_posts'] = self.get_wall_posts() context['wallpost_form'] = self.wallpost_form if not self.is_my_profile: context['is_my_friend'] = User.friendship.are_friends( self.request.user, self.user) return context def post(self, request, *args, **kwargs): if self.wallpost_form.is_valid(): post = self.wallpost_form.save(commit=False) post.user = self.user post.author = request.user post.save() messages.success(request, _(u'Сообщение успешно добавлено.')) return redirect(request.path) return self.get(request, *args, **kwargs)
def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and int(kwargs['user_id']) == request.user.pk: self.user = request.user self.is_my_profile = True else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.is_my_profile = False self.wallpost_form = UserWallPostForm(request.POST or None) return super(UserProfileView, self).dispatch(request, *args, **kwargs)
class UserProfileView(TemplateView): template_name = 'users/profile.html' @method_decorator(login_required) def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and int(kwargs['user_id']) == request.user.pk: self.user = request.user self.is_my_profile = True else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.is_my_profile = False self.wallpost_form = UserWallPostForm(request.POST or None) return super(UserProfileView, self).dispatch(request, *args, **kwargs) def get_wall_posts(self): paginator = Paginator(self.user.wall_posts.select_related('author'), 20) page = self.request.GET.get('page') try: wall_posts = paginator.page(page) except PageNotAnInteger: wall_posts = paginator.page(1) except EmptyPage: wall_posts = paginator.page(paginator.num_pages) return wall_posts def get_context_data(self, **kwargs): context = super(UserProfileView, self).get_context_data(**kwargs) context['is_my_profile'] = self.is_my_profile context['profile_user'] = self.user context['wall_posts'] = self.get_wall_posts() context['wallpost_form'] = self.wallpost_form if not self.is_my_profile: context['is_my_friend'] = User.friendship.are_friends(self.request.user, self.user) return context def post(self, request, *args, **kwargs): if self.wallpost_form.is_valid(): post = self.wallpost_form.save(commit=False) post.user = self.user post.author = request.user post.save() messages.success(request, _(u'Сообщение успешно добавлено.')) return redirect(request.path) return self.get(request, *args, **kwargs)
class ProfileViews(TemplateView): template_name = 'users/profile.html' def dispatch(self, request, *args, **kwargs): if request.user.is_authenticated() and request.user.pk == int(kwargs['user_id']): self.user = request.user else: self.user = get_object_or_404(User, pk=kwargs['user_id']) self.wall_post_form = UserWallPostForm(request.POST or None) return super(ProfileViews, self).dispatch(request, *args, **kwargs) def get_wall_posts(self): paginator = Paginator(self.user.wall_posts.select_related('author'), 10) page = self.request.GET.get('page') try: wall_posts = paginator.page(page) except PageNotAnInteger: wall_posts = paginator.page(1) except EmptyPage: wall_posts = paginator.page(paginator.num_pages) return wall_posts def get_context_data(self, **kwargs): context = super(ProfileViews, self).get_context_data(**kwargs) context['profile_user'] = self.user context['wall_posts'] = self.get_wall_posts() context['wall_post_form'] = self.wall_post_form if self.request.user != self.user: context['is_my_friend'] = User.friendship.are_friends(self.request.user, self.user) return context def post(self, request, *args, **kwargs): if self.wall_post_form.is_valid(): post = self.wall_post_form.save(commit=False) post.user = self.user post.author = request.user post.save() messages.success(request, ugettext(u'Message success posted')) return redirect(request.path) return self.get(request, *args, **kwargs)