diff --git a/src/modules/api/submodules/chat.ts b/src/modules/api/submodules/chat.ts index 1bf64a6..0823e4f 100644 --- a/src/modules/api/submodules/chat.ts +++ b/src/modules/api/submodules/chat.ts @@ -131,7 +131,7 @@ function setup(data: SubmoduleData): void { const msgObj = { sender: userid, reciever: parseInt(reciever), - msg: msg.replace(/'/g, '').replace(/;/g, ''), + msg: dbtools.sanitizeQuery(msg), type: type || 'text', date: new Date().getTime(), unread: 1, diff --git a/src/utils/dbtools.ts b/src/utils/dbtools.ts index 13c1454..2fd00dc 100644 --- a/src/utils/dbtools.ts +++ b/src/utils/dbtools.ts @@ -13,6 +13,7 @@ export default { Insert: Insert, CloseDB: CloseDB, runStatement: runStatement, + sanitizeQuery: sanitizeQuery, } import Sqlite from 'better-sqlite3' @@ -21,14 +22,21 @@ import utils from '../utils/utils' const debugLog = process.env.NS_SQL_DEBUG_LOG +function sanitizeQuery(val: string): string { + return val.replace(/'/g, '').replace(/;/g, '') +} + // { asd: 'asd', basd: 4 } => asd = 'asd', basd = 4 function GetSqlQuerry(conditions: any, type: string, joiner?: string) { const res = Object.keys(conditions).reduce((acc, key) => { const item = conditions[key] + const conditionKey = sanitizeQuery(key) + const condition = sanitizeQuery(conditions[key]) + if (typeof item === 'string') { - acc.push(`${key} = '${conditions[key]}'`) + acc.push(`${conditionKey} = '${condition}'`) } else { - acc.push(`${key} = ${conditions[key]}`) + acc.push(`${conditionKey} = ${condition}`) } return acc }, []) diff --git a/submodules/qmining-page b/submodules/qmining-page index 2b491e6..dd70010 160000 --- a/submodules/qmining-page +++ b/submodules/qmining-page @@ -1 +1 @@ -Subproject commit 2b491e6bec6eee78400e3e042418def12df3243f +Subproject commit dd7001023eaf9169863268325c2219ed0822895b