Exemple #1
0
def delete_pad(request, group_name, pad_name):
    # test if user is in group
    if not request.user.groups.filter(name=group_name).exists():
        return TemplateResponse(request, 'etherpad/forbidden.html', {
            'group_name': group_name,
        }, status=403)
    # test if user is admin in the group
    group = request.user.groups.filter(name=group_name).all()[0]
    if not group.properties.admins.filter(pk=request.user.pk):
        return TemplateResponse(request, 'etherpad/forbidden.html', {
            'group_name': group_name,
        }, status=403)

    if request.method == 'POST':
        form = DeleteEtherpadForm(request.user, request.POST)
        if form.is_valid():
            ep = Etherpad()
            ep.delete_pad('{0}${1}'.format(
                ep.get_group_id(group_name),
                pad_name))
            return redirect('ep_index')

    form = DeleteEtherpadForm(request.user)
    return TemplateResponse(request, 'etherpad/delete_pad.html', {
        'form': form,
        'group': group_name,
        'pad': pad_name,
    })
Exemple #2
0
def delete_pad(request, group_name, pad_name):
    # test if user is in group
    if not request.user.groups.filter(name=group_name).exists():
        return TemplateResponse(request,
                                'etherpad/forbidden-notingroup.html', {
                                    'group_name': group_name,
                                },
                                status=403)
    # test if user is admin in the group
    group = request.user.groups.filter(name=group_name).all()[0]
    if not group.properties.admins.filter(pk=request.user.pk):
        return TemplateResponse(request,
                                'etherpad/forbidden-notadmin.html', {
                                    'group_name': group_name,
                                },
                                status=403)

    if request.method == 'POST':
        form = DeleteEtherpadForm(request.user, request.POST)
        if form.is_valid():
            ep = Etherpad()
            ep.delete_pad('{0}${1}'.format(ep.get_group_id(group_name),
                                           pad_name))

            # delete pinned pads
            PinnedEtherpad.objects.filter(group_name=group,
                                          pad_name=pad_name).delete()

            return redirect('ep_index')

    form = DeleteEtherpadForm(request.user)
    return TemplateResponse(request, 'etherpad/delete_pad.html', {
        'form': form,
        'group': group_name,
        'pad': pad_name,
    })
Exemple #3
0
def _delete_group_ep(sender, group, **kwargs):
    ep = Etherpad()
    pads = ep.get_group_pads(group.name)
    for pad in pads:
        ep.delete_pad(pad)
    ep.delete_group(group.name)
Exemple #4
0
def _delete_group_ep(sender, group, **kwargs):
    ep = Etherpad()
    pads = ep.get_group_pads(group.name)
    for pad in pads:
        ep.delete_pad(pad)
    ep.delete_group(group.name)