forked from Simnation/Main
77 lines
2.3 KiB
Lua
77 lines
2.3 KiB
Lua
|
|
--- SQL Stuff
|
|
local SQL_DRIVER = Config.sql.driver
|
|
local function SqlQuery(query, data)
|
|
if SQL_DRIVER == 'mysql' then
|
|
return MySQL.Sync.fetchAll(query, data or {})
|
|
end
|
|
|
|
if SQL_DRIVER == 'oxmysql' then
|
|
if Config.sql.newOxMysql then
|
|
return exports[SQL_DRIVER]:fetchSync(query, data or {})
|
|
end
|
|
return exports[SQL_DRIVER]:query_async(query, data or {})
|
|
else
|
|
return exports[SQL_DRIVER]:executeSync(query, data or {})
|
|
end
|
|
end
|
|
|
|
local function SqlMutate(query, data)
|
|
if SQL_DRIVER == 'mysql' then
|
|
return MySQL.Sync.insert(query, data)
|
|
end
|
|
|
|
if SQL_DRIVER == 'oxmysql' then
|
|
return exports[SQL_DRIVER]:insertSync(query, data)
|
|
else
|
|
return exports[SQL_DRIVER]:executeSync(query, data)
|
|
end
|
|
end
|
|
|
|
|
|
DB = {
|
|
FetchProps = function(limit)
|
|
local query = 'SELECT * FROM kq_propplacer ORDER BY id DESC LIMIT @limit'
|
|
local data = {
|
|
['@limit'] = limit,
|
|
}
|
|
|
|
return SqlQuery(query, data)
|
|
end,
|
|
|
|
SaveNewProp = function(model, coords, rotation, metadata)
|
|
local mutation = 'INSERT INTO kq_propplacer (`model`, `coords`, `rotation`, `metadata`) VALUES(@model, @coords, @rotation, @metadata);'
|
|
local data = {
|
|
['@model'] = model,
|
|
['@coords'] = json.encode(coords),
|
|
['@rotation'] = json.encode(rotation),
|
|
['@metadata'] = json.encode(metadata),
|
|
}
|
|
|
|
return SqlMutate(mutation, data)
|
|
end,
|
|
|
|
UpdateProp = function(id, coords, rotation, metadata)
|
|
local mutation = 'UPDATE kq_propplacer SET `coords` = @coords, `rotation` = @rotation, `metadata` = @metadata WHERE `id` = @id;'
|
|
local data = {
|
|
['@id'] = id,
|
|
['@coords'] = json.encode(coords),
|
|
['@rotation'] = json.encode(rotation),
|
|
['@metadata'] = json.encode(metadata),
|
|
}
|
|
|
|
return SqlMutate(mutation, data)
|
|
end,
|
|
|
|
DeleteProp = function(id)
|
|
local mutation = 'DELETE FROM kq_propplacer WHERE `id` = @id;'
|
|
local data = {
|
|
['@id'] = id,
|
|
}
|
|
|
|
return SqlMutate(mutation, data)
|
|
end,
|
|
}
|
|
|
|
DB.SqlMutate = SqlMutate
|
|
DB.SqlQuery = SqlQuery
|