def facebook_edit(request, codigo): mensaje = '' if request.method == 'POST': obj = get_object_or_404(Facebook,pk=codigo) profile = request.user.get_profile() if profile.nivel.codigo == 1: obj.fec_mod = datetime.now() obj.idusuario_mod = profile else: obj.idadministrador_mod = profile obj.fec_modadm = datetime.now() formulario = FacebookForm(request.POST, instance=obj,error_class=DivErrorList) if formulario.is_valid(): formulario.save() fechas = request.POST.getlist('tfechas') likes = request.POST.getlist('tlikes') #FACEBOOK_DETALLE_save query = FacebookDetalle.objects.filter(numfb=obj) for c in range(len(likes)): fecha = datetime.strptime(fechas[c],"%d/%m/%Y") try: row = FacebookDetalle.objects.get(numfb=obj,item=c+1) row.fechadetfb = fecha row.cantidad = likes[c] row.save() except FacebookDetalle.DoesNotExist: FacebookDetalle(numfb=obj,item=c+1,fechadetfb = fecha,cantidad=likes[c],).save() resto= len(likes) while resto < len(query): row = FacebookDetalle.objects.get(numfb=obj,item=resto+1) row.delete() resto = resto + 1 return redirect(reverse('ogcs-redes-facebook-query')+'?m=edit') else: obj = get_object_or_404(Facebook,pk=codigo) obj.fechacreac = obj.fechacreac.strftime("%d/%m/%Y") formulario = FacebookForm(instance = obj) detalle = FacebookDetalle.objects.filter(numfb=obj)#.order_by('-fechadettw') for row in detalle: row.fechadetfb = row.fechadetfb.strftime("%d/%m/%Y") tabla = FacebookDetalleTable(detalle) frm_detalle = FacebookDetalleForm() return render_to_response('redes/facebook.html', {'formulario': formulario,'frm_detalle':frm_detalle,'opcion':'edit','codigo':codigo,'tabla':tabla}, context_instance=RequestContext(request),)
def facebook(request): mensaje = '' if request.method == 'POST': num = Facebook.objects.values("numfb").order_by("-numfb",)[:1] num = 1 if len(num)==0 else int(num[0]["numfb"])+1 profile = Usuario.objects.get(user = request.user) ifacebook = Facebook(numfb=num,idusuario_creac=profile,organismo=profile.organismo,dependencia=profile.dependencia) frmfacebook = FacebookForm(request.POST, instance=ifacebook,error_class=DivErrorList) # A form bound to the POST data if frmfacebook.is_valid(): frmfacebook.save() fechas = request.POST.getlist('tfechas') likes = request.POST.getlist('tlikes') for co in range(len(fechas)): fecha = fechas[co] fecha = datetime.strptime(fecha,"%d/%m/%Y") det = FacebookDetalle(numfb=ifacebook,item=co+1,fechadetfb = fecha,cantidad=likes[co],) det.save() mensaje = 'Registro grabado satisfactoriamente' frmfacebook = FacebookForm() else: frmfacebook = FacebookForm() frmfacebookdetalle = FacebookDetalleForm() tabla = FacebookDetalleTable([]) return render_to_response('redes/facebook.html', {'formulario': frmfacebook,'frm_detalle':frmfacebookdetalle,'opcion':'add','tabla':tabla,'mensaje':mensaje}, context_instance=RequestContext(request),)