예제 #1
0
def edit_room(request, room_title):
    room = get_object_or_404(Room, title=room_title)
    page_name = "Edit {0}".format(room_title)
    if room.unofficial_name:
        page_name += " ({0})".format(room.unofficial_name)
    form = RoomForm(
        request.POST or None,
        instance=room,
        prefix="room",
    )

    resident_formset = ResidentFormSet(
        request.POST or None,
        prefix="residents",
        room=room,
    )

    if form.is_valid() and resident_formset.is_valid():
        room = form.save()
        resident_formset.save()
        messages.add_message(request, messages.INFO, "Updated room.")
        return HttpResponseRedirect(
            reverse('rooms:view', kwargs={'room_title': room.title}), )

    return render_to_response('add_room.html', {
        'page_name': page_name,
        'room': room,
        'form': form,
        "resident_formset": resident_formset,
        'editing': True,
    },
                              context_instance=RequestContext(request))
예제 #2
0
파일: views.py 프로젝트: knagra/farnsworth
def edit_room(request, room_title):
    room = get_object_or_404(Room, title=room_title)
    page_name = "Edit {0}".format(room_title)
    if room.unofficial_name:
        page_name += " ({0})".format(room.unofficial_name)

    form = RoomForm(
        request.POST or None,
        instance=room,
        prefix="room",
    )

    resident_formset = ResidentFormSet(
        request.POST or None,
        prefix="residents",
        room=room,
    )

    if form.is_valid() and resident_formset.is_valid():
        room = form.save()
        resident_formset.save()
        messages.add_message(request, messages.INFO, "Updated room.")
        return HttpResponseRedirect(
            reverse('rooms:view', kwargs={'room_title': room.title}),
        )

    return render_to_response('add_room.html', {
        'page_name': page_name,
        'room': room,
        'form': form,
        "resident_formset": resident_formset,
        'editing': True,
    }, context_instance=RequestContext(request))
예제 #3
0
def create(request):
    context = {}

    form = RoomForm(request.POST or None)
    if form.is_valid():
        form.save()
        return redirect('/index/')
    context['form'] = form
    return render(request, 'room/create.html', context)
예제 #4
0
    def post(self, request):
        form = RoomForm(request.POST)
        if form.is_valid():
            text = form.cleaned_data['post']
            form = RoomForm()
            return redirect('room-view')

        args = {'form': form, 'text': text}
        return render(request, self.template_name, args)
예제 #5
0
파일: views.py 프로젝트: nherson/farnsworth
def add_room(request):
    page_name = "Add Room"
    form = RoomForm(request.POST or None)

    if form.is_valid():
        form.save()
        return HttpResponseRedirect(reverse('rooms:list'))

    return render_to_response('add_room.html', {
        'page_name': page_name,
        'form': form,
        }, context_instance=RequestContext(request))
예제 #6
0
def add_room(request):
    page_name = "Add Room"
    form = RoomForm(request.POST or None)

    if form.is_valid():
        form.save()
        messages.add_message(request, messages.INFO, "Added room.")
        return HttpResponseRedirect(reverse('rooms:list'))

    return render_to_response('add_room.html', {
        'page_name': page_name,
        'form': form,
    },
                              context_instance=RequestContext(request))
예제 #7
0
def room(request):
    form_subscriber = forms.SubscriberForm(request.POST or None)
    if request.method == 'POST' and form_subscriber.is_valid():
        form_subscriber.save()
    object_room = Rooms.objects.filter(is_active=True)
    form_room = RoomForm(request.POST or None,
                         request.FILES,
                         initial={"object_room": object_room})
    if request.method == 'POST' and form_room.is_valid():
        form_room.save()
        #return HttpResponseRedirect(reverse('rooms', kwargs={}))
    return render(
        request, 'rooms.html', {
            'variable_room': object_room,
            'form_room': form_room,
            'form_subscriber': form_subscriber
        })
예제 #8
0
def edit(request, room_id):
    new_room = RoomForm(request.POST or None)
    if new_room.is_valid():
        update = Room.objects.get(id=room_id)
        update.name = request.POST.get('name')
        update.description = request.POST.get('description')
        update.width = request.POST.get('width')
        update.length = request.POST.get('length')
        update.save()
        return redirect('/index/')
    room = Room.objects.get(id=room_id)
    room_data = {
        'name': room.name,
        'description': room.description,
        'width': room.width,
        'length': room.length
    }
    form = RoomForm(initial=room_data)
    return render(request, 'room/edit.html', {'form': form})
예제 #9
0
def new_room(request):
    if request.method == 'POST':
        form = RoomForm(request.POST)
        if form.is_valid():
            form.save()
        else:
            context = {'room_form': form}
            return render(request, 'rooms/new_room.html', context)
        return redirect(
            reverse('rooms:room',
                    kwargs={'room_name': form.cleaned_data['name']}))
    else:
        form = RoomForm()
        context = {'room_form': form}
        return render(request, 'rooms/new_room.html', context)
예제 #10
0
 def get_form(self, obj=None):
     """Get the form to create or update a room."""
     return RoomForm(obj=obj, owner=current_user)
예제 #11
0
def roomDetails(request, room_id):
    if request.method == 'POST':
        if room_id == 0:
            roomForm = RoomForm(request.POST)
        else:
            room = Room.objects.get(pk=room_id)
            roomForm = RoomForm(request.POST, instance=room)

        if roomForm.is_valid():
            # adds tag for room name if it doesn't exist
            nameTag = Tag.objects.update_or_create(
                text=roomForm.cleaned_data['name'])
            roomForm.save()
            # adds a new journal entry on new room creation
            newRoomText = "Created a new room named " + roomForm.cleaned_data['name']
            newRoomTag = Tag.objects.get(text=roomForm.cleaned_data['name'])
            tags = [newRoomTag]
            Journal.createJournalEntry(newRoomText, request.user, tags)
            return redirect('rooms')

    else:
        if room_id == 0:
            roomForm = RoomForm()
        else:
            room = Room.objects.get(pk=room_id)
            roomForm = RoomForm(instance=room)

    context = {
        'roomForm': roomForm,
        'nbar': 'rooms'
    }

    return render(request, 'rooms/room.html', context)
예제 #12
0
 def get(self, request):
     form = RoomForm()
     return render(request, self.template_name, {'form': form})