def update_student_record(request, username, student_record_id, object=None): other_user = User.objects.get(username=username) if object: student_record = object else: student_record = get_object_or_404(StudentRecord, id=student_record_id, user=other_user) form = StudentRecordForm(request.POST, instance=student_record) # if form saves, redirect to profile_detail if form.is_valid(): student_record = form.save(commit=False) student_record.user = other_user student_record.save() return HttpResponseRedirect(reverse('profile_detail', kwargs={'username': other_user.username })) # if save fails, go back to edit_resource page else: return render_to_response( 'profiles/edit_student_record.html', { 'form': form, 'student_record': student_record, 'other_user': other_user, }, context_instance=RequestContext(request) )
def update_student_record(request, username, student_record_id, object=None): other_user = User.objects.get(username=username) if object: student_record = object else: student_record = get_object_or_404(StudentRecord, id=student_record_id, user=other_user) form = StudentRecordForm(request.POST, instance=student_record) # if form saves, redirect to profile_detail if form.is_valid(): student_record = form.save(commit=False) student_record.user = other_user student_record.save() return HttpResponseRedirect( reverse('profile_detail', kwargs={'username': other_user.username})) # if save fails, go back to edit_resource page else: return render_to_response('profiles/edit_student_record.html', { 'form': form, 'student_record': student_record, 'other_user': other_user, }, context_instance=RequestContext(request))
def create_student_record(request, username, object=None): form = StudentRecordForm(request.POST) other_user = User.objects.get(username=username) if form.is_valid(): student_record = form.save(commit=False) student_record.user = other_user """ # find network ID (based on name they entered) # TODO: remove from network when someone ends their employment institution = form.cleaned_data['institution'] networks = Network.objects.filter(name=institution) # networks = networks.filter(network_type='U') if networks.count() == 0: network = Network(network_type='U', slug=institution, name=institution, creator=other_user) network.save() else: network = networks[0] # FIXME this should be implemented as a signal - profiles should not know about GroupMember existing_members=network.members.filter(user=other_user) if existing_members.count() == 0: network_member = GroupMember(group=network, user=other_user, is_admin=False) network.members.add(network_member) network_member.save() student_record.network = network """ student_record.save() return HttpResponseRedirect(reverse('profile_detail', kwargs={'username': other_user.username })) else: return render_to_response( 'profiles/new_student_record.html', { 'form': form, 'other_user': other_user, }, context_instance=RequestContext(request) )
def create_student_record(request, username, object=None): form = StudentRecordForm(request.POST) other_user = User.objects.get(username=username) if form.is_valid(): student_record = form.save(commit=False) student_record.user = other_user """ # find network ID (based on name they entered) # TODO: remove from network when someone ends their employment institution = form.cleaned_data['institution'] networks = Network.objects.filter(name=institution) # networks = networks.filter(network_type='U') if networks.count() == 0: network = Network(network_type='U', slug=institution, name=institution, creator=other_user) network.save() else: network = networks[0] # FIXME this should be implemented as a signal - profiles should not know about GroupMember existing_members=network.members.filter(user=other_user) if existing_members.count() == 0: network_member = GroupMember(group=network, user=other_user, is_admin=False) network.members.add(network_member) network_member.save() student_record.network = network """ student_record.save() return HttpResponseRedirect( reverse('profile_detail', kwargs={'username': other_user.username})) else: return render_to_response('profiles/new_student_record.html', { 'form': form, 'other_user': other_user, }, context_instance=RequestContext(request))
def new_student_record(request, username, template_name='profiles/new_student_record.html', object=None): # Handle POST to new as a create request if request.method == 'POST': return student_records_index(request, username) other_user = get_object_or_404(User, username=username) form = StudentRecordForm() return render_to_response(template_name, { 'form': form, 'other_user': other_user, }, context_instance=RequestContext(request))
def edit_student_record(request, username, student_record_id, template_name='profiles/edit_student_record.html', object=None): if request.method == 'POST': return update_student_record(request, username=username, student_record_id=student_record_id, object=object) other_user = get_object_or_404(User, username=username) if object: student_record = object else: student_record = get_object_or_404(StudentRecord, id=student_record_id, user=other_user) form = StudentRecordForm(instance=student_record) return render_to_response(template_name, { 'form': form, 'student_record': student_record, 'other_user': other_user, }, context_instance=RequestContext(request))