Exemplo n.º 1
0
def signup(request):
    form = SignupForm(prefix="signup")
    recaptcha = request.POST.get('g-recaptcha-response', None)
    recaptcha_error = None
    
    if not recaptcha:
        recaptcha_error = "Please hit the \"I'm not a robot\" button."
    else:
        response = requests.post('https://www.google.com/recaptcha/api/siteverify', {
            'secret': settings.RECAPTCHA_SECRET_KEY,
            'response': recaptcha,
        })
        result = response.json()
        if not result['success']:
            recaptcha_error = "Really, please hit the \"I'm not a robot\" button."
    recaptcha_error = None

    if request.method == "POST":
        form = SignupForm(data=request.POST, prefix="signup")
        if form.is_valid() and not recaptcha_error:
            new_user = form.save()
            login_user(request, new_user)
            logging.user(new_user, "~FG~SB~BBNEW SIGNUP: ~FW%s" % new_user.email)
            new_user.profile.activate_free()
            return HttpResponseRedirect(request.POST['next'] or reverse('index'))

    return render_to_response('accounts/signup.html', {
        'form': form,
        'recaptcha_error': recaptcha_error,
        'next': request.REQUEST.get('next', "")
    }, context_instance=RequestContext(request))
Exemplo n.º 2
0
def import_signup(request):
    if request.method == "POST":
        signup_form = SignupForm(prefix='signup', data=request.POST)
        if signup_form.is_valid():
            new_user = signup_form.save()
            try:
                user_token = OAuthToken.objects.get(
                    session_id=request.session.session_key)
            except OAuthToken.DoesNotExist:
                user_tokens = OAuthToken.objects.filter(
                    remote_ip=request.META['REMOTE_ADDR']).order_by(
                        '-created_date')
                if user_tokens:
                    user_token = user_tokens[0]
                    user_token.session_id = request.session.session_key
                    user_token.save()
            user_token.user = new_user
            user_token.save()
            login_user(request, new_user)
            return HttpResponseRedirect(reverse('index'))
    else:
        signup_form = SignupForm(prefix='signup')

    return render_to_response('import/signup.xhtml', {
        'signup_form': signup_form,
    },
                              context_instance=RequestContext(request))
Exemplo n.º 3
0
def import_signup(request):
    if request.method == "POST":
        signup_form = SignupForm(prefix='signup', data=request.POST)
        if signup_form.is_valid():
            new_user = signup_form.save()
            
            user_token = OAuthToken.objects.filter(user=new_user)
            if not user_token:
                user_uuid = request.COOKIES.get('newsblur_reader_uuid')
                if user_uuid:
                    user_token = OAuthToken.objects.filter(uuid=user_uuid).order_by('-created_date')
            if not user_token:
                if request.session.session_key:
                    user_token = OAuthToken.objects.filter(session_id=request.session.session_key).order_by('-created_date')
            if not user_token:
                user_token = OAuthToken.objects.filter(remote_ip=request.META['REMOTE_ADDR']).order_by('-created_date')

            if user_token:
                user_token = user_token[0]
                user_token.session_id = request.session.session_key
                user_token.user = new_user
                user_token.save()
                login_user(request, new_user)
                return HttpResponseRedirect(reverse('index'))
            else:
                logging.user(request, "~BR~FW ***> Can't find user token during import/signup. Re-authenticating...")
                return HttpResponseRedirect(reverse('google-reader-authorize'))
    else:
        signup_form = SignupForm(prefix='signup')

    return render_to_response('import/signup.xhtml', {
        'signup_form': signup_form,
    }, context_instance=RequestContext(request))
