Example #1
0
def hola(solicitud):

    if solicitud.method == 'POST' and solicitud.POST.get('email') and solicitud.POST.get('nombre'):
        pais   = get_pais(solicitud.META)
        email  = solicitud.POST['email']
        nombre = solicitud.POST['nombre']

        # por si el usuario esta detras de un proxy
        if solicitud.META.get('HTTP_X_FORWARDED_FOR'):
            ip = solicitud.META['HTTP_X_FORWARDED_FOR'].split(',')[0]
        else:
            ip = solicitud.META['REMOTE_ADDR']

        payload = {
            'email_address': email,
            'apikey': settings.MAILCHIMP_APIKEY,
            'merge_vars': {
                'FNAME': nombre,
                'OPTINIP': ip,
                'OPTIN_TIME': time.time(),
                'PAIS': pais
            },
            'id': settings.MAILCHIMP_LISTID,
            'email_type': 'html'
        }

        r = requests.post('http://us2.api.mailchimp.com/1.3/?method=listSubscribe', simplejson.dumps(payload))

        return HttpResponse(r.text)

    return render_to_response('website/hola.html', {})
Example #2
0
def locateme(solicitud):
    ip = solicitud.GET.get('ip')

    if ip:
        return HttpResponse(get_pais_by_ip(ip))

    return HttpResponse(get_pais(solicitud.META))
Example #3
0
def home(solicitud):
    # si no existe el valor aun en la base de datos
    try:
        es_vivo = Setting.objects.get(key='en_vivo').value
    except Setting.DoesNotExist:
        es_vivo = False

    # checar si estamos transmitiendo en vivo
    # regresar la vista de "vivo" de ser asi
    if ('live' in solicitud.GET and solicitud.GET['live'] == '1') or es_vivo:
        return render_to_response('website/live.html')

    # si no hay videos aun
    try:
        ultimo_video = Video.objects.all().filter(activado=True).latest('fecha')
    except Video.DoesNotExist:
        ultimo_video = None

    ultimos_4_videos = Video.objects.all().order_by('-fecha').filter(activado=True)[1:5]
    # plantilla
    return render_to_response('website/home.html', {
        'ultimo_video': ultimo_video,  # El ultimo video
        'videos': ultimos_4_videos,  # ultimos 4 videos
        'pais': get_pais(solicitud.META),  # el horario del programa localizado
        'timestamp': get_timestamp(),  # Obtiene el timestamp del sig. program.
        'cursos': Curso.objects.all().order_by('fecha').filter(activado=True, fecha__gte=datetime.datetime.now()),
        'cursos_geo': Curso.objects.all().order_by('fecha').filter(activado=True, fecha__gte=datetime.datetime.now(), pais=get_pais(solicitud.META))
    })
Example #4
0
def hola(solicitud):

    if solicitud.method == 'POST' and solicitud.POST.get('email') and solicitud.POST.get('nombre'):
        pais   = get_pais(solicitud.META)
        email  = solicitud.POST['email']
        nombre = solicitud.POST['nombre']

        # por si el usuario esta detras de un proxy
        if solicitud.META.get('HTTP_X_FORWARDED_FOR'):
            ip = solicitud.META['HTTP_X_FORWARDED_FOR'].split(',')[0]
        else:
            ip = solicitud.META['REMOTE_ADDR']

        payload = {
            'email_address': email,
            'apikey': settings.MAILCHIMP_APIKEY,
            'merge_vars': {
                'FNAME': nombre,
                'OPTINIP': ip,
                'OPTIN_TIME': time.time(),
                'PAIS': pais
            },
            'id': settings.MAILCHIMP_LISTID,
            'email_type': 'html'
        }

        r = requests.post('http://us2.api.mailchimp.com/1.3/?method=listSubscribe', simplejson.dumps(payload))

        return HttpResponse(r.text)

    return render_to_response('website/hola.html', {})
Example #5
0
def hola(solicitud):

    if solicitud.method == 'POST' and solicitud.POST.get('email') and solicitud.POST.get('nombre'):
        pais = get_pais(solicitud.META)
        email = solicitud.POST['email']
        nombre = solicitud.POST['nombre']

        payload = {
            'email_address': email,
            'apikey': settings.MAILCHIMP_APIKEY,
            'merge_vars': {
                'FNAME': nombre,
                'OPTINIP': get_ip(solicitud.META),
                'OPTIN_TIME': time.time(),
                'PAIS': pais
            },
            'id': settings.MAILCHIMP_LISTID,
            'email_type': 'html'
        }

        r = requests.post('http://us4.api.mailchimp.com/1.3/?method=listSubscribe', simplejson.dumps(payload))

        return HttpResponse(r.text)

    return render_to_response('./hola.html')
