Registering Papers
From this section, you can learn how to create papers and use them.
Types
PaperContext
id
string
Unique id of the paper
label
string
Label of the paper
price
number?
Price of the paper
canPublish
function(source: number): boolean
Function that determines is player allowed to publish article from this paper.
canDelete
function(source: number): boolean
Function that determines is player allowed to delete article from this paper.
onPurchased
function(source: number)?
Function that executes when someone purchased a newspaper from this paper.
How to Register Paper?
You can register paper using API.RegisterPaper. You can find default WeazelNews paper in
no-newspaper/newspapers/sh_weazelnews.lua
You can copy this file and edit variables to create a new paper or you can register paper from another resource using API. API examples can be found in no-newspaper/api/server/examples.lua
Examples
local API = exports["no-newspaper"]
local WeazelNews = API:RegisterPaper({
id = "weazelnews",
label = "Weazel News",
canPublish = function(source)
local player = ESX.GetPlayerFromId(source)
return player and player.job.name == "weazelnews"
end,
canDelete = function(source)
local player = ESX.GetPlayerFromId(source)
return player and player.job.name == "weazelnews"
end
})
local function PrintArticles(articles)
for _, article in pairs(articles) do
print(article.id)
print(article.header)
print(article.author)
print(article.content)
print(article.image)
print(article.date)
end
end
local function PrintAllArticles()
local articles = WeazelNews:GetAllArticles()
PrintArticles(articles)
end
local function PrintArticlesByDate(date)
local articles = WeazelNews:GetArticles(date)
PrintArticles(articles)
end
RegisterNetEvent("jail:player", function(source, months)
local player = ESX.GetPlayerFromId(source)
if not player then return end
local fullname = player.get("firstname") .. " " .. player.get("lastname")
WeazelNews:Publish({
header = "Jail Sentence",
author = "Bolingbroke Penitentiary",
content = fullname .. " sentenced for " .. months .. " months in jail!"
})
end)
Last updated