def get_user(self, request): '''check for gaema authenticated user and return the user ''' if hasattr(request, settings.MARKETPLACE_DOMAIN_NAME_KEY): # marketplace domain = getattr(request, settings.MARKETPLACE_DOMAIN_NAME_KEY) user = get_gaema_user(domain) if user: user['_service'] = domain key_name = "%s:%s" % (domain, user['claimed_id']) return self.user_model.get_or_insert(key_name, user) else: return AnonymousUser() for service in self.valid_services: user = get_gaema_user(service) if user: user['_service'] = service key_name = services.get_key_name(user) return self.user_model.get_or_insert(key_name, user) return AnonymousUser()
def marketplace_login(request, domain): next_url_key = NEXT_URL_KEY_FORMAT % domain def auth_callback(user): set_gaema_user(domain, user) next_url = request.cookies.get(next_url_key, "/") if get_gaema_user(domain): return redirect(next_url) auth_instance = GoogleMarketPlaceAuth(request, domain) if auth_instance.is_callback(): auth_instance.get_authenticated_user(auth_callback) return redirect(next_url) oauth_scope = getattr(settings, 'GAEMA_OAUTH_SCOPE', None) auth_instance.authorize_redirect(oauth_scope)
def login(request, service): auth_module = get_auth_module(service) next_url_key = NEXT_URL_KEY_FORMAT % service def auth_callback(user): set_gaema_user(service, user) next_url = request.cookies.get(next_url_key, "/") if get_gaema_user(service): return redirect(next_url) auth_instance = auth_module(request) if auth_instance.is_callback(): auth_instance.get_authenticated_user(auth_callback) return redirect(next_url) if use_hybrid(service): oauth_scope = getattr(settings, 'GAEMA_OAUTH_SCOPE', None) auth_instance.authorize_redirect(oauth_scope) else: auth_instance.authenticate_redirect()
def inner(request, *args, **kwargs): if get_gaema_user(kwargs['domain_name']): return func(request, *args, **kwargs) return redirect(create_marketplace_login_url(kwargs['domain_name'], nexturl=request.url))
def inner(request, *args, **kwargs): for service in targets: if get_gaema_user(service): return func(request, *args, **kwargs) return redirect(url_for('gaema/select_service', targets='|'.join(targets), next_url=url_quote_plus(request.url)))