Example #6
0
def home(solicitud):
    # si no existe el valor aun en la base de datos
    try:
        es_vivo = Setting.objects.get(key='en_vivo').value
    except Setting.DoesNotExist:
        es_vivo = False

    # checar si estamos transmitiendo en vivo
    # regresar la vista de "vivo" de ser asi
    if es_vivo:
        return render_to_response('./live.html')

    # si no hay videos aun
    try:
        ultimo_video = Video.objects.filter(activado=True).latest('fecha')
    except Video.DoesNotExist:
        ultimo_video = None

    proximos = Video.objects.filter(proximo=True)

    ultimos_4_videos = Video.objects.filter(activado=True).order_by('-fecha')[1:5]

    pais = get_pais(solicitud.META)

    # plantilla
    return render_to_response('./home.html', {
        'ultimo_video': ultimo_video,  # El ultimo video
        'videos': ultimos_4_videos,  # ultimos 4 videos
        'pais': pais,  # el horario del programa localizado
        'timestamp': get_timestamp(),  # Obtiene el timestamp del sig. program.
        'cursos': Curso.objects.filter(activado=True, fecha__gte=datetime.datetime.now()).order_by('fecha'),
        'cursos_geo': Curso.objects.filter(activado=True, fecha__gte=datetime.datetime.now(), pais=pais).order_by('fecha'),
        'proximo': proximos[0] if proximos.exists() else None
    })
Example #7
0
def conferencia(solicitud, template):
    if template:
        try:
            return render_to_response('%s.html' % template)
        except TemplateDoesNotExist:
            return render_to_response('default.html')        

    try:
        return render_to_response('%s.html' % slugify(get_pais(solicitud.META)))
    except TemplateDoesNotExist:
        return render_to_response('default.html')
Example #8
0
def conferencia(solicitud, template):
    if template:
        try:
            return render_to_response('%s.html' % template)
        except TemplateDoesNotExist:
            return render_to_response('default.html')        

    try:
        return render_to_response('%s.html' % slugify(get_pais(solicitud.META)))
    except TemplateDoesNotExist:
        return render_to_response('default.html')
Example #9
0
def conferencia_registro2(solicitud):
    if settings.DEBUG: return HttpResponse()

    asunto = 'Inscripción a la conferencia'

    if solicitud.POST.get('asunto'): asunto = solicitud.POST.get('asunto')

    if not solicitud.POST.get('nombre') or not solicitud.POST.get('email'): return HttpResponse()

    try:
        registro = RegistroConferencia(nombre=solicitud.POST.get('nombre'), email=solicitud.POST.get('email'), pais=get_pais(solicitud.META))
        registro.save()
    except:
        return HttpResponse('FAIL')

    if solicitud.POST.get('extended') == 'viaje':
        send_mail(asunto, u'Nombre: %s\nApellidos: %s\nEmail: %s\nSexo: %s\nTipo de habitación: %s\nTeléfono: %s\nUsuario de Twitter: %s\nComentario: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('apellidos'), solicitud.POST.get('email'), solicitud.POST.get('sexo'), solicitud.POST.get('tipo'), solicitud.POST.get('telefono'), solicitud.POST.get('twitter'), solicitud.POST.get('comentario')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)
    else:    
        send_mail(asunto, 'Nombre: %s\nEmail: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('email')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)

    # por si el usuario esta detras de un proxy
    if solicitud.META.get('HTTP_X_FORWARDED_FOR'):
        ip = solicitud.META['HTTP_X_FORWARDED_FOR'].split(',')[0]
    else:
        ip = solicitud.META['REMOTE_ADDR']

    pais   = get_pais(solicitud.META)
    
    payload = {
        'email_address': solicitud.POST.get('email'),
        'apikey': settings.MAILCHIMP_APIKEY,
        'merge_vars': {
            'FNAME': solicitud.POST.get('nombre'),
            'OPTINIP': ip,
            'OPTIN_TIME': time.time(),
            'PAIS': pais
        },
        'id': settings.MAILCHIMP_LISTID2,
        'email_type': 'html'
    }

    r = requests.post('http://us2.api.mailchimp.com/1.3/?method=listSubscribe', simplejson.dumps(payload))
    
    return HttpResponse('OK')
Example #10
0
def conferencia_registro2(solicitud):
    if settings.DEBUG: return HttpResponse()

    asunto = 'Inscripción a la conferencia'

    if solicitud.POST.get('asunto'): asunto = solicitud.POST.get('asunto')

    if not solicitud.POST.get('nombre') or not solicitud.POST.get('email'): return HttpResponse()

    try:
        registro = RegistroConferencia(nombre=solicitud.POST.get('nombre'), email=solicitud.POST.get('email'), pais=get_pais(solicitud.META))
        registro.save()
    except:
        return HttpResponse('FAIL')

    if solicitud.POST.get('extended') == 'viaje':
        send_mail(asunto, u'Nombre: %s\nApellidos: %s\nEmail: %s\nSexo: %s\nTipo de habitación: %s\nTeléfono: %s\nUsuario de Twitter: %s\nComentario: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('apellidos'), solicitud.POST.get('email'), solicitud.POST.get('sexo'), solicitud.POST.get('tipo'), solicitud.POST.get('telefono'), solicitud.POST.get('twitter'), solicitud.POST.get('comentario')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)
    else:    
        send_mail(asunto, 'Nombre: %s\nEmail: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('email')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)

    # por si el usuario esta detras de un proxy
    if solicitud.META.get('HTTP_X_FORWARDED_FOR'):
        ip = solicitud.META['HTTP_X_FORWARDED_FOR'].split(',')[0]
    else:
        ip = solicitud.META['REMOTE_ADDR']

    pais   = get_pais(solicitud.META)
    
    payload = {
        'email_address': solicitud.POST.get('email'),
        'apikey': settings.MAILCHIMP_APIKEY,
        'merge_vars': {
            'FNAME': solicitud.POST.get('nombre'),
            'OPTINIP': ip,
            'OPTIN_TIME': time.time(),
            'PAIS': pais
        },
        'id': settings.MAILCHIMP_LISTID2,
        'email_type': 'html'
    }

    r = requests.post('http://us2.api.mailchimp.com/1.3/?method=listSubscribe', simplejson.dumps(payload))
    
    return HttpResponse('OK')
def geo(req):
    return {'geo_pais': get_pais(req.META).lower()}
Example #12
0
def conferencia_registro(solicitud):
    if settings.DEBUG: return HttpResponse()

    asunto = 'Inscripción a la conferencia'

    if solicitud.POST.get('asunto'): asunto = solicitud.POST.get('asunto')

    if not solicitud.POST.get('nombre') or not solicitud.POST.get('email'): return HttpResponse()

    try:
        registro = RegistroConferencia(nombre=solicitud.POST.get('nombre'), email=solicitud.POST.get('email'), pais=get_pais(solicitud.META))
        registro.save()
    except:
        return HttpResponse('FAIL')

    if solicitud.POST.get('extended') == 'viaje':
        send_mail(asunto, u'Nombre: %s\nApellidos: %s\nEmail: %s\nSexo: %s\nTipo de habitación: %s\nTeléfono: %s\nUsuario de Twitter: %s\nComentario: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('apellidos'), solicitud.POST.get('email'), solicitud.POST.get('sexo'), solicitud.POST.get('tipo'), solicitud.POST.get('telefono'), solicitud.POST.get('twitter'), solicitud.POST.get('comentario')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)
    else:    
        send_mail(asunto, 'Nombre: %s\nEmail: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('email')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)

    return HttpResponse('OK')
Example #13
0
def locateme(solicitud):
    return HttpResponse(get_pais(solicitud.META))
Example #14
0
def cursos_registro(solicitud):
    if solicitud.POST.get('nombre') and solicitud.POST.get('telefono') and solicitud.POST.get('email') and solicitud.POST.get('curso') and solicitud.POST.get('code') and solicitud.POST.get('total'):
        if RegistroCurso.objects.filter(email=solicitud.POST.get('email'), code=solicitud.POST.get('code')).exists():
            return HttpResponse('ERROR: Ya te has registrado a este curso.')

        registro = RegistroCurso(nombre=solicitud.POST.get('nombre'), telefono=solicitud.POST.get('telefono'), email=solicitud.POST.get('email'), curso=solicitud.POST.get('curso'), pais=get_pais(solicitud.META), code=solicitud.POST.get('code'), total=solicitud.POST.get('total'), currency=solicitud.POST.get('currency'))

        if solicitud.POST.get('personas'):
            registro.personas = int(solicitud.POST.get('personas'))

        if solicitud.POST.get('descuento'):
            registro.descuento = float(solicitud.POST.get('descuento'))

        if solicitud.POST.get('tipo'):
            registro.tipo = solicitud.POST.get('tipo')

        registro.save()

        solicitud.session['registro_id'] = registro.id

        return HttpResponse('OK')

    return HttpResponse('ERROR')
Example #15
0
def conferencia_registro(solicitud):
    if settings.DEBUG: return HttpResponse()

    asunto = 'Inscripción a la conferencia'

    if solicitud.POST.get('asunto'): asunto = solicitud.POST.get('asunto')

    if not solicitud.POST.get('nombre') or not solicitud.POST.get('email'): return HttpResponse()

    try:
        registro = RegistroConferencia(nombre=solicitud.POST.get('nombre'), email=solicitud.POST.get('email'), pais=get_pais(solicitud.META))
        registro.save()
    except:
        return HttpResponse('FAIL')

    if solicitud.POST.get('extended') == 'viaje':
        send_mail(asunto, u'Nombre: %s\nApellidos: %s\nEmail: %s\nSexo: %s\nTipo de habitación: %s\nTeléfono: %s\nUsuario de Twitter: %s\nComentario: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('apellidos'), solicitud.POST.get('email'), solicitud.POST.get('sexo'), solicitud.POST.get('tipo'), solicitud.POST.get('telefono'), solicitud.POST.get('twitter'), solicitud.POST.get('comentario')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)
    else:    
        send_mail(asunto, 'Nombre: %s\nEmail: %s\n' % (solicitud.POST.get('nombre'), solicitud.POST.get('email')), settings.FROM_CONFERENCIA_EMAIL, settings.TO_CONFERENCIA_EMAIL)

    return HttpResponse('OK')
Example #16
0
def locateme(solicitud):
    return HttpResponse(get_pais(solicitud.META))
def geo(req):
	return { 'geo_pais': get_pais(req.META).lower() }