From 1d15a88370198f7c4f3aa3956003ef6c63e35ca4 Mon Sep 17 00:00:00 2001 From: Mike Cao Date: Tue, 11 Feb 2025 05:40:23 -0800 Subject: [PATCH] Fixed search. Updated queries to not use domain. --- src/components/metrics/ChannelsTable.tsx | 4 ++-- src/lib/clickhouse.ts | 5 ++--- src/lib/prisma.ts | 3 +-- src/lib/schema.ts | 2 +- src/queries/sql/pageviews/getPageviewMetrics.ts | 4 ++-- 5 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/components/metrics/ChannelsTable.tsx b/src/components/metrics/ChannelsTable.tsx index c7b3906d..d2dc207f 100644 --- a/src/components/metrics/ChannelsTable.tsx +++ b/src/components/metrics/ChannelsTable.tsx @@ -1,7 +1,7 @@ import MetricsTable, { MetricsTableProps } from '@/components/metrics/MetricsTable'; import { useMessages } from '@/components/hooks'; -export function BrowsersTable(props: MetricsTableProps) { +export function ChannelsTable(props: MetricsTableProps) { const { formatMessage, labels } = useMessages(); const renderLabel = ({ x }) => { @@ -19,4 +19,4 @@ export function BrowsersTable(props: MetricsTableProps) { ); } -export default BrowsersTable; +export default ChannelsTable; diff --git a/src/lib/clickhouse.ts b/src/lib/clickhouse.ts index 7b6291c0..480084dc 100644 --- a/src/lib/clickhouse.ts +++ b/src/lib/clickhouse.ts @@ -95,7 +95,7 @@ function getFilterQuery(filters: QueryFilters = {}, options: QueryOptions = {}) arr.push(`and ${mapFilter(column, operator, name)}`); if (name === 'referrer') { - arr.push('and referrer_domain != hostname'); + arr.push(`and referrer_domain != hostname`); } } @@ -145,7 +145,6 @@ async function parseFilters(websiteId: string, filters: QueryFilters = {}, optio ...getFilterParams(filters), websiteId, startDate: maxDate(filters.startDate, new Date(website?.resetAt)), - websiteDomain: website.domain, }, }; } @@ -162,7 +161,7 @@ async function pagedQuery( const statements = [ orderBy && `order by ${orderBy} ${direction}`, - +size > 0 && `limit ${+size} offset ${offset}`, + +size > 0 && `limit ${+size} offset ${+offset}`, ] .filter(n => n) .join('\n'); diff --git a/src/lib/prisma.ts b/src/lib/prisma.ts index 6c0237d0..e2f50a6c 100644 --- a/src/lib/prisma.ts +++ b/src/lib/prisma.ts @@ -151,7 +151,7 @@ function getFilterQuery(filters: QueryFilters = {}, options: QueryOptions = {}): if (name === 'referrer') { arr.push( - 'and (website_event.referrer_domain != {{websiteDomain}} or website_event.referrer_domain is null)', + `and (website_event.referrer_domain != session.hostname or website_event.referrer_domain is null)`, ); } } @@ -205,7 +205,6 @@ async function parseFilters( ...getFilterParams(filters), websiteId, startDate: maxDate(filters.startDate, website?.resetAt), - websiteDomain: website.domain, }, }; } diff --git a/src/lib/schema.ts b/src/lib/schema.ts index 9fca4b8a..8df7be9f 100644 --- a/src/lib/schema.ts +++ b/src/lib/schema.ts @@ -23,7 +23,7 @@ export const pagingParams = { page: z.coerce.number().int().positive().optional(), pageSize: z.coerce.number().int().positive().optional(), orderBy: z.string().optional(), - query: z.string().optional(), + search: z.string().optional(), }; export const timezoneParam = z.string().refine(value => isValidTimezone(value), { diff --git a/src/queries/sql/pageviews/getPageviewMetrics.ts b/src/queries/sql/pageviews/getPageviewMetrics.ts index 4a0d3361..0b472e95 100644 --- a/src/queries/sql/pageviews/getPageviewMetrics.ts +++ b/src/queries/sql/pageviews/getPageviewMetrics.ts @@ -103,7 +103,7 @@ async function clickhouseQuery( let entryExitQuery = ''; if (column === 'referrer_domain') { - excludeDomain = `and referrer_domain != {websiteDomain:String} and referrer_domain != ''`; + excludeDomain = `and referrer_domain != hostname and referrer_domain != ''`; } if (type === 'entry' || type === 'exit') { @@ -139,7 +139,7 @@ async function clickhouseQuery( let groupByQuery = ''; if (column === 'referrer_domain') { - excludeDomain = `and t != {websiteDomain:String} and t != ''`; + excludeDomain = `and t != hostname`; } let columnQuery = `arrayJoin(${column})`;