173 lines
		
	
	
		
			No EOL
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			173 lines
		
	
	
		
			No EOL
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
local configurated = false
 | 
						|
 | 
						|
CreateThread(function()
 | 
						|
    for i,k in pairs(config.commands) do
 | 
						|
        RegisterCommand(k, function()
 | 
						|
            Open()
 | 
						|
        end)
 | 
						|
    end
 | 
						|
 | 
						|
    while not configurated do
 | 
						|
        SetConfig()
 | 
						|
        Wait(1000)
 | 
						|
    end
 | 
						|
 | 
						|
    RegisterKeyMapping("accept_document:"..config.key_accept, "See Document", "keyboard", config.key_accept)
 | 
						|
end)
 | 
						|
 | 
						|
RegisterCommand("accept_document:"..config.key_accept, function()
 | 
						|
    TriggerServerEvent("lg_documents:SeeDocument")
 | 
						|
end)
 | 
						|
 | 
						|
function Open()
 | 
						|
    SendNUIMessage({
 | 
						|
        open = true,
 | 
						|
    })
 | 
						|
    SetNuiFocus(true, true)
 | 
						|
end
 | 
						|
 | 
						|
function Close()
 | 
						|
    SetNuiFocus(false, false)
 | 
						|
end
 | 
						|
 | 
						|
function LoadedDocuments(documents)
 | 
						|
    SendNUIMessage({
 | 
						|
        load_documents = true,
 | 
						|
        documents = documents
 | 
						|
    })
 | 
						|
end
 | 
						|
 | 
						|
function LoadedTemplates(templates)
 | 
						|
    SendNUIMessage({
 | 
						|
        load_templates = true,
 | 
						|
        templates = templates
 | 
						|
    })
 | 
						|
end
 | 
						|
 | 
						|
function CancelAction(message)
 | 
						|
    SendNUIMessage({
 | 
						|
        cancel_action = true,
 | 
						|
        cancel_msg = message
 | 
						|
    })
 | 
						|
end
 | 
						|
 | 
						|
function ConfirmAction()
 | 
						|
    SendNUIMessage({
 | 
						|
        confirm_action = true,
 | 
						|
    })
 | 
						|
end
 | 
						|
 | 
						|
function SeeDocument(document)
 | 
						|
    SendNUIMessage({
 | 
						|
        see_document = true,
 | 
						|
        document = document,
 | 
						|
    })
 | 
						|
 | 
						|
    Open()
 | 
						|
end
 | 
						|
 | 
						|
function SetConfig()
 | 
						|
    SendNUIMessage({
 | 
						|
        name_resource = GetCurrentResourceName(),
 | 
						|
        translate = translate,
 | 
						|
        server_banner = config.server_banner,
 | 
						|
        config = true,
 | 
						|
    })
 | 
						|
end
 | 
						|
 | 
						|
function ClosestPlayer()
 | 
						|
	local my_ped = GetPlayerPed(-1)
 | 
						|
	local dist = 99999.9
 | 
						|
	local closest = -1
 | 
						|
 | 
						|
	local my_pos = GetEntityCoords(my_ped)
 | 
						|
	for i, player in pairs(GetActivePlayers()) do
 | 
						|
		local ped = GetPlayerPed(player)
 | 
						|
 | 
						|
		if DoesEntityExist(ped) and ped ~= my_ped then
 | 
						|
			local pos = GetEntityCoords(ped)
 | 
						|
			local distance = #(pos - my_pos)
 | 
						|
			if dist > distance then
 | 
						|
				dist = distance
 | 
						|
				closest = player
 | 
						|
			end
 | 
						|
		end
 | 
						|
	end
 | 
						|
 | 
						|
	return closest, dist
 | 
						|
end
 | 
						|
 | 
						|
RegisterNetEvent("lg_documents:Open")
 | 
						|
RegisterNetEvent("lg_documents:LoadedDocuments", LoadedDocuments)
 | 
						|
RegisterNetEvent("lg_documents:LoadedTemplates", LoadedTemplates)
 | 
						|
RegisterNetEvent("lg_documents:CancelAction", CancelAction)
 | 
						|
RegisterNetEvent("lg_documents:ConfirmAction", ConfirmAction)
 | 
						|
RegisterNetEvent("lg_documents:SeeDocument", SeeDocument)
 | 
						|
 | 
						|
AddEventHandler("lg_documents:Open", function()
 | 
						|
    Open()
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("Close", function(data, cb)
 | 
						|
    Close()
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("LoadDocuments", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:LoadDocuments")
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("LoadTemplates", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:LoadTemplates")
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("SaveDocument", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:SaveDocument", data)
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("DeleteDocument", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:DeleteDocument", data)
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("FinishDocument", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:FinishDocument", data)
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("CreateCopy", function(data, cb)
 | 
						|
    TriggerServerEvent("lg_documents:CreateCopy", data)
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("ShowDocument", function(data, cb)
 | 
						|
    local player, dist = ClosestPlayer()
 | 
						|
    if closest ~= -1 and dist < 2.0 then
 | 
						|
        local target = GetPlayerServerId(player)
 | 
						|
        TriggerServerEvent("lg_documents:ShowDocument", target, data)
 | 
						|
    else
 | 
						|
        TriggerServerEvent("lg_documents:ShowNotification", translate.TR_NO_NEAREST)
 | 
						|
    end
 | 
						|
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("GiveDocument", function(data, cb)
 | 
						|
    local player, dist = ClosestPlayer()
 | 
						|
    if closest ~= -1 and dist < 2.0 then
 | 
						|
        local target = GetPlayerServerId(player)
 | 
						|
        TriggerServerEvent("lg_documents:GiveDocument", target, data)
 | 
						|
    else
 | 
						|
        TriggerServerEvent("lg_documents:ShowNotification", translate.TR_NO_NEAREST)
 | 
						|
    end
 | 
						|
 | 
						|
    cb('ok')
 | 
						|
end)
 | 
						|
 | 
						|
RegisterNUICallback("ConfirmConfig", function(data, cb)
 | 
						|
    configurated = true
 | 
						|
    cb('ok')
 | 
						|
end) |