/modules/mod_base/services/service_base_persistent_set.erl

https://code.google.com/p/zotonic/ · Erlang · 32 lines · 19 code · 8 blank · 5 comment · 0 complexity · ddc0425b7a259a5a3a20bd3caca03e98 MD5 · raw file

  1. %% @author Arjan Scherpenisse <arjan@scherpenisse.net>
  2. %% @copyright 2009 Arjan Scherpenisse
  3. %% Date: 2009-10-03
  4. %%
  5. %% @doc Set a value in the zotonic visitor record.
  6. -module(service_base_persistent_set).
  7. -author("Arjan Scherpenisse <arjan@scherpenisse.net>").
  8. -svc_title("Set a value in the Zotonic persistent record.").
  9. -svc_needauth(false).
  10. -export([process_get/2]).
  11. -include_lib("zotonic.hrl").
  12. process_get(_ReqData, Context) ->
  13. case z_context:get_q("key", Context) of
  14. X when X =:= undefined orelse X =:= [] ->
  15. {error, missing_arg, "key"};
  16. Key ->
  17. case z_context:get_q("value", Context) of
  18. X when X =:= undefined orelse X =:= [] ->
  19. {error, missing_arg, "value"};
  20. Value ->
  21. z_context:set_persistent(list_to_atom(Key), Value, Context),
  22. z_convert:to_json([{key, Key}, {value, Value}])
  23. end
  24. end.