35 lines
890 B
JavaScript
35 lines
890 B
JavaScript
|
// @ts-check
|
||
|
|
||
|
const LOCAL_DB_HANDLER = require("../../../utils/backend/global-db/LOCAL_DB_HANDLER");
|
||
|
const varDatabaseDbHandler = require("../../backend/varDatabaseDbHandler");
|
||
|
|
||
|
/** @type {import("../../../types").APIGetUserFunction} */
|
||
|
module.exports = async function apiGetUser({
|
||
|
fields,
|
||
|
dbFullName,
|
||
|
userId,
|
||
|
useLocal,
|
||
|
}) {
|
||
|
const query = `SELECT ${fields.join(",")} FROM users WHERE id=?`;
|
||
|
|
||
|
let foundUser = useLocal
|
||
|
? await LOCAL_DB_HANDLER(query, [userId])
|
||
|
: await varDatabaseDbHandler({
|
||
|
queryString: query,
|
||
|
queryValuesArray: [userId],
|
||
|
database: dbFullName.replace(/[^a-z0-9_]/g, ""),
|
||
|
});
|
||
|
|
||
|
if (!foundUser || !foundUser[0]) {
|
||
|
return {
|
||
|
success: false,
|
||
|
payload: null,
|
||
|
};
|
||
|
}
|
||
|
|
||
|
return {
|
||
|
success: true,
|
||
|
payload: foundUser[0],
|
||
|
};
|
||
|
};
|