Exemplo n.º 4
0
def index(request):
    if request.method == "POST":
        if request.POST['submit'] == 'login':
            login_form = LoginForm(request.POST, prefix='login')
            signup_form = SignupForm(prefix='signup')
        else:
            login_form = LoginForm(prefix='login')
            signup_form = SignupForm(request.POST, prefix='signup')
    else:
        login_form = LoginForm(prefix='login')
        signup_form = SignupForm(prefix='signup')

    user = get_user(request)
    authed = request.user.is_authenticated()
    features = Feature.objects.all()[:3]
    feature_form = FeatureForm() if request.user.is_staff else None
    feed_count = UserSubscription.objects.filter(
        user=request.user).count() if authed else 0
    active_count = UserSubscription.objects.filter(
        user=request.user, active=True).count() if authed else 0
    train_count = UserSubscription.objects.filter(
        user=request.user,
        active=True,
        is_trained=False,
        feed__stories_last_month__gte=1).count() if authed else 0
    recommended_feeds = RecommendedFeed.objects.filter(
        is_public=True,
        approved_date__lte=datetime.datetime.now()).select_related('feed')[:2]
    unmoderated_feeds = RecommendedFeed.objects.filter(
        is_public=False, declined_date__isnull=True).select_related('feed')[:2]
    statistics = MStatistics.all()
    feedbacks = MFeedback.all()
    start_import_from_google_reader = request.session.get(
        'import_from_google_reader', False)
    if start_import_from_google_reader:
        del request.session['import_from_google_reader']

    return render_to_response(
        'reader/feeds.xhtml', {
            'user_profile': hasattr(user, 'profile') and user.profile,
            'login_form': login_form,
            'signup_form': signup_form,
            'feature_form': feature_form,
            'features': features,
            'feed_count': feed_count,
            'active_count': active_count,
            'train_count': active_count - train_count,
            'account_images': range(1, 4),
            'recommended_feeds': recommended_feeds,
            'unmoderated_feeds': unmoderated_feeds,
            'statistics': statistics,
            'feedbacks': feedbacks,
            'start_import_from_google_reader': start_import_from_google_reader,
        },
        context_instance=RequestContext(request))
Exemplo n.º 5
0
def import_signup(request):
    ip = request.META.get('HTTP_X_FORWARDED_FOR', None) or request.META.get(
        'REMOTE_ADDR', "")

    if request.method == "POST":
        signup_form = SignupForm(prefix='signup', data=request.POST)
        if signup_form.is_valid():
            new_user = signup_form.save()

            user_token = OAuthToken.objects.filter(user=new_user)
            if not user_token:
                user_uuid = request.COOKIES.get('pytune_reader_uuid')
                if user_uuid:
                    user_token = OAuthToken.objects.filter(
                        uuid=user_uuid).order_by('-created_date')
            if not user_token:
                if request.session.session_key:
                    user_token = OAuthToken.objects.filter(
                        session_id=request.session.session_key).order_by(
                            '-created_date')
            if not user_token:
                user_token = OAuthToken.objects.filter(
                    remote_ip=ip).order_by('-created_date')

            if user_token:
                user_token = user_token[0]
                user_token.session_id = request.session.session_key
                user_token.user = new_user
                user_token.save()
                login_user(request, new_user)
                if request.user.profile.is_premium:
                    return HttpResponseRedirect(reverse('index'))
                url = "https://%s%s" % (Site.objects.get_current().domain,
                                        reverse('stripe-form'))
                return HttpResponseRedirect(url)
            else:
                logging.user(
                    request,
                    "~BR~FW ***> Can't find user token during import/signup. Re-authenticating..."
                )
                return HttpResponseRedirect(reverse('google-reader-authorize'))
    else:
        signup_form = SignupForm(prefix='signup')

    return render_to_response('import/signup.xhtml', {
        'signup_form': signup_form,
    },
                              context_instance=RequestContext(request))
Exemplo n.º 6
0
def signup(request):
    form = SignupForm()

    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.is_valid():
            new_user = form.save()
            login_user(request, new_user)
            logging.user(new_user, "~FG~SB~BBNEW SIGNUP~FW")
            new_user.profile.activate_free()
            return HttpResponseRedirect(request.POST['next'])

    return render_to_response('accounts/signup.html', {
        'form': form,
        'next': request.REQUEST.get('next', "")
    }, context_instance=RequestContext(request))
Exemplo n.º 7
0
def signup(request):
    code = -1
    errors = None
    ip = request.META.get('HTTP_X_FORWARDED_FOR',
                          None) or request.META['REMOTE_ADDR']

    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.errors:
            errors = form.errors
        if form.is_valid():
            try:
                new_user = form.save()
                login_user(request,
                           new_user,
                           backend='django.contrib.auth.backends.ModelBackend')
                logging.user(
                    request, "~FG~SB~BBAPI NEW SIGNUP: ~FW%s / %s" %
                    (new_user.email, ip))
                code = 1
            except forms.ValidationError as e:
                errors = [e.args[0]]
    else:
        errors = dict(method="Invalid method. Use POST. You used %s" %
                      request.method)

    return dict(code=code, errors=errors)
