33 |
33 |
34 /* |
34 /* |
35 * this function is called when an AJAX form was generated to |
35 * this function is called when an AJAX form was generated to |
36 * make sure tabindex remains consistent |
36 * make sure tabindex remains consistent |
37 */ |
37 */ |
38 function reorderTabindex(start) { |
38 function reorderTabindex(start, formid) { |
39 var form = getNode('entityForm'); |
39 var form = getNode(formid || 'entityForm'); |
40 var inputTypes = ['INPUT', 'SELECT', 'TEXTAREA']; |
40 var inputTypes = ['INPUT', 'SELECT', 'TEXTAREA']; |
41 var tabindex = (start==null)?15:start; |
41 var tabindex = (start==null)?15:start; |
42 nodeWalkDepthFirst(form, function(elem) { |
42 nodeWalkDepthFirst(form, function(elem) { |
43 var tagName = elem.tagName.toUpperCase(); |
43 var tagName = elem.tagName.toUpperCase(); |
44 if (inputTypes.contains(tagName)) { |
44 if (inputTypes.contains(tagName)) { |
252 preprocessAjaxLoad(null, dom); |
252 preprocessAjaxLoad(null, dom); |
253 var form = jQuery(dom); |
253 var form = jQuery(dom); |
254 form.css('display', 'none'); |
254 form.css('display', 'none'); |
255 form.insertBefore(insertBefore).slideDown('fast'); |
255 form.insertBefore(insertBefore).slideDown('fast'); |
256 updateInlinedEntitiesCounters(rtype, role); |
256 updateInlinedEntitiesCounters(rtype, role); |
257 reorderTabindex(); |
257 reorderTabindex(null, $(insertBefore).closest('form')[0]); |
258 jQuery(CubicWeb).trigger('inlinedform-added', form); |
258 jQuery(CubicWeb).trigger('inlinedform-added', form); |
259 // if the inlined form contains a file input, we must force |
259 // if the inlined form contains a file input, we must force |
260 // the form enctype to multipart/form-data |
260 // the form enctype to multipart/form-data |
261 if (form.find('input:file').length) { |
261 if (form.find('input:file').length) { |
262 // NOTE: IE doesn't support dynamic enctype modification, we have |
262 // NOTE: IE doesn't support dynamic enctype modification, we have |