/* -*- coding: utf-8 -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
 */
;(function($) {
    $.wosubmit = function(expr) {
        // expr est l'élément ou le sélecteur de l'élément dont le formulaire
        // associé doit être envoyé. Ce peut être aussi l'élément formulaire.
        // Par défaut, prendre le premier bouton submit du formulaire. S'il
        // faut en prendre un autre, il est nécessaire de le spécifier avec expr.
        // XXX Il faudrait pouvoir prendre le premier bouton submit *après* l'élément
        // spécifié, ou dans le cas contraire, le premier bouton submit du formulaire.
        var $elem = $(expr).first();

        var $form;
        if ($elem.is("form")) $form = $elem;
        else $form = $($elem[0].form);
        if (!$form.length) return false; // pas de formulaire trouvé

        var $submit;
        if ($elem.is(":submit")) $submit = $elem;
        else $submit = $form.find(":submit").first();
        if ($submit.length) {
            // Ajouter la valeur du bouton submit, pour que WebObjects sache
            // que c'est ce bouton qui a été cliqué
            $form.prepend("<input type=\"hidden\" name=\"" + $submit.attr("name")
                    + "\" value=\"" + $submit.attr("value") + "\" />");
        }
        $form.submit();
        return true;
    };
})(jQuery);
