Software /
code /
prosody
Comparison
util/rsm.lua @ 10761:b53193bb21cc
util.rsm: Fix passing number as attribute
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 23 Apr 2020 18:16:36 +0200 |
parent | 7852:e594010e1ba0 |
child | 10763:e0e2ae050d65 |
comparison
equal
deleted
inserted
replaced
10760:c9d1d9c80e1e | 10761:b53193bb21cc |
---|---|
9 -- XEP-0313: Message Archive Management for Prosody | 9 -- XEP-0313: Message Archive Management for Prosody |
10 -- | 10 -- |
11 | 11 |
12 local stanza = require"util.stanza".stanza; | 12 local stanza = require"util.stanza".stanza; |
13 local tostring, tonumber = tostring, tonumber; | 13 local tostring, tonumber = tostring, tonumber; |
14 local s_format = string.format; | |
14 local type = type; | 15 local type = type; |
15 local pairs = pairs; | 16 local pairs = pairs; |
17 | |
18 local function inttostr(n) | |
19 return s_format("%d", n); | |
20 end | |
16 | 21 |
17 local xmlns_rsm = 'http://jabber.org/protocol/rsm'; | 22 local xmlns_rsm = 'http://jabber.org/protocol/rsm'; |
18 | 23 |
19 local element_parsers = {}; | 24 local element_parsers = {}; |
20 | 25 |
43 end | 48 end |
44 | 49 |
45 local element_generators = setmetatable({ | 50 local element_generators = setmetatable({ |
46 first = function(st, data) | 51 first = function(st, data) |
47 if type(data) == "table" then | 52 if type(data) == "table" then |
48 st:tag("first", { index = data.index }):text(data[1]):up(); | 53 st:tag("first", { index = inttostr(data.index) }):text(data[1]):up(); |
49 else | 54 else |
50 st:tag("first"):text(tostring(data)):up(); | 55 st:tag("first"):text(tostring(data)):up(); |
51 end | 56 end |
52 end; | 57 end; |
53 before = function(st, data) | 58 before = function(st, data) |