The following commit has been merged in the master branch:
commit 40f2ac123704e74ecfe23ffc7fa9b4057330a94b
Author: Pierre Chambart <chamb...@crans.org>
Date:   Tue Mar 27 17:59:58 2012 +0200

    Imported Upstream version 2.1.1b

diff --git a/CHANGES b/CHANGES
index 7031f5d..3543f17 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,25 +1,23 @@
 ===== 2.1.1 (2012-03-20) =====
 
- * Server: Add Eliom references of scope site
- * Server: Add an non-Lwt interface to volatile Eliom references
- * Client: Add an option to restrict usage of XHR.
+ * Add Eliom references of scope site
+ * Add an non-Lwt interface to volatile Eliom references
  * Bugfixes:
- ** Client: More robust and portable history handling
- ** Client: More robust CSS preloading (change_page)
- ** Client: Better compatibility with Opera
+ ** More robust and portable history handling
+ ** More robust CSS preloading (change_page)
 
 ===== 2.1.0 (2012-02-24) =====
 
  * Page loading rewriten.
  ** We do not traverse the HTML tree anymore for retrieving links
    and putting events handlers, it use querySelectorAll instead.
-   (with a fallback for older browsers)
+   ( with a fallback for older browsers )
  *** We do not send a sparse tree along the page anymore.
  *** It is faster and more resilient to ugly browser plugins
  ** Add css loading optimisations: It fetch the css included
     using @include with XHR before changing page and construct only
     one concatenated css. It avoids page blinking when the css change
-    and is faster (browsers tend to render the page once per css).
+    and is faster ( browsers tend to render the page once per css ).
  ** Unwrapping hand rewritten in js.
  ** And a lot of other optimisations.
 
@@ -41,7 +39,7 @@
  * Server API Changes:
  ** Add Eliom_state.get_*_session_group_size to know the number of
     session in a session group
- ** Parameters of type any can't be suffixes (semantic problem)
+ ** Parameters of type any can't be suffixes ( semantic problem )
  ** Add Eliom_comet.wait_timeout to notify when a client isn't active
  ** allow to setup "Cache-policy: max-age" with Text, CssText and
     Files modules.
@@ -49,14 +47,14 @@
 
  * Client API Changes:
  ** add an Eliom_dom module provinding imperative function on unique HTML5.elt.
-    (for instance {{{appendChild: ?before:'a elt -> 'b elt -> 'c elt -> 
unit}}}).
+    ( for instance {{{appendChild: ?before:'a elt -> 'b elt -> 'c elt -> 
unit}}} ).
  ** HTML5.M.a_on{click,...} functions directly expect a
     function as parameter (XML.event_handler_of_function isn't
     required anymore).
  ** Eliom_comet: configuration option for time until timeout after the focus 
is lost
  ** Handling wrapping of int32 type.
  ** Onload event handlers on HTML elements are executed when they are 
converted to
-    DOM (using Eliom_client.of_ functions). This allows to add them to nodes 
not
+    DOM ( using Eliom_client.of_ functions ). This allows to add them to nodes 
not
     sent in the page.
  ** Calls to {{{Eliom_services.onload}}} are taken into account for services 
sending
     caml values. The handlers are executed when the call to
@@ -118,11 +116,11 @@
 
  * Feature:
  ** api history: when the api history is available, application URLs are more
