177 lines
4.3 KiB
Lua
177 lines
4.3 KiB
Lua
|
|
if Config.Menu ~= 'qb-menu' then
|
||
|
|
return
|
||
|
|
end
|
||
|
|
|
||
|
|
function OpenManagementMenu()
|
||
|
|
local elementsList = {
|
||
|
|
{
|
||
|
|
header = 'Management',
|
||
|
|
isMenuHeader = true,
|
||
|
|
},
|
||
|
|
{
|
||
|
|
header = 'Give Key',
|
||
|
|
params = {
|
||
|
|
event = 'advancedgarages:openGiveKeyMenu',
|
||
|
|
}
|
||
|
|
},
|
||
|
|
{
|
||
|
|
header = 'Key Holders',
|
||
|
|
params = {
|
||
|
|
event = 'advancedgarages:openKeyHoldersMenu',
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
exports['qb-menu']:openMenu(elementsList)
|
||
|
|
end
|
||
|
|
|
||
|
|
function openGiveKeyMenu(players)
|
||
|
|
local elementsList = {}
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = 'Give Key',
|
||
|
|
isMenuHeader = true,
|
||
|
|
})
|
||
|
|
for k, v in pairs(players) do
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = 'Player: ' .. v.name.firstName .. ' ' .. v.name.lastName,
|
||
|
|
params = {
|
||
|
|
isServer = true,
|
||
|
|
event = 'advancedgarages:giveKey',
|
||
|
|
args = {
|
||
|
|
id = v.id,
|
||
|
|
garage = ClosestGarage
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
end
|
||
|
|
exports['qb-menu']:openMenu(elementsList)
|
||
|
|
end
|
||
|
|
|
||
|
|
function openTakeKeyMenu()
|
||
|
|
local elementsList = {}
|
||
|
|
local holders = lib.callback.await('advancedgarages:getGarageKeyHolders', false, ClosestGarage)
|
||
|
|
if not holders or #holders == 0 then
|
||
|
|
Notification(i18n.t('keyholders.empty_list'), 'info')
|
||
|
|
return
|
||
|
|
end
|
||
|
|
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = 'Take Key',
|
||
|
|
isMenuHeader = true,
|
||
|
|
})
|
||
|
|
|
||
|
|
for k, v in pairs(holders) do
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = 'Player: ' .. v.firstname .. ' ' .. v.lastname,
|
||
|
|
params = {
|
||
|
|
isServer = true,
|
||
|
|
event = 'advancedgarages:takeKey',
|
||
|
|
args = {
|
||
|
|
id = v.identifier,
|
||
|
|
garage = ClosestGarage
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
end
|
||
|
|
exports['qb-menu']:openMenu(elementsList)
|
||
|
|
end
|
||
|
|
|
||
|
|
function HandleKeyboard(callback)
|
||
|
|
local dialog = exports['qb-input']:ShowInput({
|
||
|
|
header = 'Set a Price',
|
||
|
|
submitText = 'Continue',
|
||
|
|
inputs = {
|
||
|
|
{
|
||
|
|
text = 'Garage Price...',
|
||
|
|
name = 'price',
|
||
|
|
type = 'number',
|
||
|
|
isRequired = true,
|
||
|
|
}
|
||
|
|
},
|
||
|
|
})
|
||
|
|
|
||
|
|
if dialog ~= nil then
|
||
|
|
for k, v in pairs(dialog) do
|
||
|
|
callback(v)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
function HandleGarageJob()
|
||
|
|
local dialog = exports['qb-input']:ShowInput({
|
||
|
|
header = 'Job Name (you can leave it blank for everyone)',
|
||
|
|
submitText = 'Continue',
|
||
|
|
inputs = {
|
||
|
|
{
|
||
|
|
text = 'Job Name...',
|
||
|
|
name = 'Job public garage',
|
||
|
|
type = 'text',
|
||
|
|
isRequired = false,
|
||
|
|
}
|
||
|
|
},
|
||
|
|
})
|
||
|
|
|
||
|
|
if dialog ~= nil then
|
||
|
|
for k, v in pairs(dialog) do
|
||
|
|
if v and v ~= '' then
|
||
|
|
return v
|
||
|
|
end
|
||
|
|
|
||
|
|
return nil
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
function OpenRecoveryMenu(vehicleList)
|
||
|
|
local elementsList = {}
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = 'Recovery Vehicle (OUT)',
|
||
|
|
isMenuHeader = true,
|
||
|
|
})
|
||
|
|
|
||
|
|
for k, v in pairs(vehicleList) do
|
||
|
|
table.insert(elementsList, {
|
||
|
|
header = v.plate,
|
||
|
|
params = {
|
||
|
|
isServer = true,
|
||
|
|
event = 'advancedgarages:RecoveryVehicle',
|
||
|
|
args = {
|
||
|
|
plate = v.plate,
|
||
|
|
type = v.type
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
end
|
||
|
|
exports['qb-menu']:openMenu(elementsList)
|
||
|
|
end
|
||
|
|
|
||
|
|
function OpenDeleteJobVehicleMenu(garage, job)
|
||
|
|
local menu = {}
|
||
|
|
local vehicles = lib.callback.await('advancedgarages:getJobVehicles', false, garage, job)
|
||
|
|
|
||
|
|
if not vehicles or #vehicles == 0 then
|
||
|
|
Notification(i18n.t('keyholders.empty_out'), 'info')
|
||
|
|
return
|
||
|
|
end
|
||
|
|
|
||
|
|
table.insert(menu, {
|
||
|
|
header = 'Delete work vehicles'
|
||
|
|
})
|
||
|
|
|
||
|
|
for k, v in pairs(vehicles) do
|
||
|
|
table.insert(menu, {
|
||
|
|
header = v.plate,
|
||
|
|
params = {
|
||
|
|
isServer = true,
|
||
|
|
event = 'advancedgarages:deleteJobVehicle',
|
||
|
|
args = {
|
||
|
|
plate = v.plate,
|
||
|
|
garage = garage
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
end
|
||
|
|
|
||
|
|
exports['qb-menu']:openMenu(menu)
|
||
|
|
end
|