login.erl 933 B

12345678910111213141516171819202122232425262728
  1. -module(login).
  2. -compile(export_all).
  3. -include_lib("kvs/include/feed.hrl").
  4. -include_lib("nitro/include/nitro.hrl").
  5. -include_lib("n2o/include/wf.hrl").
  6. main() -> #dtl{file="login", app=n2o_sample, bindings=[{body, body()}, {folders, folders()}]}.
  7. folders() -> string:join([filename:basename(F) || F <- filelib:wildcard(code:priv_dir(n2o_sample) ++ "/snippets/*/")], ",").
  8. body() ->
  9. [#span { id=display }, #br{},
  10. #span { body="Login: " }, #textbox{id=user, autofocus=true}, #br{},
  11. #span { body="Join/Create Feed: " }, #textbox{id=pass},
  12. #button{ id=loginButton, body="Login", postback=login, source=[user, pass]} ].
  13. event(login) ->
  14. User = case wf:q(user) of
  15. <<>> -> "anonymous";
  16. undefined -> "anonymous";
  17. E -> wf:to_list(E)
  18. end,
  19. wf:user(User),
  20. wf:info(?MODULE, "User: ~p", [wf:user()]),
  21. wf:redirect("index.htm?room=" ++ wf:to_list(wf:q(pass))),
  22. ok;
  23. event(_) -> [].