AUI.add("aui-form-base",function(C){var I=C.Lang,D=C.ClassNameManager.getClassName,J="form",B=D(J),G=D("field","labels"),F=D("field","labels","inline"),E={left:[G,"left"].join("-"),right:[G,"right"].join("-"),top:[G,"top"].join("-")};var H=C.Component.create({NAME:J,ATTRS:{action:{value:location.href,getter:"_attributeGetter",setter:"_attributeSetter"},id:{},method:{value:"POST",getter:"_attributeGetter",setter:"_attributeSetter"},monitorChanges:{value:false},nativeSubmit:{value:false},values:{getter:function(L){var A=this;var K=C.io._serialize(A.get("contentBox").getDOM());return C.QueryString.parse(K);},setter:function(M){var A=this;var K=A._setFieldsObject;var L=A.get("monitorChanges");if(I.isArray(M)){K=A._setFieldsArray;}C.each(M,C.rbind(K,A,L));return C.Attribute.INVALID_VALUE;}},fieldValues:{getter:function(K){var A=this;var L={};A.fields.each(function(N,M,O){L[N.get("name")]=N.get("value");});return L;}},labelAlign:{value:""}},HTML_PARSER:{action:function(K){var A=this;return A._attributeGetter(null,"action");},method:function(K){var A=this;return A._attributeGetter(null,"method");}},prototype:{CONTENT_TEMPLATE:"<form></form>",initializer:function(){var A=this;A.fields=new C.DataSet({getKey:A._getNodeId});},renderUI:function(){var A=this;A._renderForm();},bindUI:function(){var A=this;var K=A.get("nativeSubmit");if(!K){A.get("contentBox").on("submit",A._onSubmit);}A.after("disabledChange",A._afterDisabledChange);A.after("labelAlignChange",A._afterLabelAlignChange);A.after("nativeSubmitChange",A._afterNativeSubmitChange);},syncUI:function(){var A=this;var K=A.get("contentBox");A.set("id",K.guid());A._uiSetLabelAlign(A.get("labelAlign"));},add:function(N,A){var S=this;var O=C.Array(N);var K=O.length;var Q;var N=S.fields;var P=S.get("contentBox");for(var M=0;M<O.length;M++){Q=O[M];Q=C.Field.getField(Q);if(Q&&N.indexOf(Q)==-1){N.add(Q);if(A&&!Q.get("rendered")){var L=Q.get("node");var R=null;if(!L.inDoc()){R=P;}Q.render(R);}}}},clearInvalid:function(){var A=this;A.fields.each(function(L,K,M){L.clearInvalid();});},getField:function(M){var K=this;var L;if(M){var A=K.fields;L=A.item(M);if(!I.isObject(L)){A.each(function(O,N,P){if(O.get("id")==M||O.get("name")==M){L=O;return false;}});}}return L;},invoke:function(L,K){var A=this;return A.fields.invoke(L,K);},isDirty:function(){var A=this;var K=false;A.fields.each(function(M,L,N){if(M.isDirty()){K=true;return false;}});return K;},isValid:function(){var A=this;var K=true;A.fields.each(function(M,L,N){if(!M.isValid()){K=false;return false;}});return K;},markInvalid:function(L){var A=this;var K=A._markInvalidObject;if(I.isArray(L)){K=A._markInvalidArray;}C.each(L,K,A);return A;},remove:function(L,K){var A=this;A.fields.remove(L);if(K){L=A.getField(L);if(L){L.destroy();}}return A;},resetValues:function(){var A=this;A.fields.each(function(L,K,M){L.resetValue();});},submit:function(K){var A=this;var L=A.isValid();if(L){if(A.get("nativeSubmit")){A.get("contentBox").submit();}else{K=K||{};C.mix(K,{id:A.get("id")});C.io(A.get("action"),{form:K,method:A.get("method"),on:{complete:C.bind(A._onSubmitComplete,A),end:C.bind(A._onSubmitEnd,A),failure:C.bind(A._onSubmitFailure,A),start:C.bind(A._onSubmitStart,A),success:C.bind(A._onSubmitSuccess,A)}});}}return L;},_afterDisabledChange:function(K){var A=this;var L="disable";if(K.newVal){L="enable";}A.fields.each(function(N,M,O){N[L];});},_afterLabelAlignChange:function(K){var A=this;A._uiSetLabelAlign(K.newVal,K.prevVal);},_afterNativeSubmitChange:function(L){var A=this;var K=A.get("contentBox");var M="on";if(L.newVal){M="detach";}K[M]("submit",A._onSubmit);},_attributeGetter:function(L,K){var A=this;return A.get("contentBox").attr(K);},_attributeSetter:function(L,K){var A=this;A.get("contentBox").attr(K,L);return L;},_getNodeId:function(L){var K;if(L instanceof C.Field){K=L.get("node");}else{K=C.one(L);}var A=K&&K.guid();return A;},_onSubmit:function(A){A.halt();},_onSubmitComplete:function(K){var A=this;A.fire("complete",{ioEvent:K});},_onSubmitEnd:function(K){var A=this;A.fire("end",{ioEvent:K});},_onSubmitFailure:function(K){var A=this;A.fire("failure",{ioEvent:K});},_onSubmitStart:function(K){var A=this;A.fire("start",{ioEvent:K});},_onSubmitSuccess:function(K){var A=this;A.fire("success",{ioEvent:K});},_renderForm:function(){var A=this;A.get("contentBox").removeClass(B);},_markInvalidArray:function(L,K,N){var A=this;var M=A.getField(L.id);if(M){M.markInvalid(L.message);}},_markInvalidObject:function(L,K,N){var A=this;var M=(!I.isFunction(L))&&A.getField(K);if(M){M.markInvalid(L);}},_setFieldsArray:function(M,L,O,K){var A=this;var N=A.getField(M.id);if(N){N.set("value",M.value);if(K){N.set("prevVal",N.get("value"));}}},_setFieldsObject:function(M,L,O,K){var A=this;var N=(!I.isFunction(M))&&A.getField(L);if(N){N.set("value",M);if(K){N.set("prevVal",N.get("value"));}}},_uiSetLabelAlign:function(L,N){var A=this;var K=A.get("contentBox");K.replaceClass(E[N],E[L]);var M="removeClass";if(/right|left/.test(L)){M="addClass";}K[M](F);}}});C.Form=H;},"@VERSION@",{requires:["aui-base","aui-data-set","aui-form-field","querystring-parse"]});