class CGI

CGI Extensions

Public Instance Methods

esc(str) click to toggle source

Return an html “safe” version of the string, where every &, < and > are replaced with appropriate entities.

# File lib/more/facets/cgi.rb, line 33
def esc(str)
  str.gsub(/&/,'&amp;').gsub(/</,'&lt;').gsub(/>/,'&gt;')
end
escformat(str) click to toggle source

Calls esc, and then further replaces carriage returns and quote characters with entities.

# File lib/more/facets/cgi.rb, line 38
def escformat(str)
  esc(str).gsub(/[\r\n]+/,'&#13;&#10;').gsub(%r"|,'&quot;').gsub(%r'|,'&#39;')
end
marshal_from_cgi(name) click to toggle source

Create an hidden input field through which an object can can be marshalled. This makes it very easy to pass from data between requests.

# File lib/more/facets/cgi.rb, line 21
def marshal_from_cgi(name)
  if self.params.has_key?("__#{name}__")
    return Marshal.load(CGI.unescape(self["__#{name}__"][0]))
  end
end
marshal_to_cgi(name, iobj) click to toggle source

Create an hidden input field through which an object can can be marshalled. This makes it very easy to pass from data betwenn requests.

# File lib/more/facets/cgi.rb, line 14
def marshal_to_cgi(name, iobj)
  data = CGI.escape(Marshal.dump(iobj))
  return %Q{<input type="hidden" name="__#{name}__" value="#{data}"/>\n}
end