Esempio n. 1
0
def create(request):
	"""
	Alta de título nacional.
	"""
	if request.method == 'POST':
		form = TituloNacionalForm(request.POST)
		if form.is_valid():
			titulo_nacional = form.save(commit=False)
			titulo_nacional.estado = EstadoTituloNacional.objects.get(nombre=EstadoTituloNacional.VIGENTE)
			titulo_nacional.save()
			form.save_m2m()  # Guardo las relaciones - https://docs.djangoproject.com/en/1.2/topics/forms/modelforms/#the-save-method
			titulo_nacional.registrar_estado()

			#MailHelper.notify_by_email(MailHelper.TITULO_CREATE, titulo)
			request.set_flash('success', 'Datos guardados correctamente.')

			# redirigir a edit
			return HttpResponseRedirect(reverse('tituloNacionalEdit', args=[titulo_nacional.id]))
		else:
			request.set_flash('warning', 'Ocurrió un error guardando los datos.')
	else:
		form = TituloNacionalForm()

	form.fields['estado'].queryset = EstadoTituloNacional.objects.filter(nombre=EstadoTituloNacional.VIGENTE)
	return my_render(request, 'titulos/titulo_nacional/new.html', {
		'form': form,
		'is_new': True,
	})
Esempio n. 2
0
def edit(request, titulo_nacional_id):
	"""
	Edición de los datos de un título nacional.
	"""
	titulo_nacional = TituloNacional.objects.get(pk=titulo_nacional_id)
	estado_actual_id = titulo_nacional.estado.id

	if request.method == 'POST':
		form = TituloNacionalForm(request.POST, instance=titulo_nacional, initial={'estado': estado_actual_id})
		if form.is_valid():
			titulo_nacional = form.save(commit=False)

			"Cambiar el estado?"
			if int(request.POST['estado']) is not estado_actual_id:
				titulo_nacional.estado = EstadoTituloNacional.objects.get(pk=request.POST['estado'])
				titulo_nacional.save()
				titulo_nacional.registrar_estado()
			else:
				# Guardar directamente
				titulo_nacional.save()

			form.save_m2m()  # Guardo las relaciones - https://docs.djangoproject.com/en/1.2/topics/forms/modelforms/#the-save-method

			#MailHelper.notify_by_email(MailHelper.TITULO_UPDATE, titulo)
			request.set_flash('success', 'Datos actualizados correctamente.')
		else:
			request.set_flash('warning', 'Ocurrió un error actualizando los datos.')
	else:
		form = TituloNacionalForm(instance=titulo_nacional, initial={'estado': estado_actual_id})

	return my_render(request, 'titulos/titulo_nacional/edit.html', {
		'form': form,
		'is_new': False,
	})