Beispiel #1
0
def edit(request, project):
    submits = {
        'Save and return to dashboard': ('dashboard', None),
        'Save and continue to image upload': ('upload', [project.id],),
    }

    # If the user isn't the projects owner, show a 403 (forbidden)
    if not project.is_owned_by(request.user):
        raise PermissionDenied

    if request.method == 'POST':
        form = ProjectForm(request.POST, instance=project)

        if form.is_valid():
            form.save()

            # Figure out where to go next
            submit_value = request.POST.get('action', '')
            redirect_view, redirect_args = submits.get(submit_value, ('dashboard', None))
            return redirect(reverse(redirect_view, args=redirect_args))
    else:
        form = ProjectForm(instance=project)

    data = {
        'project': project,
        'form': form,
        'submits': submits,
    }

    return ('Edit', data)
Beispiel #2
0
def create(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            project = form.save(commit=False)
            project.creator = request.user.get_profile()
            project.save()
            return redirect('upload', project_id=project.id)
    else:
        form = ProjectForm()

    data = {
        'form': form,
        'title': 'Create a project',
    }

    return render(request, 'projects/create.html', data)
Beispiel #3
0
def edit(request, project):
    submits = {
        'Save and return to dashboard': ('dashboard', None),
        'Save and continue to image upload': (
            'upload',
            [project.id],
        ),
    }

    # If the user isn't the projects owner, show a 403 (forbidden)
    if not project.is_owned_by(request.user):
        raise PermissionDenied

    if request.method == 'POST':
        form = ProjectForm(request.POST, instance=project)

        if form.is_valid():
            form.save()

            # Figure out where to go next
            submit_value = request.POST.get('action', '')
            redirect_view, redirect_args = submits.get(submit_value,
                                                       ('dashboard', None))
            return redirect(reverse(redirect_view, args=redirect_args))
    else:
        form = ProjectForm(instance=project)

    data = {
        'project': project,
        'form': form,
        'submits': submits,
    }

    return ('Edit', data)
Beispiel #4
0
def create(request):
    if request.method == 'POST':
        form = ProjectForm(request.POST)
        if form.is_valid():
            project = form.save(commit=False)
            project.creator = request.user.get_profile()
            project.save()
            return redirect('upload', project_id=project.id)
    else:
        form = ProjectForm()

    data = {
        'form': form,
        'title': 'Create a project',
    }

    return render(request, 'projects/create.html', data)