summaryrefslogtreecommitdiffhomepage
path: root/libs/web/src/template_lualib.c
diff options
context:
space:
mode:
Diffstat (limited to 'libs/web/src/template_lualib.c')
-rw-r--r--libs/web/src/template_lualib.c30
1 files changed, 24 insertions, 6 deletions
diff --git a/libs/web/src/template_lualib.c b/libs/web/src/template_lualib.c
index f40ef2d6ae..0d43641041 100644
--- a/libs/web/src/template_lualib.c
+++ b/libs/web/src/template_lualib.c
@@ -44,11 +44,11 @@ int template_L_parse(lua_State *L)
return rv;
}
-int template_L_sanitize_utf8(lua_State *L)
+int template_L_utf8(lua_State *L)
{
size_t len = 0;
const char *str = luaL_checklstring(L, 1, &len);
- char *res = sanitize_utf8(str, len);
+ char *res = utf8(str, len);
if (res != NULL)
{
@@ -61,11 +61,28 @@ int template_L_sanitize_utf8(lua_State *L)
return 0;
}
-int template_L_sanitize_pcdata(lua_State *L)
+int template_L_pcdata(lua_State *L)
{
size_t len = 0;
const char *str = luaL_checklstring(L, 1, &len);
- char *res = sanitize_pcdata(str, len);
+ char *res = pcdata(str, len);
+
+ if (res != NULL)
+ {
+ lua_pushstring(L, res);
+ free(res);
+
+ return 1;
+ }
+
+ return 0;
+}
+
+int template_L_striptags(lua_State *L)
+{
+ size_t len = 0;
+ const char *str = luaL_checklstring(L, 1, &len);
+ char *res = striptags(str, len);
if (res != NULL)
{
@@ -129,8 +146,9 @@ static int template_L_hash(lua_State *L) {
/* module table */
static const luaL_reg R[] = {
{ "parse", template_L_parse },
- { "sanitize_utf8", template_L_sanitize_utf8 },
- { "sanitize_pcdata", template_L_sanitize_pcdata },
+ { "utf8", template_L_utf8 },
+ { "pcdata", template_L_pcdata },
+ { "striptags", template_L_striptags },
{ "load_catalog", template_L_load_catalog },
{ "close_catalog", template_L_close_catalog },
{ "change_catalog", template_L_change_catalog },