async function createVehicleToPlayer(playerId, postBody, res) { if (config.Framework.includes("qb")) { let result = await query(` select * from \`players\` where \`citizenid\` = '${playerId}' `) if (result === false) return res.json({ code: 404, message: "SQL Error Appeared." }) if (result.length === 0) return res.json({ code: 404, message: "Player not found." }) result = result [0] const plate = await randomPlate() result = await query(` insert into \`player_vehicles\` ( \`license\`, \`citizenid\`, \`vehicle\`, \`hash\`, \`mods\`, \`plate\`, \`garage\`, \`state\`, \`balance\`, \`paymentamount\`, \`paymentsleft\`, \`financetime\` ) values ( '${result.license}', '${playerId}', '${postBody.model}', '${GetHashKey(postBody.model)}', '${generateVehicleMods(postBody.model, plate)}', '${plate}', 'pillboxgarage', 1, 0, 0, 0, 0 )`) if (result === false) return res.json({ code: 404, message: "SQL Error Appeared." }) } else if (config.Framework.includes("esx")) { let result = await query(` select * from \`users\` where \`identifier\` = '${playerId}' `) if (result === false) return res.json({ code: 404, message: "SQL Error Appeared." }) if (result.length === 0) return res.json({ code: 404, message: "Player not found." }) result = result [0] const plate = await randomPlate() result = await query(` insert into \`owned_vehicles\` ( \`owner\`, \`plate\`, \`vehicle\`, \`type\`, \`stored\`, \`parking\`, \`mileage\` ) values ( '${playerId}', '${plate}', '${generateVehicleMods(postBody.model, plate)}', 'car', 1, 'SanAndreasAvenue', 0 ) `) if (result === false) return res.json({ code: 404, message: "SQL Error Appeared." }) } return true } /** * @param {string} key * @param {string} model * @param {string} playerIdentifier * @returns {string} */ app.use("/vehiclesGiveVehicleToPlayer.lvorex", express.json()) app.post("/vehiclesGiveVehicleToPlayer.lvorex", async (req, res) => { const postBody = req.body const { keyFound, userKey } = await controlKey(req, postBody.key) if (keyFound === false) return res.json({ code: 404, message: "Not authorized." }) const PermissionCheck = await checkPermission(userKey.rank, "Vehicles", 5) if (!PermissionCheck) return res.json({ code: 401, message: "Your rank is not enough." }) const playerId = Number(postBody.playerIdentifier) let response = undefined if (isNaN(playerId)) { response = await createVehicleToPlayer(postBody.playerIdentifier, postBody, res) } else { const onlinePlayers = await getOnlinePlayers() const NeededPlayer = onlinePlayers.find(p => Number(p.playerId) === playerId) if (!NeededPlayer) return res.json({ code: 404, message: "Player not found." }) response = await createVehicleToPlayer(config.Framework.includes("qb") ? NeededPlayer.citizenid : NeededPlayer.identifier, postBody, res) } if (response === true) return res.json({ code: 200, message: "Vehicle gave." }) })