view demo/cookie.ur @ 1906:0d2fdc2cc46c

Allow building in a separate build directory Signed-off-by: Anders Kaseorg <andersk@mit.edu> --- Makefile.am | 30 +++--- src/c/Makefile.am | 2 +- src/compiler.mlb | 2 +- src/sources | 302 +++++++++++++++++++++++++++--------------------------- 4 files changed, 168 insertions(+), 168 deletions(-)
author Anders Kaseorg <andersk@mit.edu>
date Fri, 22 Nov 2013 09:36:14 -0500
parents 93315ac00394
children
line wrap: on
line source
cookie c : {A : string, B : float, C : int}

fun set r =
    setCookie c {Value = {A = r.A, B = readError r.B, C = readError r.C},
                 Expires = None,
                 Secure = False};
    return <xml>Cookie set.</xml>

fun setExp r =
    setCookie c {Value = {A = r.A, B = readError r.B, C = readError r.C},
                 Expires = Some (readError "2012-11-6 00:00:00"),
                 Secure = False};
    return <xml>Cookie set robustly.</xml>

fun delete () =
    clearCookie c;
    return <xml>Cookie cleared.</xml>

fun main () =
    ro <- getCookie c;
    return <xml><body>
      {case ro of
           None => <xml>No cookie set.</xml>
         | Some v => <xml>
           Cookie: A = {[v.A]}, B = {[v.B]}, C = {[v.C]}<br/>
           <form><submit value="Delete" action={delete}/></form>
         </xml>}
      <br/><br/>

      <form>
        A: <textbox{#A}/><br/>
        B: <textbox{#B}/><br/>
        C: <textbox{#C}/><br/>
        <submit action={set}/>
      </form><br/>

      <form>
        <b>Version that expires on November 6, 2012:</b><br/>
        A: <textbox{#A}/><br/>
        B: <textbox{#B}/><br/>
        C: <textbox{#C}/><br/>
        <submit action={setExp}/>
      </form>
    </body></xml>