view tests/vlad3.ur @ 1455:913d9c2f55c9

Corify Basis.unit to empty record; this is needed so that specialize can see that they are equivalent.
author Karn Kallio <kkallio@eka>
date Fri, 06 May 2011 16:24:45 -0430
parents 7e3226c97678
children
line wrap: on
line source
cookie user : {EMail : string}

fun main () =
    ro <- getCookie user;
    case ro of
        Some u => welcome u
      | _ => login ()

and welcome u = return <xml><body>
  Welcome {[u.EMail]}. <a link={logout ()}>Logout</a>
</body></xml>

and logout () =
    clearCookie user;
    main ()

and login () = return <xml><body>
  <form>E-mail:<textbox{#EMail}/><submit action={signin}/></form>
</body></xml>
   
and signin r =
    setCookie user {Value = {EMail = r.EMail},
                    Expires = None, (* Some (readError "2012-11-6
00:00:00"), *)
                    Secure = False
                   };
    main ()