2 * Written by Richard W.M. Jones <rich@merjis.com>.
3 * Copyright (C) 2004 Merjis Ltd.
4 * $Id: diff.ml,v 1.4 2004/09/08 09:54:28 rich Exp $
13 open Cocanwiki_template
16 let template = get_template "diff.html"
18 let run r (q : cgi) (dbh : Dbi.connection) (hostid, _, _) _ =
19 let page = q#param "page" in
20 let page = if page = "" then "index" else page in
22 (* "version" parameter, required, is the newest version. If the
23 * "old_version" parameter is given then we compare against that.
24 * Otherwise we look in the database to find the version of this
25 * page previous to "version", and use that as "old_version". If
26 * there is no older version in the database, then we compare against
27 * version '0' which means a blank page.
29 * NB. In case you hadn't worked it out yet, version numbers are
32 let version = int_of_string (q#param "version") in
34 let diff, old_version =
36 let old_version = int_of_string (q#param "old_version") in
37 get_diff dbh hostid page ~old_version ~version ()
40 get_diff dbh hostid page ~version () in
42 template#set "version" (string_of_int version);
43 template#set "old_version" (string_of_int old_version);
44 template#set "page" page;
45 template#set "diff" diff;
50 register_script ~restrict:[CanEdit] run