Example #1
0
def topic_edit(request, pk, topic_id,
        template_name='groups/topics/topic_form.html'):
    """
    Returns a group topic form page.

    Templates: ``groups/topics/topic_form.html``
    Context:
        form
            GroupTopicForm object
        topic
            GroupTopic object
    """
    group = get_object_or_404(Group, pk=pk)
    topic = get_object_or_404(GroupTopic, pk=topic_id, group=group, user=request.user)
    if request.method == 'POST':
        form = GroupTopicForm(request.POST, instance=topic)
        if form.is_valid():
            form.save()
            return redirect(request, topic)
    else:
        form = GroupTopicForm(instance=topic)
    return render(request, template_name, {
        'form': form,
        'group': group,
        'topic': topic
    })
Example #2
0
def message_remove(
        request,
        pk,
        topic_id,
        message_id,
        template_name='groups/messages/message_remove_confirm.html'):
    """
    Returns a message delete confirmation page.

    Templates: ``groups/messages/message_remove_confirm.html``
    Context:
        group
            Group object
        topic
            GroupTopic object
        message
            GroupMessage object
    """
    message = get_object_or_404(GroupMessage, pk=message_id, is_active=True)
    if request.method == 'POST':
        message.is_active = False
        message.save()
        return redirect(request, message.topic)
    return render(request, template_name, {
        'group': message.topic.group,
        'topic': message.topic,
        'message': message,
    })
Example #3
0
def group_create(request, template_name='groups/lzj-create-group.html'):
    """
    Returns a group form page.

    Templates: ``groups/group_form.html``
    Context:
        form
            GroupForm object
    """

    '''
    # 限制图片大小
    image=request.FILES['cion']
    if image.size > 500000:
        return HttpResponse(‘上传的图片大小不能超过500K’)
    '''
    if request.method == 'POST':

        form = GroupForm(request.POST, request.FILES)
        if form.is_valid():
            #验证图片大小
            image=request.FILES['icon']
            if image.size > 500000:
                form = GroupForm()
                size_error='上传的图片大小不能超过500K'
                return render(request, template_name, {'form': form,'size_error':size_error})
            
            group = form.save(commit=False)
            group.creator = request.user
            group.save()
            creator = GroupMember.objects.create(user=request.user, group=group, status=0)
            return redirect(request, group)
    else:
        form = GroupForm()
    return render(request, template_name, {'form': form})
Example #4
0
def message_create(request,
                   pk,
                   topic_id,
                   template_name='groups/messages/message_form.html'):
    """
    Returns a group message form.

    Templates: ``groups/messages/message_form.html``
    Context:
        group
            Group object
        topic
            GroupTopic object
        form
            GroupMessageForm object
    """
    group = get_object_or_404(Group, pk=pk)
    topic = get_object_or_404(GroupTopic, pk=topic_id, group=group)
    if request.method == 'POST':
        form = GroupMessageForm(request.POST)
        if form.is_valid():
            message = form.save(commit=False)
            message.user = request.user
            message.topic = topic
            message.save()
            return redirect(request, topic)
    else:
        form = GroupMessageForm()
    return render(request, template_name, {
        'group': group,
        'topic': topic,
        'form': form,
    })
