52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
local function save_value(msg, name, value)
 | 
						|
  if (not name or not value) then
 | 
						|
    return "Benutzung: !set Variable Wert"
 | 
						|
  end
 | 
						|
 | 
						|
  local hash = get_redis_hash(msg, 'variables')
 | 
						|
  if hash then
 | 
						|
     print('Saving variable to redis hash '..hash)
 | 
						|
    redis:hset(hash, name, value)
 | 
						|
    return "Gespeichert: "..name.." = "..value
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
local function delete_value(msg, name, value)
 | 
						|
  if msg.to.type == 'chat' then
 | 
						|
    hash = 'chat:'..msg.to.id..':variables'
 | 
						|
  end
 | 
						|
  if msg.to.type == 'user' then
 | 
						|
    hash = 'user:'..msg.from.id..':variables'
 | 
						|
  end
 | 
						|
  if redis:hexists(hash, name) == true then
 | 
						|
    print('Deleting variable from redis hash '..hash)
 | 
						|
    redis:hdel(hash, name, value)
 | 
						|
    return 'Variable "'..name..'" erfolgreich gelöscht!'
 | 
						|
  else
 | 
						|
    return 'Du kannst keine Variable löschen, die nicht existiert .-.'
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
local function run(msg, matches)
 | 
						|
  local name = string.sub(matches[1], 1, 50)
 | 
						|
  local value = string.sub(matches[2], 1, 1000)
 | 
						|
 | 
						|
  if value == "nil" then
 | 
						|
    text = delete_value(msg, name, value)
 | 
						|
  else
 | 
						|
    text = save_value(msg, name, value)
 | 
						|
  end
 | 
						|
  return text
 | 
						|
end
 | 
						|
 | 
						|
return {
 | 
						|
  description = "Setzt Variablen, nutze !get zum Abrufen.", 
 | 
						|
  usage = {
 | 
						|
    "/set [Variable] [Wert]: Speichert eine Variable mit einem Wert.",
 | 
						|
	"/set (Variable) nil: Löscht Variable"
 | 
						|
  },
 | 
						|
  patterns = {
 | 
						|
    "^/set ([^%s]+) (.+)$"
 | 
						|
  }, 
 | 
						|
  run = run 
 | 
						|
} |