def send_connect_users(request): payload = {} users = User.all().filter('username > ', request.GET['name']).fetch(100) hashes = [] fb = Facebook(settings.FACEBOOK_API_KEY, settings.FACEBOOK_API_SECRET) for user in users: #logging.debug(user) user.email_hash = fb.hash_email(user.email) hashes.append({"email_hash": user.email_hash}) username = user.username user.put() logging.info(hashes) logging.info(username) user_info_response = fb.connect.registerUsers(hashes) logging.info(user_info_response) payload['text'] = "<a href='/send_connect?name=%s'>%s</a>" % (username, username) return render("standardpage.html", payload, request)
def register(request, page): payload = {} if request.method == 'POST': f = RegisterForm(request.POST) if request.POST.has_key('toc'): if f.is_valid(): check_captcha = captcha.submit(request.POST['recaptcha_challenge_field'], request.POST['recaptcha_response_field'], settings.RECAPTCHA_PRIVATE_KEY, request.META['REMOTE_ADDR']) if check_captcha.is_valid: user = User(key_name="user%s" % f.data['username'], username=f.data['username'], email=f.data['email']) user.set_password(f.data['password']) user.is_active = True fb = Facebook(settings.FACEBOOK_API_KEY, settings.FACEBOOK_API_SECRET) user.email_hash = fb.hash_email(user.email) hashes = [] hashes.append({"email_hash": user.email_hash}) user.put() user_info_response = fb.connect.registerUsers(hashes) #automatically login user = authenticate(username=f.data['username'],password=f.data['password']) if user is not None: if user.is_active: login(request, user) if request.session.test_cookie_worked(): request.session.delete_test_cookie() if request.GET.has_key("next"): return HttpResponseRedirect(request.GET["next"]) else: return HttpResponseRedirect('/account/') else: payload["captchaerror"] = True else: payload["tocerror"] = True else: f = RegisterForm() request.session.set_test_cookie() payload["captchahtml"] = captcha.displayhtml(settings.RECAPTCHA_PUB_KEY) payload["form"] = f if request.GET.has_key("next"): payload["next"] = request.GET["next"] return render("register.html", payload, request)