Exemplo n.º 1
0
def edit_provider(request, provider_id):

	provider = get_object_or_404(Provider, id=provider_id)
	admin_user = provider.admin

	#TEMPORARY
	location = Location.objects.filter(provider__pk = provider_id)[0]

	if request.user == admin_user: # only the provider's registered user can edit page

		if request.method == 'POST':
			provider_form = ProviderForm(request.POST,instance=provider)
			location_form = LocationForm(request.POST,instance=location)

			if provider_form.is_valid() and location_form.is_valid():
				provider = provider_form.save(commit=False)
				provider.admin = admin_user
				provider.save()
				location = location_form.save(commit=False)
				location.provider = provider
				location.save()
				location_form.save_m2m()
				return HttpResponseRedirect(reverse('provider_detail', kwargs={'provider_id': provider.id}))

		else:
			provider_form = ProviderForm(instance=provider)
			location_form = LocationForm(instance=location) #todo: turn into formsets--right now this is creating a new loca

		return render(request, "provider/edit.html", { 
												'provider_form': provider_form, 
												'location_form': location_form
												 })

	else:
		return HttpResponseRedirect(reverse('index'))
Exemplo n.º 2
0
def add_provider(request):
	if request.method == "POST":
		admin_form = UserCreationForm(request.POST)
		provider_form = ProviderForm(request.POST)
		location_form = LocationForm(request.POST)

		if admin_form.is_valid() and provider_form.is_valid() and location_form.is_valid():
			admin = admin_form.save()
			provider = provider_form.save(commit=False)
			provider.admin = admin
			provider.save()
			location = location_form.save(commit=False)
			location.provider = provider
			location.save()
			location_form.save_m2m()
			return HttpResponseRedirect(reverse('provider_detail', kwargs={'provider_id': provider.id}))

	else:
		admin_form = UserCreationForm()
		provider_form = ProviderForm()
		location_form = LocationForm()

	return render(request, "provider/new.html", { 
												'provider_form': provider_form, 
												'location_form': location_form,
												'admin_form': admin_form,
												 })