def picture_add(request):
    context = {}
    if request.GET.get('event'):
        event = get_object_or_404(Event, id=request.GET.get('event'))
        result = can_edit_event(event,
                                request.user,
                                default='manage:picturegallery')
        if isinstance(result, http.HttpResponse):
            return result

        context['event'] = event
    if request.method == 'POST':
        if request.POST.get('remove'):
            # this is for when you change your mind
            size = request.POST['size']
            filename = request.POST['name']
            notes = filename_to_notes(filename)
            matches = Picture.objects.filter(notes=notes,
                                             size=int(size),
                                             modified_user=request.user)
            for picture in matches.order_by('-created')[:1]:
                picture.delete()
                return True
            return False

        form = forms.PictureForm(request.POST, request.FILES)
        if form.is_valid():
            picture = form.save(commit=False)
            picture.modified_user = request.user
            picture.save()
            return redirect('manage:picturegallery')
    else:
        form = forms.PictureForm()
    context['form'] = form
    return render(request, 'manage/picture_add.html', context)
def picture_edit(request, id):
    picture = get_object_or_404(Picture, id=id)
    context = {'picture': picture}

    if request.method == 'POST':
        form = forms.PictureForm(request.POST, request.FILES, instance=picture)
        if form.is_valid():
            picture = form.save()
            return redirect('manage:picturegallery')
    else:
        form = forms.PictureForm(instance=picture)
    context['form'] = form
    return render(request, 'manage/picture_edit.html', context)
Beispiel #3
0
def picture_edit(request, id):
    picture = get_object_or_404(Picture, id=id)
    context = {'picture': picture}

    if request.method == 'POST':
        form = forms.PictureForm(request.POST, request.FILES, instance=picture)
        if form.is_valid():
            picture = form.save()
            if picture.default_placeholder:
                # make all others NOT-default
                qs = (Picture.objects.exclude(id=picture.id).filter(
                    default_placeholder=True))
                for other in qs:
                    other.default_placeholder = False
                    other.save()
            return redirect('manage:picturegallery')
    else:
        form = forms.PictureForm(instance=picture)
    context['form'] = form
    return render(request, 'manage/picture_edit.html', context)