예제 #1
0
파일: views.py 프로젝트: pbehrens/testing
def edit_existing_schedule(request, schedule_pk):
    if not request.user.has_perm(Schedule._meta.get_change_permission()):
        raise PermissionDenied
    schedule = get_object_or_404(Schedule, pk=schedule_pk)
    spot_dicts = spot_dicts_from_schedule(schedule)
    request.session["spots"] = spot_dicts
    return HttpResponseRedirect(reverse("admin:edit_schedule", kwargs={"schedule_pk": schedule_pk}))
예제 #2
0
파일: views.py 프로젝트: pbehrens/testing
def generate_schedule(request, schedule_pk):
    if not request.user.has_perm(Schedule._meta.get_change_permission()):
        raise PermissionDenied
    response = None
    generate_form = GenerateScheduleForm()
    copy_form = CopyScheduleForm()
    try:
        if request.method == "POST":
            generate_form = GenerateScheduleForm(request.POST)
            copy_form = CopyScheduleForm(request.POST)
            spot_dicts = None
            if generate_form.is_valid() and generate_form.cleaned_data["increment"]:
                dj = generate_form.cleaned_data["default_dj"]
                if dj:
                    dj = DJ.objects.get(pk=dj)
                else:
                    dj = None
                show = generate_form.cleaned_data["default_show"]
                if show:
                    show = Show.objects.get(pk=show)
                else:
                    show = None
                spot_dicts = spot_generate_dicts(int(generate_form.cleaned_data["increment"]), dj, show)
            elif copy_form.is_valid():
                schedule = Schedule.objects.get(pk=generate_form["schedule"])
                spot_dicts = spot_dicts_from_schedule(schedule, {"pk": -1})
            request.session["spots"] = spot_dicts
            return HttpResponseRedirect(reverse("admin:edit_schedule", kwargs={"schedule_pk": schedule_pk}))
    except Schedule.DoesNotExist:
        pass
    except DJ.DoesNotExist:
        pass
    except Show.DoesNotExist:
        pass
    if response is None:
        context = {
            "schedule": get_object_or_404(Schedule, pk=schedule_pk),
            "generate_form": generate_form,
            "copy_form": copy_form,
        }
        response = render_to_response("station/admin/generate.html", context, context_instance=RequestContext(request))
    return response