Example #5
0
def login_view(request):
    error = 0
    form = MyLoginForm()
    if request.method == 'POST':
        form = MyLoginForm(request.POST)
        if form.is_valid():
            cd = form.cleaned_data
            user = auth.authenticate(username=cd['username'],
                                     password=cd['password'])
            if user is not None and user.is_active:
                auth.login(request, user)
                from mygroups.myshortcuts import redirect

                #return HttpResponseRedirect("/")
                return redirect(request)

            else:
                form = MyLoginForm(request.POST)
                error = 1

    return render_to_response("lzjlogin.html", {
        'form': form,
        'error': error,
    },
                              context_instance=RequestContext(request))
    '''
Example #6
0
def message_edit(request,
                 pk,
                 topic_id,
                 message_id,
                 template_name='groups/messages/message_form.html'):
    """
    Returns a group message edit form.

    Templates: ``groups/messages/message_form.html``
    Context:
        group
            Group object
        topic
            GroupTopic object
        message
            GroupMessage object
        form
            GroupMessageForm object
    """
    message = get_object_or_404(GroupMessage, pk=message_id, is_active=True)
    if request.method == 'POST':
        form = GroupMessageForm(request.POST, instance=message)
        if form.is_valid():
            form.save()
            return redirect(request, message.topic)
    else:
        form = GroupMessageForm(instance=message)
    return render(
        request, template_name, {
            'group': message.topic.group,
            'topic': message.topic,
            'message': message,
            'form': form,
        })
Example #7
0
def page_remove(request,
                slug,
                page_slug,
                template_name='groups/pages/page_remove_confirm.html'):
    group = get_object_or_404(Group, slug=slug)
    page = get_object_or_404(GroupPage, group=group, slug=page_slug)

    if request.method == 'POST':
        page.delete()
        return redirect(request, group)

    return render(request, template_name, {'group': group, 'page': page})
Example #8
0
def group_join(request, pk, template_name='groups/group_join_confirm.html'):
    """
    Returns a group join confirmation page.

    Templates: ``groups/group_join_confirm.html``
    Context:
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, is_active=True)
    if request.method == 'POST':
        membership = GroupMember(group=group, user=request.user)
        membership.save()
        return redirect(request, group)
    return render(request, template_name, {'group': group})
Example #9
0
def group_join(request, pk, template_name='groups/group_join_confirm.html'):
    """
    Returns a group join confirmation page.

    Templates: ``groups/group_join_confirm.html``
    Context:
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, is_active=True)
    if request.method == 'POST':
        membership = GroupMember(group=group, user=request.user)
        membership.save()
        return redirect(request, group)
    return render(request, template_name, {'group': group})
Example #10
0
def group_remove(request, pk, template_name='groups/group_remove_confirm.html'):
    """
    Returns a group delete confirmation page.

    Templates: ``groups/group_remove_confirm.html``
    Context:
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, creator=request.user)
    if request.method == 'POST':
        group.is_active = False
        group.save()
        return redirect(request, reverse('groups:groups'))
    return render(request, template_name, {'group': group})
Example #11
0
def topic_remove(request, pk, topic_id,
        template_name='groups/topics/topic_remove_confirm.html'):
    """
    Returns a group topic delete confirmation page.

    Templates: ``groups/topics/topic_remove_confirm.html``
    Context:
        topic
            GroupTopic object
    """
    group = get_object_or_404(Group, pk=pk)
    topic = get_object_or_404(GroupTopic, pk=topic_id, group=group, user=request.user)
    if request.method == 'POST':
        topic.is_active = False
        topic.save()
        return redirect(request, group)
    return render(request, template_name, {'topic': topic})
Example #12
0
def group_remove(request,
                 pk,
                 template_name='groups/group_remove_confirm.html'):
    """
    Returns a group delete confirmation page.

    Templates: ``groups/group_remove_confirm.html``
    Context:
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, creator=request.user)
    if request.method == 'POST':
        group.is_active = False
        group.save()
        return redirect(request, reverse('groups:groups'))
    return render(request, template_name, {'group': group})
Example #13
0
def page_edit(request,
              slug,
              page_slug,
              template_name='groups/pages/page_form.html'):
    group = get_object_or_404(Group, slug=slug)
    page = get_object_or_404(GroupPage, group=group, slug=page_slug)
    form = GroupPageForm(instance=page)

    if request.method == 'POST':
        form = GroupPageForm(request.POST, instance=page)
        if form.is_valid():
            page = form.save()
            return redirect(request, page)

    return render(request, template_name, {
        'group': group,
        'page': page,
        'form': form
    })
Example #14
0
def group_edit(request, pk, template_name='groups/wwj-groupchange-form.html'):
    """
    Returns a group form page.

    Templates: ``groups/group_form.html``
    Context:
        form
            GroupForm object
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, creator=request.user)
    form = GroupForm(instance=group)

    if request.method == 'POST':
        form = GroupForm(request.POST, request.FILES, instance=group)
        if form.is_valid():
            form.save()
            return redirect(request, group)
    return render(request, template_name, {'form': form, 'group': group})
Example #15
0
def group_create(request, template_name='groups/lzj-create-group.html'):
    """
    Returns a group form page.

    Templates: ``groups/group_form.html``
    Context:
        form
            GroupForm object
    """
    '''
    # 限制图片大小
    image=request.FILES['cion']
    if image.size > 500000:
        return HttpResponse(‘上传的图片大小不能超过500K’)
    '''
    if request.method == 'POST':

        form = GroupForm(request.POST, request.FILES)
        if form.is_valid():
            #验证图片大小
            image = request.FILES['icon']
            if image.size > 500000:
                form = GroupForm()
                size_error = '上传的图片大小不能超过500K'
                return render(request, template_name, {
                    'form': form,
                    'size_error': size_error
                })

            group = form.save(commit=False)
            group.creator = request.user
            group.save()
            creator = GroupMember.objects.create(user=request.user,
                                                 group=group,
                                                 status=0)
            return redirect(request, group)
    else:
        form = GroupForm()
    return render(request, template_name, {'form': form})
Example #16
0
def group_detail(request, pk, template_name='groups/lzj-group.html'):
    """
    Returns a group detail page.

    Templates: ``groups/group_detail.html``
    Context:
        group
            Group object
    """
    #分页
    group = get_object_or_404(Group, pk=pk, is_active=True)
    member_list = group.members.all()
    if group.invite_only and not GroupMember.objects.is_member(group, request.user):
        return redirect(request, reverse('groups:join', kwargs={'pk': group.pk})) 
    topic_list = group.topics.all()
    return render(request, template_name, {
        'group': group,
        'topic_list': topic_list,
        'member_list':member_list,
    })

    '''    
