webmcp
annotate framework/env/encode/html.lua @ 2:72860d232f32
Version 1.0.2
Fixed bug with explicit garbage collection (requests > 256kB caused an error)
Views prefixed with an underscore can't be called externally
ui.paginate now displays the last page, if the selected page number is too high.
Fixed bug with explicit garbage collection (requests > 256kB caused an error)
Views prefixed with an underscore can't be called externally
ui.paginate now displays the last page, if the selected page number is too high.
author | jbe/bsw |
---|---|
date | Thu Dec 10 12:00:00 2009 +0100 (2009-12-10) |
parents | 9fdfb27f8e67 |
children |
rev | line source |
---|---|
jbe/bsw@0 | 1 --[[-- |
jbe/bsw@0 | 2 result = -- encoded string |
jbe/bsw@0 | 3 encode.html( |
jbe/bsw@0 | 4 str -- original string |
jbe/bsw@0 | 5 ) |
jbe/bsw@0 | 6 |
jbe/bsw@0 | 7 This function replaces the special characters '<', '>', '&' and '"' by their HTML entities '<', '&rt;', '&' and '"'. |
jbe/bsw@0 | 8 |
jbe/bsw@0 | 9 NOTE: ACCELERATED FUNCTION |
jbe/bsw@0 | 10 Do not change unless also you also update webmcp_accelerator.c |
jbe/bsw@0 | 11 |
jbe/bsw@0 | 12 --]]-- |
jbe/bsw@0 | 13 |
jbe/bsw@0 | 14 function encode.html(text) |
jbe/bsw@0 | 15 -- TODO: perhaps filter evil control characters? |
jbe/bsw@0 | 16 return ( |
jbe/bsw@0 | 17 string.gsub( |
jbe/bsw@0 | 18 text, '[<>&"]', |
jbe/bsw@0 | 19 function(char) |
jbe/bsw@0 | 20 if char == '<' then |
jbe/bsw@0 | 21 return "<" |
jbe/bsw@0 | 22 elseif char == '>' then |
jbe/bsw@0 | 23 return ">" |
jbe/bsw@0 | 24 elseif char == '&' then |
jbe/bsw@0 | 25 return "&" |
jbe/bsw@0 | 26 elseif char == '"' then |
jbe/bsw@0 | 27 return """ |
jbe/bsw@0 | 28 end |
jbe/bsw@0 | 29 end |
jbe/bsw@0 | 30 ) |
jbe/bsw@0 | 31 ) |
jbe/bsw@0 | 32 end |