def youtubediario(request): mensaje = '' if request.method == 'POST': num = YoutubeDiario.objects.values("numytdia").order_by("-numytdia",)[:1] num = 1 if len(num)==0 else int(num[0]["numytdia"])+1 profile = request.user.get_profile() obj = YoutubeDiario(numytdia=num,idusuario_creac=profile,organismo=profile.organismo,dependencia=profile.dependencia) frm = YoutubeDiarioForm(request.POST, instance=obj,error_class=DivErrorList) # A form bound to the POST data if frm.is_valid(): frm.save() #cfechas csuscrip crepro cmegusta cnomegusta ccomen ccompar cfavo cfavodel fechas = request.POST.getlist('cfechas') titulo = request.POST.getlist('ctitulo') urlytdia = request.POST.getlist('curl') suscriptores = request.POST.getlist('csuscrip') reproducciones = request.POST.getlist('crepro') megusta = request.POST.getlist('cmegusta') nomegusta = request.POST.getlist('cnomegusta') comentarios = request.POST.getlist('ccomen') compartidos = request.POST.getlist('ccompar') favoritos = request.POST.getlist('cfavo') favoritosdel = request.POST.getlist('cfavodel') for co in range(len(fechas)): fecha = fechas[co] fecha = datetime.strptime(fecha,"%d/%m/%Y") det = YoutubeDiarioDetalle(numytdia=obj,item=co+1,fechadetytdia = fecha,titulo=titulo[co],urlytdia=urlytdia[co],suscriptores=suscriptores[co],reproducciones =reproducciones[co], megusta = megusta[co],nomegusta=nomegusta[co],comentarios=comentarios[co],compartidos=compartidos[co],favoritos=favoritos[co],favoritosdel=favoritosdel[co],) det.save() mensaje = 'Registro grabado satisfactoriamente' frm = YoutubeDiarioForm() else: frm = YoutubeDiarioForm() frm_detalle = YoutubeDiarioDetalleForm() tabla = YoutubeDiarioDetalleTable([]) return render_to_response('redes/youtubediario.html', {'formulario': frm,'frm_detalle':frm_detalle,'opcion':'add','tabla':tabla,'mensaje':mensaje}, context_instance=RequestContext(request),)
def youtubediario_edit(request, codigo): mensaje = '' if request.method == 'POST': obj = get_object_or_404(YoutubeDiario,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() frm = YoutubeDiarioForm(request.POST, instance=obj,error_class=DivErrorList) if frm.is_valid(): frm.save() fechas = request.POST.getlist('cfechas') titulo = request.POST.getlist('ctitulo') urlytdia = request.POST.getlist('curl') suscriptores = request.POST.getlist('csuscrip') reproducciones = request.POST.getlist('crepro') megusta = request.POST.getlist('cmegusta') nomegusta = request.POST.getlist('cnomegusta') comentarios = request.POST.getlist('ccomen') compartidos = request.POST.getlist('ccompar') favoritos = request.POST.getlist('cfavo') favoritosdel = request.POST.getlist('cfavodel') #TWITTER_DETALLE_save query = YoutubeDiarioDetalle.objects.filter(numytdia=obj) for co in range(len(fechas)): fecha = datetime.strptime(fechas[co],"%d/%m/%Y") try: row = YoutubeDiarioDetalle.objects.get(numytdia=obj,item=co+1) row.fechadetytdia = fecha row.titulo = titulo[co] row.urlytdia = urlytdia[co] row.suscriptores = suscriptores[co] row.reproducciones = reproducciones[co] row.megusta = megusta[co] row.nomegusta = nomegusta[co] row.comentarios = comentarios[co] row.compartidos = compartidos[co] row.favoritos = favoritos[co] row.favoritosdel = favoritosdel[co] row.save() except YoutubeDiarioDetalle.DoesNotExist: YoutubeDiarioDetalle(numytdia=obj,item=co+1,fechadetytdia = fecha,titulo=titulo[co],urlytdia=urlytdia[co],suscriptores=suscriptores[co],reproducciones =reproducciones[co], megusta = megusta[co],nomegusta=nomegusta[co],comentarios=comentarios[co],compartidos=compartidos[co],favoritos=favoritos[co],favoritosdel=favoritosdel[co],).save() resto= len(fechas) while resto < len(query): row = YoutubeDiarioDetalle.objects.get(numytdia=obj,item=resto+1) row.delete() resto = resto + 1 return redirect(reverse('ogcs-redes-youtube-diario-query')+'?m=edit') else: obj = get_object_or_404(YoutubeDiario,pk=codigo) obj.fechacreacdia = obj.fechacreacdia.strftime("%d/%m/%Y") frm = YoutubeDiarioForm(instance = obj) detalle = YoutubeDiarioDetalle.objects.filter(numytdia=obj)#.order_by('-fechadettw') for row in detalle: row.fechadetytdia = row.fechadetytdia.strftime("%d/%m/%Y") tabla = YoutubeDiarioDetalleTable(detalle) frm_detalle = YoutubeDiarioDetalleForm() return render_to_response('redes/youtubediario.html', {'formulario': frm,'frm_detalle':frm_detalle,'opcion':'edit','codigo':codigo,'tabla':tabla}, context_instance=RequestContext(request),)