Escape user values when building formspec

master
bell07 2016-11-13 15:15:56 +01:00 committed by rubenwardy
parent 56e13744b5
commit 58a7977fef
2 changed files with 20 additions and 19 deletions

View File

@ -11,14 +11,15 @@ local s = smartfs.create("smartfs:form",function(state)
state:toggle(0,2,3,1,"tg",{"plenty..","of..","custom..","elements"})
state:checkbox(2,1,"c","Easy code",true)
local area = state:textarea(1,3.5,9,4,"ta","Code:")
local res = "smartfs.create(\"smartfs:form\",function(state)\n"
res = res .. "\tstate:size(10,7)\n"
res = res .. "\tstate:label(2,0,\"lbl\",\"SmartFS example formspec!\")\n"
res = res .. "\tstate:field(7,1,3,1,\"txt\",\"Textbox\")\n"
res = res .. "\tstate:image(0,0,2,2,\"img\",\"default_stone.png\")\n"
res = res .. "\tstate:toggle(0,2,3,1,\"tg\",{\"plenty..\",\"of..\",\"custom..\",\"elements\"})\n"
res = res .. "\tstate:checkbox(2,1,\"c\",\"Easy code\",true)\n"
res = res .. "end)"
local res = [[
smartfs.create("smartfs:form",function(state)
state:size(10,7)
state:label(2,0,"lbl","SmartFS example formspec!")
state:field(7,1,3,1,"txt","Textbox")
state:image(0,0,2,2,"img","default_stone.png")
state:toggle(0,2,3,1,"tg",{"plenty..","of..","custom..","elements"})
state:checkbox(2,1,"c","Easy code",true)
end)]]
area:setText(res)

View File

@ -440,7 +440,7 @@ smartfs.element("button",{
";"..
self.name..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
else
if self.data.closes then
@ -451,7 +451,7 @@ smartfs.element("button",{
";"..
self.name..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
else
return "button["..
@ -461,7 +461,7 @@ smartfs.element("button",{
";"..
self.name..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
end
end
@ -512,7 +512,7 @@ smartfs.element("toggle",{
";"..
self.name..
";"..
self.data.list[self.data.id]..
minetest.formspec_escape(self.data.list[self.data.id])..
"]"
end,
submit = function(self, fields, player)
@ -557,7 +557,7 @@ smartfs.element("label",{
return "label["..
self.data.pos.x..","..self.data.pos.y..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
end,
setPosition = function(self,x,y)
@ -584,9 +584,9 @@ smartfs.element("field",{
";"..
self.name..
";"..
self.data.label..
minetest.formspec_escape(self.data.label)..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
elseif self.data.pwd then
return "pwdfield["..
@ -596,7 +596,7 @@ smartfs.element("field",{
";"..
self.name..
";"..
self.data.label..
minetest.formspec_escape(self.data.label)..
"]"
else
return "field["..
@ -606,9 +606,9 @@ smartfs.element("field",{
";"..
self.name..
";"..
self.data.label..
minetest.formspec_escape(self.data.label)..
";"..
self.data.value..
minetest.formspec_escape(self.data.value)..
"]"
end
end,
@ -680,7 +680,7 @@ smartfs.element("checkbox",{
";"..
self.name..
";"..
self.data.label..
minetest.formspec_escape(self.data.label)..
";"..self.data.value.."]"
end,
submit = function(self, fields, player)