-    readable (no more {{{#!}}})
+    readable ( no more #! )
  * Bugfixes:
- ** fix browser compatibility: it should work with Firefox (>= 3.0), Chrome
-    (all recent version we tested), Safari 5, Opera (tested 11.51), Internet
-    explorer (9, ie 8 almost work)
+ ** fix browser compatibility: it should work with Firefox ( >= 3.0 ), Chrome
+    ( all recent version we tested ), Safari 5, Opera ( tested 11.51 ), 
Internet
+    explorer ( 9, ie 8 almost work )
  ** in forms declared outside of the sp's scope, hrefs were incorrect:
     url calculation is now done for each request
  ** the function {{{Eliom_client.caml_call_service}}} was broken with some kind
@@ -130,16 +128,16 @@
  ** application cookies are now always sent
  ** fix incorrect sharing of type variables in the syntax extension (thanks to
     William Le Ferrand)
- ** 404 and 403 errors are not dropped by applications anymore (This fix is
+ ** 404 and 403 errors are not dropped by applications anymore ( This fix is
     partial: when the page content is application content, this still does not
-    work when an exception handler returns something else)
+    work when an exception handler returns something else )
  ** Fix problems with url generation for non-attached coservices inside an
     application
  ** tail recursive marshalling and demarshalling: no more limit on the depth of
     data sent along the page
  ** Fix problems with redirection and action with `NoReload exiting the 
application
- ** Handle correctly 204 code in application (do nothing with change page, fail
-    with caml_call_service)
+ ** Handle correctly 204 code in application ( do nothing with change page, 
fail
+    with caml_call_service )
  ** Fix escape character '>': problem with strings containing "]]>"
 
 ===== 2.0-rc1 (2011-07-15) =====
@@ -148,12 +146,12 @@
     non-eliom application services
   * Stateless implementation of comet channels
   * Scope and state names parameters of functions are now fused in one
-    parameter (called scope)
+    parameter ( called scope )
   * Change the type of 'send' functions: forbid use of incompatible output
     with Eliom_output.Any together.
   * Change the format of page loaded by an application: all pages are sent
-    in HTML5 format. (first answers were in HTML5 subsequent were marshalled
-    caml tree)
+    in HTML5 format. ( first answers were in HTML5 subsequent were marshalled
+    caml tree )
   * XML representation is now shared by client and server: conversion to
     Dom nodes is made by Eliom_client.Html5.of_ functions
   * Remove the need for an application container: application pages are
diff --git a/VERSION b/VERSION
index 346fc3b..029b3e8 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.1.1a
+2.1.1b
diff --git a/doc/client/Makefile b/doc/client/Makefile
index 39d8139..00c1166 100644
--- a/doc/client/Makefile
+++ b/doc/client/Makefile
@@ -17,7 +17,8 @@ api-html/index.html: indexdoc ${ODOC}
 
 api-man/Eliom_pervasives.client.3o: ${ODOC}
        mkdir -p api-man
-       $(OCAMLDOC) ${LIBS} -d api-man -man-mini $(addprefix -load ,${ODOC}) 
-man -man-suffix client.3o
+       $(OCAMLDOC) ${LIBS} -d api-man -man-mini $(addprefix -load ,${ODOC}) 
-man \
+         -man-section 3o -man-suffix client.3o
 
 api-wiki/index.wiki: indexdoc ${ODOC}
        mkdir -p api-wiki
diff --git a/doc/server/Makefile b/doc/server/Makefile
index 13d1d5f..9007138 100644
--- a/doc/server/Makefile
+++ b/doc/server/Makefile
@@ -17,7 +17,8 @@ api-html/index.html: indexdoc ${ODOC}
 
 api-man/Eliom_pervasives.server.3o: ${ODOC}
        mkdir -p api-man
-       $(OCAMLDOC) ${LIBS} -d api-man -man-mini $(addprefix -load ,${ODOC}) 
-man -man-suffix server.3o
+       $(OCAMLDOC) ${LIBS} -d api-man -man-mini $(addprefix -load ,${ODOC}) 
-man \
+         -man-section 3o -man-suffix server.3o
 
 api-wiki/index.wiki: indexdoc ${ODOC}
        mkdir -p api-wiki
diff --git a/src/Makefile b/src/Makefile
index 5a11502..b1eafdf 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -28,6 +28,7 @@ clean:
        ${MAKE} -C tools clean
        ${MAKE} -C syntax clean
        -rm -f files/META  files/META.${PROJECTNAME}
+       -rm -f ../local/etc/$(PROJECTNAME).conf
 
 distclean:
        ${MAKE} -C server distclean DEPEND=no
diff --git a/src/client/Makefile b/src/client/Makefile
index 6fd37d5..12dd3c9 100644
--- a/src/client/Makefile
+++ b/src/client/Makefile
@@ -106,8 +106,8 @@ uninstall:
 ## Clean up
 
 clean:
-       -rm -f *.cm[ioax] *.cmxa *.cmxs *.o *.a *.annot *.deps
-       -cd private && rm -f *.cm[ioax] *.cmxa *.cmxs *.o *.a *.annot
+       -rm -f *.cm[ioax] *.cmxa *.cmxs *.o *.a *.annot *.deps *.odoc *.so
+       -cd private && rm -f *.cm[ioax] *.cmxa *.cmxs *.o *.a *.annot *.odoc
 
 distclean: clean
        -rm -f *~ \#* .\#*
diff --git a/src/client/eliom_client_main.ml b/src/client/eliom_client_main.ml
index 6461bab..9892011 100644
--- a/src/client/eliom_client_main.ml
+++ b/src/client/eliom_client_main.ml
@@ -44,5 +44,8 @@ let onload ev =
     Firebug.console##timeEnd(Js.string "onload");
   Js._false
 
+let load_ev = Dom.Event.make "load"
+
 let _ =
-  Dom_html.window##onload <- Dom_html.handler onload
+  Dom.addEventListener Dom_html.window load_ev
+    (Dom.handler onload) Js._true
diff --git a/src/client/eliom_dom.mli b/src/client/eliom_dom.mli
index 5f7a57f..9e3e25b 100644
--- a/src/client/eliom_dom.mli
+++ b/src/client/eliom_dom.mli
@@ -31,27 +31,27 @@ open HTML5
 (** The function [appendChild e1 e2] inserts the element [e2] as last
     child of [e1]. If the optional parameter [~before:e3] is present
     and if [e3] is a child of [e1], then [e2] is inserted before [e3]
-    in the list of [e1] childs. *)
+    in the list of [e1] children. *)
 val appendChild: ?before:'a elt -> 'b elt ->  'c elt -> unit
 
-(** The function [appendChilds e1 elts] inserts [elts] as last childs
+(** The function [appendChilds e1 elts] inserts [elts] as last children
     of [e1]. If the optional parameter [~before:e3] is present and if
     [e3] is a child of [e1], then [elts] are inserted before [e3] in
-    the list of [e1] childs. *)
+    the list of [e1] children. *)
 val appendChilds: ?before:'a elt -> 'b elt ->  'c elt list -> unit
 
 (** The function [removeChild e1 e2] removes for [e2] from the list of
-    [e1] childs. *)
+    [e1] children. *)
 val removeChild: 'a elt -> 'b elt -> unit
 
 (** The function [replace e1 e2 e3] replaces for [e2] by [e3] in the
-    list of [e1] childs. *)
+    list of [e1] children. *)
 val replaceChild: 'a elt -> 'b elt -> 'c elt -> unit
 
-(** The function [removeAllChild e1] removes [e1] childs. *)
+(** The function [removeAllChild e1] removes [e1] children. *)
 val removeAllChild: 'a elt -> unit
 
-(** The function [replaceAllChild e1 elts] replaces all the childs of
+(** The function [replaceAllChild e1 elts] replaces all the children of
     [e1] by [elt]. *)
 val replaceAllChild: 'a elt -> 'b elt list -> unit
 
@@ -101,7 +101,7 @@ end
 
 (** The function [scrollIntoView elt] scroll the page to a position
     where [elt] is displayed at the top of the window. If the optional
-    paramater [~bottom:true] is present, the page is scrolled to a
+    parameter [~bottom:true] is present, the page is scrolled to a
     position where [elt] is displayed at the bottom of the window. *)
 val scrollIntoView: ?bottom:bool -> 'a elt -> unit
 
diff --git a/src/client/eliom_pervasives.mli b/src/client/eliom_pervasives.mli
index 32e63ef..10f9273 100644
--- a/src/client/eliom_pervasives.mli
+++ b/src/client/eliom_pervasives.mli
@@ -305,6 +305,7 @@ module HTML5 : sig
 
     val lazy_form:
       ([< HTML5_types.form_attrib ], [< HTML5_types.form_content_fun ], [> 
HTML5_types.form ]) lazy_plus
+    (**/**)
 
   end
 
@@ -332,6 +333,7 @@ module HTML5 : sig
 
     val lazy_form:
       ([< HTML5_types.form_attrib ], [< HTML5_types.form_content_fun ], [> 
HTML5_types.form ]) lazy_plus
+    (**/**)
 
   end
 
@@ -482,6 +484,7 @@ module HTML5 : sig
 
   (**/**)
   val string_of_id : 'a id -> string
+  (**/**)
 
 end
 
diff --git a/src/client/eliom_request.ml b/src/client/eliom_request.ml
index 141431c..88a32fd 100644
--- a/src/client/eliom_request.ml
+++ b/src/client/eliom_request.ml
@@ -102,12 +102,14 @@ let redirect_post_form_elt ?(post_args=[]) ?(form_arg=[]) 
url =
        failwith "can't do POST redirection with file parameters") form_arg)
      @post_args)
 
+(* CCC take care: this must remain of the same syntax as non localised
+   non persistent get parameter name *)
+let nl_get_appl_parameter = "__nl_n_eliom-process.p"
+let nl_template_string = "__nl_n_eliom-template.name"
 let nl_template =
   Eliom_parameters.make_non_localized_parameters
     ~prefix:"eliom" ~name:"template"
     (Eliom_parameters.string "name")
-(* Warning: it must correspond to [nl_template]. *)
-let nl_template_string = "__nl_n_eliom-template.name"
 
 let rec send ?(expecting_process_page = false) ?cookies_info
     ?get_args ?post_args ?form_arg url result =
@@ -169,7 +171,7 @@ let rec send ?(expecting_process_page = false) ?cookies_info
          browser won't cache the content of the page ( for instance
          when clicking the back button ). That way we are sure that an
          xhr answer won't be used in place of a normal answer. *)
-      then (Eliom_common.nl_get_appl_parameter,"true")::get_args
+      then (nl_get_appl_parameter,"true")::get_args
       else get_args
     in
     let form_contents =
@@ -250,7 +252,8 @@ let rec send ?(expecting_process_page = false) ?cookies_info
   lwt (url, content) = aux 0 ?cookies_info ?get_args ?post_args ?form_arg url 
in
   let filter_url url =
     { url with Url.hu_arguments =
-        List.filter (fun (e,_) -> e <> nl_template_string) 
url.Url.hu_arguments } in
+        List.filter (fun (e,_) ->
+           e <> nl_get_appl_parameter && e <> nl_template_string) 
url.Url.hu_arguments } in
   Lwt.return (
     (match Url.url_of_string url with
       | Some (Url.Http url) ->
diff --git a/src/common/eliom_common_base.ml b/src/common/eliom_common_base.ml
index cbdf6f4..df230bc 100644
--- a/src/common/eliom_common_base.ml
+++ b/src/common/eliom_common_base.ml
@@ -246,7 +246,3 @@ type node_ref = string
 
 
 (****** *)
-
-(* CCC take care: this must remain of the same syntax as non localised
-   non persistent get parameter name *)
-let nl_get_appl_parameter = "__nl_n_eliom-process.p"
diff --git a/src/common/sigs/eliom_forms.mli b/src/common/sigs/eliom_forms.mli
index faaa293..c8a5c84 100644
--- a/src/common/sigs/eliom_forms.mli
+++ b/src/common/sigs/eliom_forms.mli
@@ -76,8 +76,8 @@ type for_attrib
 
     - [protocol] is:
     {ul {- [https] if the [service] has been created with [~https:true]
-    or the optional paramater [~https] is [true];}
-    {- [http] if  the optional paramater [~https] is [false];}
+    or the optional parameter [~https] is [true];}
+    {- [http] if  the optional parameter [~https] is [false];}
     {- the current request protocol if available;}
     {- [http] in any other case.}}
     - [hostname] is:
@@ -105,11 +105,11 @@ type for_attrib
     If given the optional parameter [~fragment] is prefixed by [#]
     and appended to the URL.
 
-    The optional parameter [keep_nl_params] allows to override the
+    The optional parameter [keep_nl_params] allows one to override the
     [keep_nl_params] parameter used when creating the [service], see
     {!val:Eliom_services.service} for a detailled description.
 
-    The optional paramater [nl_params] allows to add non localized
+    The optional parameter [nl_params] allows one to add non localized
     GET parameter to the URL.  See the eliom manual for more
     information about {% <<a_manual chapter="params"
     fragment="nonlocalizedparameters"|non localized parameters>>%}.
@@ -245,7 +245,7 @@ val make_proto_prefix :
     process is stopped. The [~xhr] parameter has no effect outside
     an Eliom application.
 
-    The optional parameter [~a] allows to add extra HTML attributes to
+    The optional parameter [~a] allows one to add extra HTML attributes to
     the generated node.
 
     See {!make_uri} for description of other optional parameters.
@@ -278,7 +278,7 @@ val a :
     {!Eliom_services.external_service} to abstract the file with a
     service.
 
-    The optional parameter [~a] allows to add extra HTML attributes to
+    The optional parameter [~a] allows one to add extra HTML attributes to
     the generated node.
 *)
 val css_link : ?a:link_attrib_t -> uri:uri -> unit -> link_elt
@@ -292,7 +292,7 @@ val css_link : ?a:link_attrib_t -> uri:uri -> unit -> 
link_elt
     {!Eliom_services.external_service} to abstract the file with a
     service.
 
-    The optional parameter [~a] allows to add extra HTML attributes to
+    The optional parameter [~a] allows one to add extra HTML attributes to
     the generated node.
 *)
 val js_script :
@@ -313,7 +313,7 @@ val js_script :
     is stopped. The [~xhr] parameter has no effect outside an Eliom
     application.
 
-    The optional parameter [~a] allows to add extra HTML attributes to
+    The optional parameter [~a] allows one to add extra HTML attributes to
     the generated node.
 
     See {!make_uri} for description of other optional parameters.
@@ -362,7 +362,7 @@ val lwt_get_form :
     as parameters. By default, the [action] attribute is a relative
     URL recomputed at each request with {!make_uri}.
 
-    The optional parameter [~a] allows to add HTML attributes to the
+    The optional parameter [~a] allows one to add HTML attributes to the
     generated node.
 
     See {!Eliom_services.post_coservice'} for a description of the
diff --git a/src/files/eliomc.1 b/src/files/eliomc.1
index a7cb78a..7d17395 100644
--- a/src/files/eliomc.1
+++ b/src/files/eliomc.1
@@ -116,27 +116,27 @@ Display a short usage summary and exit.
 .SH EXAMPLES
 The compilation of an Eliom projects composed of a server specific file named 
server.ml, a client specific file named client.ml and two common files name 
base.eliom and main.eliom, could be achieved with the following commands:
 
-\ \ \ \ eliomc -a -o appl.cma server.ml base.eliom main.eliom
+\ \ \ \ eliomc \-a \-o appl.cma server.ml base.eliom main.eliom
 .br
-\ \ \ \ js_of_eliom -o appl.js client.ml base.eliom main.eliom
+\ \ \ \ js_of_eliom \-o appl.js client.ml base.eliom main.eliom
 
 To avoid recompiling the whole project each times, this could be split in 
multiple steps:
 
-\ \ \ \ eliomc -c server.ml
+\ \ \ \ eliomc \-c server.ml
 .br
-\ \ \ \ eliomc -c base.eliom
+\ \ \ \ eliomc \-c base.eliom
 .br
-\ \ \ \ eliomc -c main.eliom
+\ \ \ \ eliomc \-c main.eliom
 .br
-\ \ \ \ eliomc -a -o appl.cma _server/server.cmo _server/base.cmo 
_server/main.cmo
+\ \ \ \ eliomc \-a \-o appl.cma _server/server.cmo _server/base.cmo 
_server/main.cmo
 .br
-\ \ \ \ js_of_eliom -c client.ml
+\ \ \ \ js_of_eliom \-c client.ml
 .br
-\ \ \ \ js_of_eliom -c base.eliom
+\ \ \ \ js_of_eliom \-c base.eliom
 .br
-\ \ \ \ js_of_eliom -c main.eliom
+\ \ \ \ js_of_eliom \-c main.eliom
 .br
-\ \ \ \ js_of_eliom -o appl.js _client/client.cmo _client/base.cmo 
_client/main.cmo
+\ \ \ \ js_of_eliom \-o appl.js _client/client.cmo _client/base.cmo 
_client/main.cmo
 
 
 
diff --git a/src/server/Makefile b/src/server/Makefile
index 63a0791..d1ea99d 100644
--- a/src/server/Makefile
+++ b/src/server/Makefile
@@ -167,7 +167,7 @@ install.opt: raw_install
 
 raw_install: ${PREDEP}
        ${INSTALL} -m 755 -d ${SERVERDIR}
-       ${INSTALL} -m 644 ${INTF} ${INSTALL_IMPL} ${DOC} ${SERVERDIR}
+       ${INSTALL} -m 644 ${INTF} ${INSTALL_IMPL} ${INTF:.cmi=.mli} ${SERVERDIR}
 
 uninstall:
        -rm -fr ${SERVERDIR}
diff --git a/src/server/eliom_bus.mli b/src/server/eliom_bus.mli
index a03633a..32de026 100644
--- a/src/server/eliom_bus.mli
+++ b/src/server/eliom_bus.mli
@@ -43,7 +43,7 @@ val create :
 
 (** [stream b] returns the stream of datas sent to bus [b]. Notice you
     sould not use that function multiple times on the same bus, it will
-    return the same stream. If you want to receive mutiple times the
+    return the same stream. If you want to receive multiple times the
     same datas, you sould copy the stream with [Lwt_stream.clone] *)
 val stream : 'a t -> 'a Lwt_stream.t
 
diff --git a/src/server/eliom_comet.mli b/src/server/eliom_comet.mli
index 749de46..927baab 100644
--- a/src/server/eliom_comet.mli
+++ b/src/server/eliom_comet.mli
@@ -88,7 +88,7 @@ module Channels : sig
       the configuration file). The channel was named by [name]. Both
       servers must run the exact same version of Eliom.
 
-      The optionnal [newest] parameters tells wethere the channel is a
+      The optional [newest] parameters tells wethere the channel is a
       newest one. if the channel is not newest [history] is the maximum
       number of messages retrieved at the first request. The default
       is [1]. *)
diff --git a/src/server/eliom_common.ml b/src/server/eliom_common.ml
index e0c6179..2f4489d 100644
--- a/src/server/eliom_common.ml
+++ b/src/server/eliom_common.ml
@@ -944,23 +944,6 @@ let get_session_info req previous_extension_err =
   let req_whole = req
   and ri = req.Ocsigen_extensions.request_info
   and ci = req.Ocsigen_extensions.request_config in
-
-  (* HACK: Remove the 'nl_get_appl_parameter' used to avoid confusion
-     between XHR and classical request in Eliom_appl. *)
-  let get_params = List.remove_assoc nl_get_appl_parameter (Lazy.force 
ri.Ocsigen_extensions.ri_get_params) in
-  let ri =
-    { ri with
-      Ocsigen_extensions.
-      ri_get_params = lazy get_params;
-      ri_get_params_string =
-        if get_params = []
-        then None
-        else Some (Url.make_encoded_parameters get_params);
-    }
-  in
-
-  (* *)
-
   let rc = ri.Ocsigen_extensions.ri_request_cache in
   let no_post_param, p =
     match ri.Ocsigen_extensions.ri_post_params with
@@ -1036,7 +1019,6 @@ let get_session_info req previous_extension_err =
       (post_params, Lazy.force ri.Ocsigen_extensions.ri_get_params, false)
   in
 
-
 (*204FORMS* old implementation of forms with 204 and change_page_event
 
   let get_params, internal_form =
diff --git a/src/server/eliom_common.mli b/src/server/eliom_common.mli
index 6dee68a..526673f 100644
--- a/src/server/eliom_common.mli
+++ b/src/server/eliom_common.mli
@@ -663,6 +663,3 @@ val react_down_unwrap_id : unwrap_id
 val signal_down_unwrap_id : unwrap_id
 val comet_channel_unwrap_id : unwrap_id
 val bus_unwrap_id : unwrap_id
-
-
-val nl_get_appl_parameter: string
diff --git a/src/server/eliom_output.mli b/src/server/eliom_output.mli
index cd735a9..bd33c57 100644
--- a/src/server/eliom_output.mli
+++ b/src/server/eliom_output.mli
@@ -222,7 +222,7 @@ module type ELIOM_APPL = sig
   (** The function [application_name ()] returns a [<script>] node
       that represents the javascript part of the application. If you
       do not include this script in the [<head>] node of your page, it
-      will be automaticaly added at the end of the [<head>] node. *)
+      will be automatically added at the end of the [<head>] node. *)
   val application_script : ?async:bool -> unit -> [> `Script ] HTML5.elt
 
   (** Unique identifier for this application. Currently, it is just
@@ -247,6 +247,7 @@ module type ELIOM_APPL = sig
 
   (**/**)
   val typed_name : appl application_name
+  (**/**)
 
 end
 
diff --git a/src/server/eliom_parameters.mli b/src/server/eliom_parameters.mli
index 10f2f06..eb2f33a 100644
--- a/src/server/eliom_parameters.mli
+++ b/src/server/eliom_parameters.mli
@@ -154,7 +154,7 @@ val unit : (unit, [ `WithoutSuffix ], unit) params_type
     service take a parameter, labeled [s], and that the server will
     have to use [of_string] and [to_string] to make the conversion
     between the OCaml representation of the parameter and it's
-    external representation as a string. It allows to use whatever
+    external representation as a string. It allows one to use whatever
     type you want for a parameter of the service.  *)
 val user_type :
   of_string:(string -> 'a) ->
@@ -218,7 +218,7 @@ val user_type_coordinates :
 
 (** {2 Composing types of pages parameters} *)
 
-(** The combinator [p1 ** p2] allows to define service that take a
+(** The combinator [p1 ** p2] allows one to define service that take a
     pair of parameter. The associated service handler should expect a
     pair [(p1, p2)] as parameter. *)
 val ( ** ) :
@@ -232,7 +232,7 @@ val prod :
       ('c, [< `WithoutSuffix | `Endsuffix ] as 'e, 'd) params_type ->
         ('a * 'c, 'e, 'b * 'd) params_type
 
-(** The combinator [sum p1 p2] allows to define service that expect
+(** The combinator [sum p1 p2] allows one to define service that expect
     either the parameter [p1] or the parameter [p2].  *)
 val sum :
   ('a, [ `WithoutSuffix ], 'b) params_type ->
diff --git a/src/server/eliom_pervasives.mli b/src/server/eliom_pervasives.mli
index 9620c3d..1c68fb5 100644
--- a/src/server/eliom_pervasives.mli
+++ b/src/server/eliom_pervasives.mli
@@ -150,6 +150,7 @@ module XML : sig
       * (bool * string list) option
       * string option) option Eliom_lazy.request -> event_handler
 
+  (**/**)
   (* Deprecated alias. *)
   val event_of_string : string -> event_handler
   val string_of_handler : event_handler -> string
@@ -158,6 +159,7 @@ module XML : sig
     ( [ `A | `Form_get | `Form_post ]
       * (bool * string list) option
       * string option ) option Eliom_lazy.request -> event_handler
+  (**/**)
 
   type racontent =
     | RA of acontent
@@ -167,6 +169,7 @@ module XML : sig
   val racontent : attrib -> racontent
 
   val lazy_node : ?a:(attrib list) -> ename -> elt list Eliom_lazy.request -> 
elt
+  (**/**)
 
 end
 
@@ -253,6 +256,7 @@ module HTML5 : sig
 
     val lazy_form:
       ([< HTML5_types.form_attrib ], [< HTML5_types.form_content_fun ], [> 
HTML5_types.form ]) lazy_plus
+    (**/**)
 
   end
 
@@ -280,6 +284,7 @@ module HTML5 : sig
 
     val lazy_form:
       ([< HTML5_types.form_attrib ], [< HTML5_types.form_content_fun ], [> 
HTML5_types.form ]) lazy_plus
+    (**/**)
 
   end
 
@@ -394,6 +399,9 @@ module HTML5 : sig
 
   val lazy_form:
     ([< HTML5_types.form_attrib ], [< HTML5_types.form_content_fun ], [> 
HTML5_types.form ]) lazy_plus
+  (**/**)
+
+
 
 end
 
@@ -412,7 +420,7 @@ module XHTML : sig
     val lazy_form:
       action:XML.uri ->
       ([< XHTML_types.form_attrib ], [< XHTML_types.form_content ], [> 
XHTML_types.form ]) lazy_plus
-
+  (**/**)
   end
 
 
@@ -440,6 +448,7 @@ module XHTML : sig
     val lazy_form:
       action:XML.uri ->
       ([< XHTML_types.form_attrib ], [< XHTML_types.form_content ], [> 
XHTML_types.form ]) lazy_plus
+    (**/**)
 
   end
 
@@ -467,6 +476,7 @@ module XHTML : sig
     val lazy_form:
       action:XML.uri ->
       ([< XHTML_types.form_attrib ], [< XHTML_types.form_content ], [> 
XHTML_types.form ]) lazy_plus
+    (**/**)
 
   end
 
diff --git a/src/server/eliom_references.mli b/src/server/eliom_references.mli
index 3897ffd..3fced95 100644
--- a/src/server/eliom_references.mli
+++ b/src/server/eliom_references.mli
@@ -20,7 +20,7 @@
 (** {2 Server side state data, a.k.a Eliom references} *)
 
 (** Eliom references come in two flavors: they may be stored persistently or
-    the may be volatile.  The module [Volatile] allows to creation of
+    the may be volatile.  The module [Volatile] allows one to creation of
     references which can be, get, set, modify, and unset volatile references
     through {e non-Lwt} functions. *)
 type ('a, +'storage) eref'
@@ -65,7 +65,7 @@ val eref :
   'a ->
   'a eref
 
-(** The function [eref_from_fun] works like the above {!Eliom_references.eref},
+(** The function [eref_from_fun] works like the above {!Eliom_references.eref],
     but instead of providing a value for the initial content, a function [f] 
for
     {e creating the initial content} is provided (cf. also 
{!Lazy.lazy_from_fun}).
 
diff --git a/src/server/eliom_services.mli b/src/server/eliom_services.mli
index 5024414..f6abb33 100644
--- a/src/server/eliom_services.mli
+++ b/src/server/eliom_services.mli
@@ -144,7 +144,7 @@ constraint 'g = [< registrable ]
 
 (** {2 Registration of named modules}
 
-    This functionality allows to register initialization functions for
+    This functionality allows one to register initialization functions for
     Eliom modules which will be executed when the corresponding module
     is loaded in [ocsigenserver.conf].
 
@@ -184,7 +184,7 @@ val register_eliom_module : string -> (unit -> unit) -> unit
     towards that service will use https. By default, links will keep
     the current protocol.
 
-    The optional parameter [~priority] allows to change the priority
+    The optional parameter [~priority] allows one to change the priority
     order between service that shares the same path. The default
     priority is 0 ; if you want the service to be tried before
     (resp. after) other services, put a higher (resp. lower) priority.
@@ -214,7 +214,7 @@ val service :
 
 (** The function [external_service ~prefix ~path ~get_params ()]
     creates a service for an external web site, that will use GET
-    method and requires [get_params] as parameters. This allows to
+    method and requires [get_params] as parameters. This allows one to
     creates links or forms towards other Web sites using Eliom's
     syntax.
 
@@ -450,7 +450,7 @@ val post_coservice' :
 
 (** {3 Static files} *)
 
-(** The predefined service [static_dir] allows to create links to
+(** The predefined service [static_dir] allows one to create links to
     static files. This service takes the name of a static file as a
     parameter (a string list, slash separated). The actual directory
     in filesystem where static pages will be found must be set up in
@@ -472,7 +472,7 @@ val https_static_dir :
    [ `One of string list ] param_name, unit, [> `Unregistrable ], 'return)
     service
 
-(** Like [static_dir], but allows to put GET parameters *)
+(** Like [static_dir], but allows one to put GET parameters *)
 val static_dir_with_params :
   ?keep_nl_params:[ `All | `Persistent | `None ] ->
   get_params:('a, [`WithoutSuffix], 'an) params_type ->
@@ -575,7 +575,7 @@ val add_non_localized_post_parameters :
     {!Eliom_output.Eliom_appl.register} or any other
     {!Eliom_output}[.*.register] functions. See the documentation of
     those functions for a description of the [~scope] and [~secure]
-    optionnal parameters. *)
+    optional parameters. *)
 val unregister :
   ?scope:[< Eliom_common.scope ] ->
   ?secure:bool ->
diff --git a/src/server/eliom_state.mli b/src/server/eliom_state.mli
index fa525be..834572c 100644
--- a/src/server/eliom_state.mli
+++ b/src/server/eliom_state.mli
@@ -307,7 +307,7 @@ val get_persistent_data_session_group :
     modified in the configuration file.
     It means that by default, these functions have no effect
     if there is a value in the configuration file.
-    This gives the ability to override the values choosen by the module
+    This gives the ability to override the values chosen by the module
     in the configuration file.
     Use [~override_configfile:true] for example if your
     Eliom module wants to change the values afterwards
@@ -489,7 +489,7 @@ val set_persistent_data_cookie_exp_date :
     modified in the configuration file.
     It means that by default, these functions have no effect
     if there is a value in the configuration file.
-    This gives the ability to override the values choosen by the module
+    This gives the ability to override the values chosen by the module
     in the configuration file.
     Use [~override_configfile:true] for example if your
     Eliom module wants to change the values afterwards
@@ -701,7 +701,7 @@ module Session_admin : sig
   (** Type used to describe session timeouts *)
   type timeout =
     | TGlobal (** see global setting *)
-    | TNone   (** explicitely set no timeout *)
+    | TNone   (** explicitly set no timeout *)
     | TSome of float (** timeout duration in seconds *)
 
   type service_session
diff --git a/src/server/sigs/eliom_reg_simpl.mli 
b/src/server/sigs/eliom_reg_simpl.mli
index 849ddec..3ae212d 100644
--- a/src/server/sigs/eliom_reg_simpl.mli
+++ b/src/server/sigs/eliom_reg_simpl.mli
@@ -21,7 +21,7 @@ open Eliom_services
     [?headers] can be used to modify the HTTP answer sent by
     Eliom. Use this with care.
 
-    The optionnal parameter [~secure_session] has no effect for scope
+    The optional parameter [~secure_session] has no effect for scope
     {!Eliom_common.global}. With other scopes, the parameter is used
     to force the session service table in which the [handler] will be
     registered. By default, the service is registred in the unsecure
diff --git a/tests/eliom_testsuite.ml b/tests/eliom_testsuite.ml
index f30e767..0fa6135 100644
--- a/tests/eliom_testsuite.ml
+++ b/tests/eliom_testsuite.ml
@@ -396,6 +396,8 @@ let _ = Eliom_output.Html5.register Eliom_testsuite3.main
               br ();
               a unique1 [pcdata "Onload event on element and global element"] 
();
               br ();
+              a body_onload [pcdata "Onload event on the body element"] ();
+              br ();
               (* a xhr_form_with_file [pcdata "xhr forms with file"] (); *)
               (* br (); *)
               a caml_service_cookies [pcdata "Client process cookies with caml 
service"] ();
diff --git a/tests/eliom_testsuite3.eliom b/tests/eliom_testsuite3.eliom
index 52c5615..ebd917f 100644
--- a/tests/eliom_testsuite3.eliom
+++ b/tests/eliom_testsuite3.eliom
@@ -3105,6 +3105,20 @@ let _ =
                     global_div; local_div; simple_div;
                    ]))
 
+let body_onload =
+  My_appl.register_service
+    ["body_onload"]
+    Eliom_parameters.unit
+    (fun () () ->
+      return
+        (html
+           (head (title (pcdata "body onload")) [])
+           (body ~a:[a_onload {{debug "it works"}}]
+              [
+                p [pcdata "onload on the body element.\n There should be \"it 
works\" in the console"]; br ();
+                p [pcdata "there will also probably be an error message 
(caml_closure_id... is not defined). It is not a problem, and we can't simply 
avoid it"];
+              ])))
+
 let _ =
   My_appl.register
     unique2

-- 
eliom packaging

_______________________________________________
Pkg-ocaml-maint-commits mailing list
Pkg-ocaml-maint-commits@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-ocaml-maint-commits

Reply via email to