Example #17
0
def page_create(request, slug, template_name='groups/pages/page_form.html'):
    """
    Creates a group page.

    Templates: ``groups/pages/page_form.html``
    Context:
        group
            Group object
        form
            PageForm object
    """
    group = get_object_or_404(Group, slug=slug)
    form = GroupPageForm(initial={'group': group})

    if request.method == 'POST':
        form = GroupPageForm(request.POST)
        if form.is_valid():
            page = form.save(commit=False)
            page.group = group
            page.save()
            return redirect(request, page)

    return render(request, template_name, {'group': group, 'form': form})
Example #18
0
def group_edit(request, pk, template_name='groups/wwj-groupchange-form.html'):
    """
    Returns a group form page.

    Templates: ``groups/group_form.html``
    Context:
        form
            GroupForm object
        group
            Group object
    """
    group = get_object_or_404(Group, pk=pk, creator=request.user)
    form = GroupForm(instance=group)

    if request.method == 'POST':
        form = GroupForm(request.POST, request.FILES, instance=group)
        if form.is_valid():
            form.save()
            return redirect(request, group)
    return render(request, template_name, {
        'form': form,
        'group': group
    })
Example #19
0
def group_detail(request, pk, template_name='groups/lzj-group.html'):
    """
    Returns a group detail page.

    Templates: ``groups/group_detail.html``
    Context:
        group
            Group object
    """
    #分页
    group = get_object_or_404(Group, pk=pk, is_active=True)
    member_list = group.members.all()
    if group.invite_only and not GroupMember.objects.is_member(
            group, request.user):
        return redirect(request, reverse('groups:join',
                                         kwargs={'pk': group.pk}))
    topic_list = group.topics.all()
    return render(request, template_name, {
        'group': group,
        'topic_list': topic_list,
        'member_list': member_list,
    })
    '''    
Example #20
0
def topic_create(request, pk, template_name='groups/topics/lzj-create-topic.html'):
    """
    Returns a group topic form page.

    Templates: ``groups/topics/topic_form.html``
    Context:
        form
            GroupTopicForm object
    """
    group = get_object_or_404(Group, pk=pk)
    if request.method == 'POST':
        form = GroupTopicForm(request.POST)
        if form.is_valid():
            topic = form.save(commit=False)
            topic.user = request.user
            topic.group = group
            topic.save()
            return redirect(request, topic)
    else:
        form = GroupTopicForm()
    return render(request, template_name, {
        'form': form,
        'group': group
    })