Merge quote files into one
This commit is contained in:
parent
94568cf25c
commit
bdb9639485
72
plugins/quotes.lua
Normal file
72
plugins/quotes.lua
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
local quotes_file = './data/quotes.lua'
|
||||||
|
local quotes_table
|
||||||
|
|
||||||
|
function read_quotes_file()
|
||||||
|
local f = io.open(quotes_file, "r+")
|
||||||
|
|
||||||
|
if f == nil then
|
||||||
|
print ('Created a new quotes file on '..quotes_file)
|
||||||
|
serialize_to_file({}, quotes_file)
|
||||||
|
else
|
||||||
|
print ('Quotes loaded: '..quotes_file)
|
||||||
|
f:close()
|
||||||
|
end
|
||||||
|
return loadfile (quotes_file)()
|
||||||
|
end
|
||||||
|
|
||||||
|
function save_quote(msg)
|
||||||
|
local to_id = tostring(msg.to.id)
|
||||||
|
|
||||||
|
if msg.text:sub(11):isempty() then
|
||||||
|
return "Usage: !addquote quote"
|
||||||
|
end
|
||||||
|
|
||||||
|
if quotes_table == nil then
|
||||||
|
quotes_table = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if quotes_table[to_id] == nil then
|
||||||
|
print ('New quote key to_id: '..to_id)
|
||||||
|
quotes_table[to_id] = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
local quotes = quotes_table[to_id]
|
||||||
|
quotes[#quotes+1] = msg.text:sub(11)
|
||||||
|
|
||||||
|
serialize_to_file(quotes_table, quotes_file)
|
||||||
|
|
||||||
|
return "done!"
|
||||||
|
end
|
||||||
|
|
||||||
|
function get_quote(msg)
|
||||||
|
local to_id = tostring(msg.to.id)
|
||||||
|
local quotes_phrases
|
||||||
|
|
||||||
|
quotes_table = read_quotes_file()
|
||||||
|
quotes_phrases = quotes_table[to_id]
|
||||||
|
|
||||||
|
return quotes_phrases[math.random(1,#quotes_phrases)]
|
||||||
|
end
|
||||||
|
|
||||||
|
function run(msg, matches)
|
||||||
|
if string.match(msg.text, "!quote$") then
|
||||||
|
return get_quote(msg)
|
||||||
|
elseif string.match(msg.text, "!addquote (.+)$") then
|
||||||
|
quotes_table = read_quotes_file()
|
||||||
|
return save_quote(msg)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return {
|
||||||
|
description = "Save quote",
|
||||||
|
description = "Quote plugin, you can create and retrieves random quotes",
|
||||||
|
usage = {
|
||||||
|
"!addquote [msg]",
|
||||||
|
"!quote",
|
||||||
|
},
|
||||||
|
patterns = {
|
||||||
|
"^!addquote (.+)$",
|
||||||
|
"^!quote$",
|
||||||
|
},
|
||||||
|
run = run
|
||||||
|
}
|
@ -1,37 +0,0 @@
|
|||||||
do
|
|
||||||
local quotes_file = './data/quotes.lua'
|
|
||||||
local quotes_table
|
|
||||||
|
|
||||||
function read_quotes_file()
|
|
||||||
local f = io.open(quotes_file, "r+")
|
|
||||||
|
|
||||||
if f == nil then
|
|
||||||
serialize_to_file({}, quotes_file)
|
|
||||||
else
|
|
||||||
f:close()
|
|
||||||
end
|
|
||||||
return loadfile (quotes_file)()
|
|
||||||
end
|
|
||||||
|
|
||||||
function get_quote(msg)
|
|
||||||
local to_id = tostring(msg.to.id)
|
|
||||||
local quotes_phrases
|
|
||||||
|
|
||||||
quotes_table = read_quotes_file()
|
|
||||||
quotes_phrases = quotes_table[to_id]
|
|
||||||
|
|
||||||
return quotes_phrases[math.random(1,#quotes_phrases)]
|
|
||||||
end
|
|
||||||
|
|
||||||
function run(msg, matches)
|
|
||||||
return get_quote(msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
return {
|
|
||||||
description = "retrieves random quotes",
|
|
||||||
usage = "!quote",
|
|
||||||
patterns = {
|
|
||||||
"^!quote$"},
|
|
||||||
run = run
|
|
||||||
}
|
|
||||||
end
|
|
@ -1,56 +0,0 @@
|
|||||||
do
|
|
||||||
local quotes_file = './data/quotes.lua'
|
|
||||||
local quotes_table
|
|
||||||
|
|
||||||
function read_quotes_file()
|
|
||||||
local f = io.open(quotes_file, "r+")
|
|
||||||
|
|
||||||
if f == nil then
|
|
||||||
print ('Created a new quotes file on '..quotes_file)
|
|
||||||
serialize_to_file({}, quotes_file)
|
|
||||||
else
|
|
||||||
print ('Quotes loaded: '..quotes_file)
|
|
||||||
f:close()
|
|
||||||
end
|
|
||||||
return loadfile (quotes_file)()
|
|
||||||
end
|
|
||||||
|
|
||||||
function save_quote(msg)
|
|
||||||
local to_id = tostring(msg.to.id)
|
|
||||||
local quotes
|
|
||||||
local phrase
|
|
||||||
|
|
||||||
phrase = string.match(msg.text, "!addquote (.+)")
|
|
||||||
if (phrase == nil) then
|
|
||||||
return "Usage: !addquote quote"
|
|
||||||
end
|
|
||||||
|
|
||||||
if quotes_table == nil then
|
|
||||||
quotes_table = {}
|
|
||||||
end
|
|
||||||
|
|
||||||
if quotes_table[to_id] == nil then
|
|
||||||
print ('New quote key to_id: '..to_id)
|
|
||||||
quotes_table[to_id] = {}
|
|
||||||
end
|
|
||||||
|
|
||||||
quotes = quotes_table[to_id]
|
|
||||||
quotes[#quotes+1] = phrase
|
|
||||||
|
|
||||||
serialize_to_file(quotes_table, quotes_file)
|
|
||||||
|
|
||||||
return "done!"
|
|
||||||
end
|
|
||||||
|
|
||||||
function run(msg, matches)
|
|
||||||
quotes_table = read_quotes_file()
|
|
||||||
return save_quote(msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
return {
|
|
||||||
description = "Save quote",
|
|
||||||
usage = "!addquote (quote)",
|
|
||||||
patterns = {"^!addquote (.+)$"},
|
|
||||||
run = run
|
|
||||||
}
|
|
||||||
end
|
|
Reference in New Issue
Block a user