webmcp
view framework/env/param/get_id.lua @ 1:985024b16520
Version 1.0.1
New feature: JSON requests
Changes in ui.paginate: Current page setting is directly fetched from CGI params, instead of view params
Changed behavior of load methods of atom library to accept nil as input
Bugfixes in mondelefant_atom_connector timestamp(tz) loaders
Added global constant _WEBMCP_VERSION containing a version string
New feature: JSON requests
Changes in ui.paginate: Current page setting is directly fetched from CGI params, instead of view params
Changed behavior of load methods of atom library to accept nil as input
Bugfixes in mondelefant_atom_connector timestamp(tz) loaders
Added global constant _WEBMCP_VERSION containing a version string
| author | jbe | 
|---|---|
| date | Tue Nov 17 12:00:00 2009 +0100 (2009-11-17) | 
| parents | 9fdfb27f8e67 | 
| children | 2f8d8edd1836 | 
 line source
     1 --[[--
     2 value =        -- value of the id casted to the chosen param_type
     3 param.get_id(
     4   param_type   -- desired type of the returned value
     5 )
     7 Same as param.get(...), but operates on a special id parameter. An id is set via a __webmcp_id GET or POST parameter or an 'id' option to execute.view{...} or execute.action{...}. In a normal setup a beauty URL of the form http://www.example.com/example-application/example-module/example-view/<id>.html will cause the id to be set.
     9 --]]--
    11 function param.get_id(param_type)
    12   local param_type = param_type or atom.integer
    13   if param._exchanged then
    14     local value = param._exchanged.id
    15     if value ~= nil and not atom.has_type(value, param_type) then
    16       error("Parameter has unexpected type.")
    17     end
    18     return value
    19   else
    20     return param.get("_webmcp_id", param_type)
    21   end
    22 end
