webmcp
annotate framework/env/encode/file_path_element.lua @ 11:d76a8857ba62
Added ui.partial and other functions, which allow partial content replacement using XMLHttpRequests; Image support for ui.link
Also includes following changes:
- Fix for rocketcgi library to accept POST data content-types, which contain additional charset information.
- Support arrays passed as params to encode.url (only for keys ending with "[]")
- Version information changed to "1.0.7"
Documentation for added functions is not yet complete.
Also includes following changes:
- Fix for rocketcgi library to accept POST data content-types, which contain additional charset information.
- Support arrays passed as params to encode.url (only for keys ending with "[]")
- Version information changed to "1.0.7"
Documentation for added functions is not yet complete.
author | jbe/bsw |
---|---|
date | Fri Feb 12 18:40:22 2010 +0100 (2010-02-12) |
parents | 9fdfb27f8e67 |
children |
rev | line source |
---|---|
jbe/bsw@0 | 1 --[[-- |
jbe/bsw@0 | 2 encoded_path_element = -- string which can't contain evil stuff like "/" |
jbe/bsw@0 | 3 encode.file_path_element( |
jbe/bsw@0 | 4 path_element -- string to be encoded |
jbe/bsw@0 | 5 ) |
jbe/bsw@0 | 6 |
jbe/bsw@0 | 7 This function is encoding a string in a way that it can be used as a file or directory name, without security risks. See the source for details. |
jbe/bsw@0 | 8 |
jbe/bsw@0 | 9 --]]-- |
jbe/bsw@0 | 10 |
jbe/bsw@0 | 11 function encode.file_path_element(path_element) |
jbe/bsw@0 | 12 return ( |
jbe/bsw@0 | 13 string.gsub( |
jbe/bsw@0 | 14 string.gsub( |
jbe/bsw@0 | 15 path_element, "[^0-9A-Za-z_%.-]", |
jbe/bsw@0 | 16 function(char) |
jbe/bsw@0 | 17 return string.format("%%%02x", string.byte(char)) |
jbe/bsw@0 | 18 end |
jbe/bsw@0 | 19 ), "^%.", string.format("%%%%%02x", string.byte(".")) |
jbe/bsw@0 | 20 ) |
jbe/bsw@0 | 21 ) |
jbe/bsw@0 | 22 end |