示例#1
0
def create_description(request):
    form = DescriptionForm()
    if (request.method == "POST"):
        form = DescriptionForm(request.POST)
        if (form.is_valid()):
            description = form.save(commit=False)
            if (request.user != description.morph.user):
                # TODO flag user
                messages.add_message(
                    request, messages.ERROR,
                    '<div class="error">You may only create descriptions for '
                    'your morphs!</div>')
                return render(request, "permission_denied.html", {})
            description.user = request.user
            description.save()
            form.save_m2m()
            si = StreamItem(
                action_type='C',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Description),
                object_id=description.id)
            si.save()
            si = StreamItem(
                action_type='DA',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Morph),
                object_id=description.morph.id)
            si.save()
            return HttpResponseRedirect(description.get_absolute_url())
    return render(request, "characters/description/edit.html", {'form': form})
示例#2
0
def edit_description(request, description_id):
    description = get_object_or_404(Description, id=description_id)
    form = DescriptionForm(instance=description)
    if (request.method == "POST"):
        form = DescriptionForm(request.POST, instance=description)
        if (form.is_valid()):
            form.save()
            si = StreamItem(
                action_type='U',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Description),
                object_id=description_id)
            si.save()
            return HttpResponseRedirect(description.get_absolute_url())
    return render(request, 'characters/description/edit.html', {'form': form})
示例#3
0
def create_description(request):
    form = DescriptionForm()
    if (request.method == "POST"):
        form = DescriptionForm(request.POST)
        if (form.is_valid()):
            description = form.save(commit=False)
            if (request.user != description.morph.user):
                # TODO flag user
                messages.add_message(
                    request, messages.ERROR,
                    '<div class="error">You may only create descriptions for '
                    'your morphs!</div>')
                return render(request, "permission_denied.html", {})
            description.user = request.user
            description.save()
            form.save_m2m()
            si = StreamItem(
                action_type='C',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Description),
                object_id=description.id)
            si.save()
            si = StreamItem(
                action_type='DA',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Morph),
                object_id=description.morph.id)
            si.save()
            return HttpResponseRedirect(description.get_absolute_url())
    return render(request, "characters/description/edit.html", {'form': form})
示例#4
0
def edit_description(request, description_id):
    description = get_object_or_404(Description, id=description_id)
    form = DescriptionForm(instance=description)
    if (request.method == "POST"):
        form = DescriptionForm(request.POST, instance=description)
        if (form.is_valid()):
            form.save()
            si = StreamItem(
                action_type='U',
                user=request.user,
                content_type=ContentType.objects.get_for_model(Description),
                object_id=description_id)
            si.save()
            return HttpResponseRedirect(description.get_absolute_url())
    return render(request, 'characters/description/edit.html', {'form': form})