Exemplo n.º 8
0
def signup(request):
    if request.method == "POST":
        form = SignupForm(prefix='signup', data=request.POST)
        if form.is_valid():
            new_user = form.save()
            login_user(request, new_user)
            logging.user(new_user, "~FG~SB~BBNEW SIGNUP~FW")
            return HttpResponseRedirect(reverse('index'))

    return index(request)
Exemplo n.º 9
0
def signup(request):
    code = -1
    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.is_valid():
            new_user = form.save()
            login_user(request, new_user)
            logging.user(new_user, "~FG~SB~BBAPI NEW SIGNUP~FW")
            code = 1

    return dict(code=code)
Exemplo n.º 10
0
def signup(request):
    code = -1
    errors = None
    ip = request.META.get('HTTP_X_FORWARDED_FOR', None) or request.META['REMOTE_ADDR']

    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.errors:
            errors = form.errors
        if form.is_valid():
            try:
                new_user = form.save()
                login_user(request, new_user)
                logging.user(request, "~FG~SB~BBAPI NEW SIGNUP: ~FW%s / %s" % (new_user.email, ip))
                code = 1
            except forms.ValidationError, e:
                errors = [e.args[0]]
Exemplo n.º 11
0
def signup(request):
    code = -1
    errors = None

    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.errors:
            errors = form.errors
        if form.is_valid():
            new_user = form.save()
            login_user(request, new_user)
            logging.user(request, "~FG~SB~BBAPI NEW SIGNUP~FW")
            code = 1
    else:
        errors = dict(method="Invalid method. Use POST. You used %s" %
                      request.method)

    return dict(code=code, errors=errors)
Exemplo n.º 12
0
def signup(request):
    code = -1
    errors = None
    ip = request.META.get('HTTP_X_FORWARDED_FOR',
                          None) or request.META['REMOTE_ADDR']

    if request.method == "POST":
        form = SignupForm(data=request.POST)
        if form.errors:
            errors = form.errors
        if form.is_valid():
            new_user = form.save()
            login_user(request, new_user)
            logging.user(
                request,
                "~FG~SB~BBAPI NEW SIGNUP: ~FW%s / %s" % (new_user.email, ip))
            code = 1
    else:
        errors = dict(method="Invalid method. Use POST. You used %s" %
                      request.method)

    return dict(code=code, errors=errors)
Exemplo n.º 13
0
def index(request):
    if request.method == "POST":
        if request.POST['submit'] == 'login':
            login_form = LoginForm(request.POST, prefix='login')
            signup_form = SignupForm(prefix='signup')
        else:
            login_form = LoginForm(prefix='login')
            signup_form = SignupForm(request.POST, prefix='signup')
    else:
        login_form = LoginForm(prefix='login')
        signup_form = SignupForm(prefix='signup')

    user = get_user(request)
    features = Feature.objects.all()[:3]
    feature_form = None
    if request.user.is_staff:
        feature_form = FeatureForm()

    feed_count = 0
    active_count = 0
    train_count = 0
    if request.user.is_authenticated():
        feed_count = UserSubscription.objects.filter(user=request.user).count()
        active_count = UserSubscription.objects.filter(user=request.user,
                                                       active=True).count()
        train_count = UserSubscription.objects.filter(
            user=request.user,
            active=True,
            is_trained=False,
            feed__stories_last_month__gte=1).count()

    now = datetime.datetime.now()
    recommended_feeds = RecommendedFeed.objects.filter(
        is_public=True, approved_date__lte=now).select_related('feed')[:2]
    # recommended_feed_feedback = RecommendedFeedUserFeedback.objects.filter(recommendation=recommended_feed)

    statistics = MStatistics.all()
    howitworks_page = 0  # random.randint(0, 5)
    return render_to_response(
        'reader/feeds.xhtml',
        {
            'user_profile':
            user.profile,
            'login_form':
            login_form,
            'signup_form':
            signup_form,
            'feature_form':
            feature_form,
            'features':
            features,
            'start_import_from_google_reader':
            request.session.get('import_from_google_reader', False),
            'howitworks_page':
            howitworks_page,
            'feed_count':
            feed_count,
            'active_count':
            active_count,
            'train_count':
            active_count - train_count,
            'account_images':
            range(1, 4),
            'recommended_feeds':
            recommended_feeds,
            'statistics':
            statistics,
            # 'recommended_feed_feedback': recommended_feed_feedback,
        },
        context_instance=RequestContext(request))