def embed(query_id, visualization_id, org_slug=None): record_event(current_org, current_user._get_current_object(), { 'action': 'view', 'object_id': visualization_id, 'object_type': 'visualization', 'query_id': query_id, 'embed': True, 'referer': request.headers.get('Referer') }) return render_index()
def embed(query_id, visualization_id, org_slug=None): if(type(current_user)==models.AnonymousUser): print("@#anonymous user, not to record_events") else: record_event(current_org, current_user._get_current_object(), { 'action': 'view', 'object_id': visualization_id, 'object_type': 'visualization', 'query_id': query_id, 'embed': True, 'referer': request.headers.get('Referer') }) return render_index()
def embed(query_id, visualization_id, org_slug=None): record_event( current_org, current_user._get_current_object(), { "action": "view", "object_id": visualization_id, "object_type": "visualization", "query_id": query_id, "embed": True, "referer": request.headers.get("Referer"), }, ) return render_index()
def public_dashboard(token, org_slug=None): if current_user.is_api_user(): dashboard = current_user.object else: api_key = get_object_or_404(models.ApiKey.get_by_api_key, token) dashboard = api_key.object record_event(current_org, current_user, { 'action': 'view', 'object_id': dashboard.id, 'object_type': 'dashboard', 'public': True, 'headless': 'embed' in request.args, 'referer': request.headers.get('Referer') }) return render_index()
def public_dashboard(token, org_slug=None): if current_user.is_api_user(): dashboard = current_user.object else: api_key = get_object_or_404(models.ApiKey.get_by_api_key, token) dashboard = api_key.object record_event( current_org, current_user, { "action": "view", "object_id": dashboard.id, "object_type": "dashboard", "public": True, "headless": "embed" in request.args, "referer": request.headers.get("Referer"), }, ) return render_index()
def embed_dashboard(dashboard_id, org_slug=None): # check the application(current_user) has permissions to access this dashboard if not models.ApplicationDashboard.check_dashboard_in_application( current_user.id, dashboard_id): abort(403, message="Can't access to this dashboard.") ttl = current_org.get_setting("embed_api_access_token_ttl") access_token = models.AccessToken().new(ttl) record_event( current_org, current_user._get_current_object(), { "action": "view", "object_id": dashboard_id, "object_type": "dashboard", "embed": True, "referer": request.headers.get("Referer"), }, ) return render_index(access_token=access_token)
def embed(query_id, visualization_id, org_slug=None): # record_event # 所有的请求相关信息都会被记录 # id org_id user_id action object_type created_at # 1 1 1 login personal_homepage 05/10/18:11:50 # object_id additional_properties # {"ip": "13.124.223.158", # "user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36"} record_event(current_org, current_user._get_current_object(), { 'action': 'view', 'object_id': visualization_id, 'object_type': 'visualization', 'query_id': query_id, 'embed': True, 'referer': request.headers.get('Referer') # HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器基此可以获得一些信息用于处理。 }) return render_index()