owt.form={};owt.form.showValidationError=function(form,fieldName){var theField=form[fieldName];try{if(theField.tagName.toLowerCase()=="input"&&ow.core.getAttribute(theField,"type","text")=="text"&&theField.value!=""){theField.select()}else{theField.focus()}}catch(e){}Dom.addClass(Dom.getAncestorByTagName(theField,"tr"),"field-error")};owt.form.setAsync=function(form){form=Dom.get(form);var onSubmit=function(e){Event.preventDefault(e);owt.form.submit(form)};Event.addListener(form,"submit",onSubmit)};owt.form.submit=function(form){var aElements=form.elements;var nElements=aElements.length;var bUseFileUpload=false;if(nElements>0){var i=nElements-1;do{if(aElements[i].type=="file"){bUseFileUpload=true;break}}while(i--)}var submitMessage=ow.core.getAttribute(form,"owt:submitMessage");var onSuccess=function(oRequest){ow.form.disableSubmit(form,false)};var onFailure=function(oRequest){ow.form.disableSubmit(form,false);if(submitMessage){owt.hideLoading()}};var onUpload=function(oRequest){ow.form.disableSubmit(form,false);if(submitMessage){owt.hideLoading()}};var callback={success:onSuccess,failure:onFailure,upload:onUpload,argument:{form:form},customevents:eval(ow.core.getAttribute(form,"owt:callback"))};ow.form.disableSubmit(form,true);if(ow.core.getAttribute(form,"owt:validationMessageEl")!==null){var elValidation=Dom.get(ow.core.getAttribute(form,"owt:validationMessageEl"));Dom.getElementsByClassName("owt-formerror","div",elValidation,function(el){elValidation.removeChild(el)})}else{Dom.getElementsByClassName("owt-formerror","div",form,function(el){form.removeChild(el)})}Dom.getElementsByClassName("field-error","tr",form,function(el){Dom.removeClass(el,"field-error")});var formMethod=ow.core.getAttribute(form,"method","post");formMethod===null?"GET":formMethod.toUpperCase();var formAction=ow.core.getAttribute(form,"action");if(submitMessage){owt.showLoading(submitMessage)}var postData=ow.core.getAttribute(form,"owt:postData","");if(bUseFileUpload&&form._isXHR===undefined){var XHRInput=document.createElement("input");XHRInput.setAttribute("type","hidden");XHRInput.setAttribute("value","true");XHRInput.setAttribute("name","_isXHR");form.appendChild(XHRInput)}Connect.setForm(form,bUseFileUpload);var oConn=Connect.asyncRequest(formMethod,formAction,callback,postData);if(bUseFileUpload&&YAHOO.env.ua.webkit){form.setAttribute("target","yuiIO"+oConn.tId)}Connect.resetFormState()};
