mirror of
https://github.com/umami-software/umami.git
synced 2025-12-08 05:12:36 +01:00
Merge branch 'dev' into feat/um-66-update-clickhouse-schema-uuid
This commit is contained in:
commit
ec6454aead
65 changed files with 436 additions and 441 deletions
|
|
@ -40,19 +40,19 @@ export async function allowQuery(req, skipToken) {
|
|||
const { id } = req.query;
|
||||
const token = req.headers[SHARE_TOKEN_HEADER];
|
||||
|
||||
const website = await getWebsite(validate(id) ? { website_uuid: id } : { website_id: +id });
|
||||
const website = await getWebsite(validate(id) ? { websiteUuid: id } : { id: +id });
|
||||
|
||||
if (website) {
|
||||
if (token && token !== 'undefined' && !skipToken) {
|
||||
return isValidToken(token, { website_id: website.website_id });
|
||||
return isValidToken(token, { websiteId: website.id });
|
||||
}
|
||||
|
||||
const authToken = await getAuthToken(req);
|
||||
|
||||
if (authToken) {
|
||||
const { user_id, is_admin } = authToken;
|
||||
const { userId, isAdmin } = authToken;
|
||||
|
||||
return is_admin || website.user_id === user_id;
|
||||
return isAdmin || website.userId === userId;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,10 +37,10 @@ async function stageData() {
|
|||
const websites = await getAllWebsites();
|
||||
|
||||
const sessionUuids = sessions.map(a => {
|
||||
return { key: `session:${a.session_uuid}`, value: 1 };
|
||||
return { key: `session:${a.sessionUuid}`, value: 1 };
|
||||
});
|
||||
const websiteIds = websites.map(a => {
|
||||
return { key: `website:${a.website_uuid}`, value: Number(a.website_id) };
|
||||
return { key: `website:${a.websiteUuid}`, value: Number(a.websiteId) };
|
||||
});
|
||||
|
||||
await addSet(sessionUuids);
|
||||
|
|
|
|||
|
|
@ -23,9 +23,9 @@ export async function getSession(req) {
|
|||
}
|
||||
}
|
||||
|
||||
const { website: website_uuid, hostname, screen, language } = payload;
|
||||
const { website: websiteUuid, hostname, screen, language } = payload;
|
||||
|
||||
if (!validate(website_uuid)) {
|
||||
if (!validate(websiteUuid)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
@ -33,21 +33,21 @@ export async function getSession(req) {
|
|||
|
||||
// Check if website exists
|
||||
if (redis.enabled) {
|
||||
websiteId = Number(await redis.get(`website:${website_uuid}`));
|
||||
websiteId = Number(await redis.get(`website:${websiteUuid}`));
|
||||
}
|
||||
|
||||
// Check database if does not exists in Redis
|
||||
if (!websiteId) {
|
||||
const website = await getWebsiteByUuid(website_uuid);
|
||||
websiteId = website ? website.website_id : null;
|
||||
const website = await getWebsiteByUuid(websiteUuid);
|
||||
websiteId = website ? website.websiteId : null;
|
||||
}
|
||||
|
||||
if (!websiteId || websiteId === DELETED) {
|
||||
throw new Error(`Website not found: ${website_uuid}`);
|
||||
throw new Error(`Website not found: ${websiteUuid}`);
|
||||
}
|
||||
|
||||
const { userAgent, browser, os, ip, country, device } = await getClientInfo(req, payload);
|
||||
const session_uuid = uuid(websiteId, hostname, ip, userAgent);
|
||||
const sessionUuid = uuid(websiteId, hostname, ip, userAgent);
|
||||
|
||||
let sessionId = null;
|
||||
let session = null;
|
||||
|
|
@ -55,19 +55,19 @@ export async function getSession(req) {
|
|||
if (!clickhouse.enabled) {
|
||||
// Check if session exists
|
||||
if (redis.enabled) {
|
||||
sessionId = Number(await redis.get(`session:${session_uuid}`));
|
||||
sessionId = Number(await redis.get(`session:${sessionUuid}`));
|
||||
}
|
||||
|
||||
// Check database if does not exists in Redis
|
||||
if (!sessionId) {
|
||||
session = await getSessionByUuid(session_uuid);
|
||||
sessionId = session ? session.session_id : null;
|
||||
session = await getSessionByUuid(sessionUuid);
|
||||
sessionId = session ? session.sessionId : null;
|
||||
}
|
||||
|
||||
if (!sessionId) {
|
||||
try {
|
||||
session = await createSession(websiteId, website_uuid, {
|
||||
session_uuid,
|
||||
session = await createSession(websiteId, {
|
||||
sessionUuid,
|
||||
hostname,
|
||||
browser,
|
||||
os,
|
||||
|
|
@ -84,8 +84,8 @@ export async function getSession(req) {
|
|||
}
|
||||
} else {
|
||||
session = {
|
||||
session_id: sessionId,
|
||||
session_uuid,
|
||||
sessionId,
|
||||
sessionUuid,
|
||||
hostname,
|
||||
browser,
|
||||
os,
|
||||
|
|
@ -97,8 +97,7 @@ export async function getSession(req) {
|
|||
}
|
||||
|
||||
return {
|
||||
website_id: websiteId,
|
||||
website_uuid: website_uuid,
|
||||
websiteId: websiteId,
|
||||
session,
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue