42 lines
1.6 KiB
JavaScript
42 lines
1.6 KiB
JavaScript
import dbHandler from "./dbHandler";
|
|
import dsqlCrud from "../../utils/data-fetching/crud";
|
|
import decrypt from "../dsql/decrypt";
|
|
import createUserSQLUser from "../../utils/create-user-sql-user";
|
|
import grabUserMainSqlUserName from "../../utils/grab-user-main-sql-user-name";
|
|
export default async function grabMariadbMainUserForUser({ user, }) {
|
|
var _a;
|
|
const { fullName, host, username: mariaDBUsername, webHost, } = grabUserMainSqlUserName({ user });
|
|
const existingWebAppUser = (await dbHandler({
|
|
query: `SELECT * FROM mysql.user WHERE user=? AND host=?`,
|
|
values: [mariaDBUsername, webHost],
|
|
}));
|
|
if (!(existingWebAppUser === null || existingWebAppUser === void 0 ? void 0 : existingWebAppUser[0])) {
|
|
return await createUserSQLUser(user);
|
|
}
|
|
else {
|
|
const existingUserRecord = await dsqlCrud({
|
|
action: "get",
|
|
table: "users",
|
|
query: {
|
|
query: {
|
|
id: {
|
|
value: String(user.id),
|
|
},
|
|
},
|
|
},
|
|
});
|
|
const targetUser = (_a = existingUserRecord === null || existingUserRecord === void 0 ? void 0 : existingUserRecord.payload) === null || _a === void 0 ? void 0 : _a[0];
|
|
if (!(targetUser === null || targetUser === void 0 ? void 0 : targetUser.id)) {
|
|
return {};
|
|
}
|
|
return {
|
|
fullName,
|
|
host,
|
|
username: mariaDBUsername,
|
|
password: decrypt({
|
|
encryptedString: targetUser.mariadb_pass || "",
|
|
}),
|
|
};
|
|
}
|
|
}
|