diff --git a/js/jquery.jsForm.min.js b/js/jquery.jsForm.min.js index 5a9960b..fa15911 100644 --- a/js/jquery.jsForm.min.js +++ b/js/jquery.jsForm.min.js @@ -4,4 +4,3 @@ */ (function(t,e,a){"use strict";function i(e,a){var i=t(e);this.options=t.extend({},{controls:!0,data:null,prefix:"data",trackChanges:"changed",validateHidden:!0,skipEmpty:!1,renderer:null,processors:null,dataHandler:null,connect:null,viewClass:"value"},a),!i.attr("data-prefix")||"data"!==this.options.prefix&&""!==this.options.prefix||""!==i.attr("data-prefix")&&(this.options.prefix=i.attr("data-prefix")),this.element=e,this._init()}var s={},r={};i.prototype._init=function(){if(this._domInit(),this.options.controls)if(t.jsFormControls)t.each(this._getForm(),function(){t(this).jsFormControls()});else try{"undefined"!=typeof console&&this._debug("jquery.JsForm.controls not available!")}catch(e){}this._fill()},i.prototype.connect=function(e){this._initCollection(e,this.options.prefix),this._initConditional(e,this.options.prefix,this.options),this.options.controls&&t.jsFormControls&&t(e).jsFormControls(),this._fillDom(e),this.options.connect||(this.options.connect=[]),this.options.connect.push(e)},i.prototype.getNodes=function(){return this._getForm()},i.prototype._domInit=function(){var e=this;t.each(this._getForm(),function(){e._initCollection(this,e.options.prefix),e._initConditional(this,e.options.prefix,e.options)})},i.prototype._debug=function(a,i){try{var s=console||(e?e.console:null);if(!s||!s.log)return;var r=null;r=t.isPlainObject(i)?JSON.stringify(i,null," "):i,r||(r=""),s.log(a+r)}catch(n){}},i.prototype._initConditional=function(e,a,i){var s=this,r=function(e,a,i){var r=!1;t.each(i,function(){var t=s._getValueWithArrays(a,this);if(t&&""!==t&&0!==t&&-1!==t)return r=!0,!1}),r?e.show():e.hide()},n=function(e,a,i){var r=!1;t.each(i,function(){var t=s._getValueWithArrays(a,this);if(t&&""!==t&&0!==t&&-1!==t)return r=!0,!1}),r?e.hide():e.show()};this.conditionals=t(e).find(".conditional"),this.conditionals.each(function(){t(this).data().conditionalEval=[];var e=t(this).attr("data-show");e&&e.length>0&&t(this).data().conditionalEval.push({func:r,field:e.split(" ")}),e=t(this).attr("data-hide"),e&&e.length>0&&t(this).data().conditionalEval.push({func:n,field:e.split(" ")}),e=t(this).attr("data-eval"),e&&e.length>0&&i.conditionals[e]&&t(this).data().conditionalEval.push({func:i.conditionals[e]})})},i.prototype._evaluateConditionals=function(e,a){this.conditionals.each(function(){var e=t(this);t.each(e.data().conditionalEval,function(){this.func(e,a,this.field)})})},i.prototype._initCollection=function(e,a){var i={},s=this;t(e).data().collections=i,t(".collection",e).each(function(){var e=t(this).attr("data-field");if(e&&0===e.indexOf(a+".")){var r=t(this),n=i[e];if(n?n.push(r):i[e]=[r],s._initList(r),!r.hasClass("ui-sortable")&&r.hasClass("sortable")&&r.sortable){var o=r.attr("data-sortable");o=o?JSON.parse(o):{},r.sortable(o),r.on("sortstop",function(){s._reorder(r)})}t(this).on("add",function(e,a,i){var r=t(this).attr("data-field");if(!i||r==i){var n=t(this).data("template");if(a||(a={}),n){var o=n.clone(!0);t(o).addClass("POJO"),t(o).data().pojo=a;var l=t(this).data("prefill");l||(l=t(this).val("data-prefill")),l&&(t.isFunction(l)?l(t(o).data().pojo,t(o)):l.substring?t(o).data().pojo=JSON.parse(l):t.isPlainObject(l)&&(t(o).data().pojo=l)),t(this).append(o),s._enableTracking(t("input,textarea,select",o)),s.options.trackChanges&&t("input,textarea,select",o).addClass(s.options.trackChanges),s._addCollectionControls(o),s._initCollection(o,r.substring(r.indexOf(".")+1)),t(this).trigger("addCollection",[o,t(o).data().pojo]);var h=t(this).children(".POJO").length;s._fillData(o,t(o).data().pojo,r.substring(r.indexOf(".")+1),h),t(this).trigger("postAddCollection",[o,t(o).data().pojo])}}})}}),t(".add",e).each(function(){var e=t(this).attr("data-field");e&&(t(this).data().collections=i[e],t(this).data().hasJsForm||(t(this).data().hasJsForm=!0,t(this).click(function(a){a.preventDefault(),t.each(t(this).data("collections"),function(){t(this).trigger("add",[null,e])})})))}),t(".insert",e).each(function(){var e=t(this).attr("data-field");e&&(t(this).data("collections")||(t(this).data("collections",i[t(this).attr("data-field")]),t(this).on("insert",function(a,i){if(i||(i=t(this).data().pojo),i){var r=t(this).data("beforeInsert");r&&t.isFunction(r)&&!(i=r(i))||(t.each(t(this).data("collections"),function(){var a=t(this).data("template");if(a){var r=a.clone(!0);r.addClass("POJO"),r.data().pojo=i,s._addCollectionControls(r),s._initCollection(r),t(this).trigger("addCollection",[r,i]);var n=t(this).children(".POJO").length;s._fillData(r,i,e.substring(e.indexOf(".")+1),n),t(this).append(r),t(this).trigger("postAddCollection",[r,i])}}),t(this).val(""),t(this).data().pojo=null,t(this).focus())}})))}),t(".insertAction",e).each(function(){var e=t(this).attr("data-field");if(e&&!t(this).data("inserter")){var a=t(this).parent().find(".insert");a&&(t(this).data("inserter",a),t(this).click(function(e){return e.preventDefault(),t(this).data("inserter").trigger("insert"),!1}))}}),t("input.object",e).each(function(){t(this).on("update",function(){var e=t(this).data().pojo;(t(this).attr("data-display")||t(this).attr("data-render"))&&t(this).val(s._renderObject(e,t(this).attr("data-display"),t(this).attr("data-render")))})}),t("input.blob",e).each(function(){if("file"===t(this).attr("type")){var e=t(this);t(this).on("change",function(a){var i=t(this).val().split(/\\/).pop();e.data("name",i);var s=a.target.files;s&&s.length&&t.each(s,function(){var a=new FileReader;a.onload=function(t){e.data("blob",t.target.result)},a.readAsDataURL(this),t(this).trigger("fileChange")})})}})},i.prototype._initList=function(t){if(!t.data("template")){var e=t.children().detach();e.removeAttr("id"),t.data("template",e)}},i.prototype._getForm=function(){var e=[t(this.element)];return this.options.connect&&t.each(this.options.connect,function(){e.push(t(this))}),e},i.prototype._clear=function(e,a){a||(a=this.options.prefix),t(e).removeData("pojo"),t("input,select,textarea",e).each(function(){var e=t(this).attr("name");e&&0===e.indexOf(a+".")&&(e=e.substring((a+".").length),1>e.length||(t(this).removeData("pojo"),"checkbox"===t(this).attr("type")?t(this).prop("checked",!1):"radio"===t(this).attr("type")?t(this).prop("checked",!1):t(this).data().valclass&&t(this)[t(this).data().valclass].val?t(this)[t(this).data().valclass](val,""):t(this).val(""),t(this).hasClass("blob")&&t(this).removeData("blob"),t(this).is("select")&&(t('option[selected="selected"]',this).prop("selected",!1),t("option:first",this).prop("selected",!0),t(this).val(t("option:first",this).val()).change()),t(this).change()))}),t(".collection",e).each(function(){var e=t(this).attr("data-field");e&&0===e.indexOf(a+".")&&t(this).empty()})},i.prototype._handleArrayInPojo=function(e,i,s,r){if(i[s]||(i[s]=[]),"checkbox"===e.attr("type")||"CHECKBOX"===e.attr("type")){var n=e.is(":checked"),o=!0;t.each(i[s],function(t,e){return this==r?(o=!1,n||i[s].splice(e,1),!1):a}),o&&n&&i[s].push(r)}else{var l=e.attr("data-array");l=!l||isNaN(l)?null:Number(l),null===l?i[s].push(r):i[s][l]=r}},i.prototype._createPojoFromInput=function(e,i,s){var r=null,n=this,o=null;return t(e).data("pojo")&&(r=t(e).data("pojo")),r&&t.extend(!0,s,r),t(e).find("input,select,textarea,.jsobject").each(function(){var e=t(this).attr("data-name");if(e||(e=t(this).attr("name")),e&&!t(this).hasClass("transient")&&!t(this).hasClass("grayed")&&0===e.indexOf(i+".")){t(this).trigger("validate",!0),e=e.substring((i+".").length);var r=t(this).val();if(t(this).data().valclass&&t(this)[t(this).data().valclass]&&(r=t(this)[t(this).data().valclass]("val")),t(this).hasClass("jsobject"))r=t(this).data("pojo");else{if(n.options.skipEmpty&&(!r||""===r||""===r.trim()))return;if(!t(this).hasClass("emptynull")||r&&""!==r&&"null"!==r&&""!==r.trim())if(t(this).hasClass("object")||t(this).hasClass("POJO"))if(t("option:selected",this).data()&&t("option:selected",this).data().pojo?t("option:selected",this).data().pojo?r=t("option:selected",this).data().pojo:t("option:selected",this).attr("data-obj")&&(r=JSON.parse(t("option:selected",this).attr("data-obj"))):r=t(this).data("pojo"),t.isFunction(t(this).data().processor))r=t(this).data().processor(r);else{var l=t(this).attr("data-processor");l&&n.options.processors[l]&&(r=n.options.processors[l](r))}else t(this).hasClass("blob")?r=t(this).data("blob"):""===r&&(t(this).hasClass("number")||t(this).hasClass("percent")||t(this).hasClass("integer")||t(this).hasClass("dateFilter")||t(this).hasClass("dateTimeFilter"))&&(r=null);else r=null;if(t(this).data().processor)r=t(this).data().processor(r);else if(t(this).hasClass("number")||t(this).hasClass("integer")){if(t(this).hasClass("date")&&isNaN(r))if(t.format){var h=t.format.date(r);h.setHours(0),h.setMinutes(0),h.setSeconds(0),h.setMilliseconds(0),r=h.getTime()}else r=new Date(r).getTime();else r=n._getNumber(r);isNaN(r)&&(r=0)}else if("checkbox"===t(this).attr("type")||"CHECKBOX"===t(this).attr("type"))t(this).hasClass("array")?(r=t(this).val(),t(this).attr("data-obj")&&(r=JSON.parse(t(this).attr("data-obj")))):r=t(this).is(":checked");else if("radio"===t(this).attr("type")||"RADIO"===t(this).attr("type")){if(!t(this).is(":checked"))return}else t(this).hasClass("bool")&&(r="true"===t(this).val())}if(n.options.dataHandler&&(r=n.options.dataHandler.serialize(r,t(this),s)),1>e.length)return o=r,!1;if(-1===e.indexOf("."))t(this).hasClass("array")?n._handleArrayInPojo(t(this),s,e,r):s[e]=r;else{var d,c=e.split("."),u=s[c[0]];u&&t.isPlainObject(u)||(s[c[0]]={},u=s[c[0]]);for(var f=1;c.length-1>f;f++)d=u,u=d[c[f]],(u===a||null===u)&&(u={},d[c[f]]=u);d=c[c.length-1],t(this).hasClass("array")?n._handleArrayInPojo(t(this),u,d,r):u[d]=r}}}),t(e).find(".selectcollection").each(function(){var e=t(this).attr("data-field");if(e&&!t(this).hasClass("transient")&&0===e.indexOf(i+".")){t(this).trigger("validate",!0),e=e.substring((i+".").length),s[e]=[];var a=t(this).attr("data-selected"),r=t(this).attr("data-id");t(this).children().each(function(){if(a){if(!t(this).hasClass(a))return}else if(!t("input[name='"+e+"']",this).prop("checked"))return;var i=null;r?(i=t(this).data("obj"),!i&&t(this).attr("data-obj")&&(i=JSON.parse(t(this).attr("data-obj")))):i=t("input[name='"+e+"']",this).val(),i&&s[e].push(i)})}}),o},i.prototype._enableTracking=function(e){if(e&&0!==e.length){var a=this;a.options.trackChanges&&!t(e).data().track&&(t(e).data().track=!0,t(e).change(function(){t(this).val()!==t(this).data().orig?t(this).addClass(a.options.trackChanges):t(this).removeClass(a.options.trackChanges)}))}},i.prototype._fillSelectCollection=function(e,i,s){var r=this,n=t(e);n.find(".selectcollection").each(function(){var e=t(this).attr("data-selected"),n=t(this).attr("data-id"),o=t(this).attr("data-field");if(o&&0===o.indexOf(s+".")){var l=null,h=o;s&&(h=h.substring(s.length+1)),l=r._get(i,h),l&&t.isArray(l)||(l=[]),-1!==o.indexOf(".")&&(o=o.substring(o.lastIndexOf(".")+1)),e&&(t(this).children("."+e).removeClass(e),t(this).children().each(function(){t(this).hasClass("jsfselect")||(t(this).addClass("jsfselect"),t(this).click(function(){t(this).toggleClass(e),t(this).trigger("selected")}),t(this).trigger("selected"))})),t("input[name='"+o+"']",this).prop("checked",!1),t(this).children().each(function(){var i="";if(n){var s=t(this).data("obj");if(!s&&t(this).attr("data-obj")&&(s=JSON.parse(t(this).attr("data-obj"))),!s)return;i=s[n]}else i=t("input[name='"+o+"']",this).val();if(i)for(var r=0;l.length>r;r++){var h=l[r];if(n&&(h=h[n]),i==h)return e&&t(this).addClass(e).trigger("selected"),t("input[name='"+o+"']",this).prop("checked",!0),a}})}})},i.prototype._fillData=function(e,i,s,r){var n=this,o=t(e);o.find(".field").each(function(){var e=t(this).data("name");if(e||("A"===this.nodeName.toUpperCase()?(e=t(this).attr("href"),t(this).attr("href","#")):"IMG"===this.nodeName.toUpperCase()?(e=t(this).attr("src"),0===e.indexOf("#")&&(e=e.substring(1)),t(this).attr("src","#")):e=t(this).text(),t(this).data("name",e),t(this).show()),!s||e.indexOf(s+".")>=0){var a=e;s&&(a=a.substring(s.length+1));var o=n._get(i,a,!1,r);o||0===o||o===!1||(o=""),t(this).hasClass("currency")&&(o||(o=0)),t(this).hasClass("titleval")&&t(this).attr("title",o),n.options.dataHandler&&(o=n.options.dataHandler.deserialize(o,t(this),a,i)),t.jsFormControls&&(o=t.jsFormControls.Format.format(this,o)),"A"===this.nodeName.toUpperCase()?t(this).attr("href",o):"IMG"===this.nodeName.toUpperCase()?t(this).attr("src",o):"DIV"===this.nodeName.toUpperCase()?t(this).html(o):t(this).text(o)}}),t("input, textarea",o).each(function(){var e=t(this).attr("name");if(e&&(n._enableTracking(this),"file"!=t(this).attr("type")&&(!s||e.indexOf(s+".")>=0))){var o=e;s&&(o=o.substring(s.length+1));var l=n._get(i,o,!1,r);if(n.options.dataHandler&&(l=n.options.dataHandler.deserialize(l,t(this),o,i)),t(this).hasClass("object")?(t(this).data().pojo=l,t(this).addClass("POJO"),l=n._renderObject(l,t(this).attr("data-display"),t(this).attr("data-render"))):t(this).hasClass("jsobject")?(t(this).data().pojo=l,t(this).addClass("POJO")):t.isPlainObject(l)&&(""===o?l="":(t(this).data().pojo=l,t(this).addClass("POJO"),l=n._renderObject(l,t(this).attr("data-display"),t(this).attr("data-render")))),"checkbox"===t(this).attr("type"))if(t(this).hasClass("array")){var h=t(this).val(),d=null;t(this).attr("data-obj")&&(h=JSON.parse(t(this).attr("data-obj"))),t(this).attr("data-id")&&(d=t(this).attr("data-id"),h=h[d]);var c=!1;l&&t.each(l,function(){var t=this;return d&&(t=t[d]),t==h?(c=!0,!1):a}),t(this).prop("checked",c)}else t(this).prop("checked",l===!0||"true"===l);else if("radio"===t(this).attr("type"))t(this).prop("checked",l==t(this).val());else if(l||0===l||l===!1||(l=""),t.jsFormControls&&(l=t.jsFormControls.Format.format(this,l)),t(this).hasClass("array")){var u=t(this).attr("data-array");u=!u||isNaN(u)?null:Number(u),null!==u&&l&&l.length>u?t(this).val(l[u]):t(this).val("")}else t(this).data().valclass&&t(this)[t(this).data().valclass]?t(this)[t(this).data().valclass]("val",l):t(this).val(l);n.options.trackChanges&&(t(this).data().orig=t(this).val()),t(this).trigger("fill"),t(this).change()}}),t("select",o).each(function(){var e=t(this).attr("name");if(e&&(!s||e.indexOf(s+".")>=0)){var o=e;s&&(o=o.substring(s.length+1)),n._enableTracking(this),t(this).children("option:selected").prop("selected",!1);var l=t(this).attr("data-key");l||(l="id");var h=n._get(i,o,!1,r);if(n.options.dataHandler&&(h=n.options.dataHandler.deserialize(h,t(this),o,i)),h[l]||!isNaN(h[l]))return t(this).children("option").each(function(){var e=t(this).data().pojo;if(e||(e=t(this).data().obj),e){if(h[l]===e[l])return t(this).prop("selected",!0),!1}else if(t(this).val()==h[l])return t(this).attr("selected",!0),!1}),t(this).change(),a;t(this).hasClass("bool")&&(h=h?"true":"false"),t(this).children("option[value='"+h+"']").prop("selected",!0),t(this).val(h),n.options.trackChanges&&(t(this).data().orig=t(this).val()),t(this).change().trigger("fill")}})},i.prototype.get=function(e){var a=this,i=this.options.data,s=this.options.prefix,r={};i&&t.isPlainObject(i)&&(r=t.extend({},i));var n=!1;return t.each(this._getForm(),function(){a._createPojoFromInput(this,s,r),a.options.validateHidden?this.find(".invalid").each(function(){return n=!0,t(this).focus(),!1}):this.find(".invalid").filter(":visible").each(function(){return n=!0,t(this).focus(),e||a._debug("Found invalid field: "+t(this).attr("name")),!1}),a._getCollection(this,s,r,e)&&(n=!0)}),!e&&n?null:r},i.prototype._getCollection=function(e,a,i,s){var r=this,n=!1;return e.find(".collection").each(function(){if(s||!n){var e=t(this).attr("data-field");if(e&&0===e.indexOf(a+".")){e=e.substring((a+".").length);var o=r._getParent(i,e,!0);-1!==e.indexOf(".")&&(e=e.substring(e.lastIndexOf(".")+1)),o[e]=[],t(this).children().each(function(){var a,i={};if(a=r._createPojoFromInput(t(this),e,i),a||r._getCollection(t(this),e,i,s),!r._isEmpty(i)||a){if(t(".invalid",this).length>0&&(n=!0,!s))return!1;a?o[e].push(a):o[e].push(i)}else t(".invalid",this).removeClass("invalid")})}}}),n},i.prototype.getData=function(){return this.options.data||(this.options.data={}),this.options.data},i.prototype.fieldMode=function(e,a){if(e){e.data||(e=t("input[name='"+e+"']",this.element));var i=this.options.viewClass;if(a){if(e.closest("span."+i)[0])return;var s=e.val();("null"===s||null===s||"submit"===e.attr("type"))&&(s=""),e.hasClass("trueFalse")&&(s=e.is(":checked")?"X":" "),s=s.replace(//g,">").replace(/\n/g,"
");var r=t(''+s+"");e.parent().hasClass("ui-wrapper")?e.parent().hide().wrap(r):e.hide().wrap(r)}else{var n=e.closest("span."+i),o=e.show().detach();n.before(o),n.remove()}}},i.prototype.preventEditing=function(e){var i=t(this.element),s=this.options.viewClass;if(e===a)e=i.data("disabled")?!1:!0;else if(e===i.data("disabled"))return;e?(i.find("input, textarea").each(function(){if(!t(this).closest("span."+s)[0]&&"hidden"!=t(this).attr("type")){var e=t(this).val();("null"===e||null===e||"submit"===t(this).attr("type"))&&(e=""),t(this).hasClass("trueFalse")&&(e=t(this).is(":checked")?"X":" "),e=e.replace(//g,">").replace(/\n/g,"
");var a=t(''+e+"");t(this).parent().hasClass("ui-wrapper")?t(this).parent().hide().wrap(a):t(this).hide().wrap(a)}}),i.find("select").each(function(){if(!t(this).closest("span."+s)[0]){var e=t(this).children(":selected").html();("null"===e||null===e)&&(e="");var a=t(''+e+"");t(this).hasClass("ui-toggle-switch")?t(this).prev().hide().wrap(a):t(this).hide().wrap(a)}})):i.find("span."+s).each(function(){var e=t(this).children("input,select,textarea,.ui-wrapper,.ui-toggle-switch").show().detach();t(this).before(e),t(this).remove()}),i.data("disabled",e)},i.prototype.validate=function(){var e=!0;return t.each(this._getForm(),function(){t(".required,.regexp,.date,.mandatory,.number,.validate,.integer",this).change(),t(".invalid",this).length>0&&(e=!1)}),e},i.prototype._fill=function(e){var a=this;t(this.element).addClass("POJO"),t(this.element).data("pojo",this.options.data),t.each(this._getForm(),function(){a._fillDom(this,e)})},i.prototype._fillDom=function(t,e){var a=this;e||a._clear(t,a.options.prefix),a._fillData(t,a.options.data,a.options.prefix),a._fillSelectCollection(t,a.options.data,a.options.prefix),a._fillCollection(t,a.options.data,a.options.prefix,e),a._evaluateConditionals(t,a.options.data)},i.prototype._fillCollection=function(e,a,i,s){var r=this;t(".collection",e).each(function(){var e=t(this),n=t(this).attr("data-field");if(a&&n&&0===n.indexOf(i+".")){var o=null,l=n;if(i&&(l=l.substring(i.length+1)),o=r._get(a,l))if(s)for(var h=0;o.length>h;h++){-1!==l.indexOf(".")&&(i=l.substring(l.lastIndexOf(".")+1));var d=t(e.children().get(h)),c=o[h];r._fillData(d,c,l,h+1),r._fillCollection(d,c,l,s)}else r._fillList(e,o,l)}})},i.prototype._fillList=function(e,a,i,s){var r=e.data("template"),n=this;if(r&&(e.empty(),t.isArray(a))){if(-1!==i.indexOf(".")&&(i=i.substring(i.lastIndexOf(".")+1)),e.hasClass("sort")){var o=e.attr("data-sort");if(o){switch(e.attr("data-sorttype")){case"alpha":a.sort();break;case"alphainsensitiv":a.sort(function(t,e){return t=t[o],e=e[o],t&&(t=t.toLowerCase()),e&&(e=e.toLowerCase()),e>t?-1:t>e?1:0});break;default:a.sort(function(t,e){return t[o]-e[o]})}e.attr("data-sortdesc")&&a.reverse()}}s||t.isFunction(i)&&(s=i,i=null);for(var l=0;a.length>l;l++){var h=a[l],d=r.clone(!0);d.data().pojo=h,d.addClass("POJO"),s&&s(d,h)===!1||(n._addCollectionControls(d),e.trigger("addCollection",[d,h]),i&&(n._fillData(d,h,i,l+1),n._initCollection(d,i),n._fillCollection(d,h,i)),e.append(d),e.trigger("postAddCollection",[d,t(d).data().pojo]))}}},i.prototype._addCollectionControls=function(e){var a=this;t.jsFormControls&&t(e).jsFormControls(),e.on("delete",function(){var e=t(this),a=t(e).data().pojo,i=t(this).closest(".collection");e.detach(),t(i).trigger("deleteCollection",[e,a])}),e.on("sortUp",function(){var e=t(this),i=e.prev(".POJO");0!==i.size()&&(e.detach(),i.before(e),a._reorder(e))}),e.on("sortDown",function(){var e=t(this),i=e.next(".POJO");0!==i.size()&&(e.detach(),i.after(e),a._reorder(e))}),t(".delete",e).click(function(){t(this).closest(".POJO").trigger("delete")}),t(".sortUp",e).click(function(){t(this).closest(".POJO").trigger("sortUp")}),t(".sortDown",e).click(function(){t(this).closest(".POJO").trigger("sortDown")});var i=t(e).closest(".collection");i.hasClass("sortable")&&t(i).sortable&&i.sortable("refresh")},i.prototype._reorder=function(e){e.attr("data-sort")||(e=e.closest(".collection"));var a=t(e).attr("data-sort");if(!(!a||t(e).attr("data-sorttype")&&"number"!==t(e).attr("data-sorttype")||t(e).attr("data-sortdesc")&&"false"!==t(e).attr("data-sortdesc"))){var i=0;t.each(t(e).children(),function(){var e=t(this).data("pojo");e||(e={},t(this).data("pojo",e)),e[a]=i++})}},i.prototype._renderObject=function(e,a,i){if(!e||!a&&!i)return"";if(i)return this.options.renderer&&this.options.renderer[i]?this.options.renderer[i](e):(this._debug("Unable to find renderer: "+i),"");var s=this,r="";return t.each(a.split(","),function(){var t=this.trim();r+=0===t.indexOf("'")||0===t.indexOf('"')?t.substring(1,t.length-1):s._get(e,t)}),r},i.prototype._get=function(t,e,i,s){var r,n,o,l="";if("function"==typeof e)return e(t);if(!t)return"";if(""===e)return t;if("$idx"===e)return s;if(r=t[e],!r)try{if("string"==typeof e&&(l=e.split(".")),o=l.length)for(r=t;r&&o--;)n=l.shift(),i&&!r[n]&&(r[n]={}),r=r[n]}catch(h){}return(null===r||r===a)&&(r=""),r.trim?r.trim():r},i.prototype._getValueWithArrays=function(t,e){if(null===t)return null;e=e.split(".");for(var a=/(.*)\[(\d+)\]/,i=1;e.length>i;i++){var s=a.exec(e[i]);try{t=s?t[s[1]][parseInt(s[2],10)]:t[e[i]]}catch(r){this._debug(e+" "+r)}}return t},i.prototype._getParent=function(t,e,a){return-1===e.indexOf(".")?t:(e=e.substring(0,e.lastIndexOf(".")),this._get(t,e,a))},i.prototype._getNumber=function(e){return e?t.jsFormControls?t.jsFormControls.Format._getNumber(e):(-1!=e.indexOf(",")&&(e=e.replace(RegExp(",","g"),"")),Number(e)):null},i.prototype._isEmpty=function(e){if(!e)return!0;if(t.isArray(e)){if(0===e.length)return!0;for(var a=0;e.length>a;a++)if(!this._isEmpty())return!1;return!0}if(t.isPlainObject(e)){if(t.isEmptyObject(e))return!0;for(var i in e)if(!this._isEmpty(e[i]))return!1;return!0}return isNaN(e)?""===e||" "===e:0===Number(e)||-1===Number(e)?!0:!1},i.prototype._equals=function(t,e,i){if(!t&&e&&e.length&&0===e.length)return!0;if(!e&&t&&t.length&&0===t.length)return!0;if(!t&&!e)return!0;var s=null;for(s in t){if(e[s]===a&&null!==t[s]&&""!==t[s]&&0!==t[s].length){if(("0"===t[s]||0===t[s])&&!e[s])continue;return!1}if(t[s])switch(typeof t[s]){case"object":if(i&&t[s][i]&&t[s][i]===e[s][i])continue;if(!this._equals(t[s],e[s]))return!1;break;case"function":break;default:if(!t[s]&&!e[s])break;if((t===!0||t===!1)&&t!==e)return!1;if(!isNaN(t[s])||!isNaN(e[s])){if(1e-7>Math.abs(Number(t[s])-Number(e[s])))break;return!1}if((""+t[s]).length!==(""+e[s]).length)return!1;if(t[s]!==e[s]&&Number(t[s])!==Number(e[s]))return!1}else if(e[s])return!1}for(s in e)if((!t||t[s]===a)&&null!==e[s]&&""!==e[s])return!1;return!0},i.prototype.equals=function(t,e){var a=this.get(!1);return this._equals(a,t,e)},i.prototype.changed=function(){if(!this.options.trackChanges)return!1;var e=!1,i=this;return t.each(this._getForm(),function(){return t("."+i.options.trackChanges,this).size()>0?(e=!0,!1):a}),e},i.prototype.resetChanged=function(){if(!this.options.trackChanges)return!1;var e=!1,a=this;return t.each(this._getForm(),function(){t("."+a.options.trackChanges,this).each(function(){t(this).removeClass(a.options.trackChanges),t(this).data().orig=t(this).val()})}),e},i.prototype._equalsCollection=function(e,i,s){var r=this,n=!1;return t(".collection",e).each(function(){if(!n){var e=t(this).attr("data-field");if(e&&0===e.indexOf(i+".")&&(e=e.substring((i+".").length),!(1>e.length))){var o=0;t(this).children().each(function(){if(!n){if(o>=s[e].length)return n=!0,a;var i=s[e][o++];r._pojoDifferFromInput(t(this),e,i)&&(n=!0),r._equalsCollection(t(this),e,i)||(n=!0)}}),s[e]&&s[e].length>o&&(n=!0)}}}),!n},i.prototype.fill=function(e){this.options.data=t.extend({},e),this._fill()},i.prototype.fillFields=function(e){this.options.data=t.extend({},e),this._fill(!0)},i.prototype.applyConditions=function(t){t||(t=this.get(!0)),this._evaluateConditionals(this.element,t)},i.prototype.reset=function(){this.fill({})},i.prototype.clear=function(){var e=this;t.each(this._getForm(),function(){e._clear(this,e.options.prefix)})},i.prototype.destroy=function(){return t(this.element).each(function(){t(this).removeData("jsForm"),t.jsFormControls&&t(this).jsFormControls("destroy")})},t.fn.jsForm=function(e){if("object"!=typeof e&&e){var s,r=Array.prototype.slice.call(arguments,1);if(0===this.length)return null;if(1===this.length&&(s=t(this).data("jsForm"))){if(0!==e.indexOf("_")&&s[e]){var n=s[e].apply(s,r);return n}return t.error("Method "+e+" does not exist on jQuery.jsForm"),!1}return this.each(function(){return s=t.data(this,"jsForm"),s?0!==e.indexOf("_")&&s[e]?s[e].apply(s,r):(t.error("Method "+e+" does not exist on jQuery.jsForm"),!1):a})}return this.each(function(){t(this).data("jsForm")||t(this).data("jsForm",new i(this,e))})},t.jsForm=function(e,a){var i=r[e];if(t.isFunction(a))i&&t.each(i,function(){a(this,t(this.element))}),s[e]=a;else if(i){var n=a,o=Array.prototype.slice.call(arguments,2);t.each(portlets,function(){this[n].apply(this,o)})}}})(jQuery,window),function(t){"use strict";function e(t){this.element=t,this._domInit()}var a={},i={};"undefined"!=typeof Handlebars&&(Handlebars.registerHelper("currency",function(e){return e?t.jsFormControls.Format.currency(e):t.jsFormControls.Format.currency(0)}),Handlebars.registerHelper("dec",function(e){return e?t.jsFormControls.Format.decimal(e):""}),Handlebars.registerHelper("percent",function(e){return e?t.jsFormControls.Format.decimal(100*e):"0"}),Handlebars.registerHelper("date",function(e){return e?t.jsFormControls.Format.date(e):""}),Handlebars.registerHelper("time",function(e){return e?t.jsFormControls.Format.time(e):""}),Handlebars.registerHelper("datetime",function(e){return e?t.jsFormControls.Format.dateTime(e):""}),Handlebars.registerHelper("dateTime",function(e){return e?t.jsFormControls.Format.dateTime(e):""}),Handlebars.registerHelper("timespan",function(e){return e?t.jsFormControls.Format.humanTime(e):""}),Handlebars.registerHelper("humanTime",function(e){return e?t.jsFormControls.Format.humanTime(e):""}),Handlebars.registerHelper("byte",function(e){return e?t.jsFormControls.Format.byte(e):""}),Handlebars.registerHelper("integer",function(e){return e?t.jsFormControls.Format.integer(e):""})),e.prototype._domInit=function(){var e=t(this.element);e.find("input.mandatory,textarea.mandatory").on("keyup",function(){t(this).val().length>0&&"null"!==t(this).val()?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid")}),e.find("input.mandatory,textarea.mandatory").on("change",function(){return t(this).hasClass("object")?(t(this).data().pojo?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid"),undefined):(t(this).val().length>0&&"null"!==t(this).val()?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid"),undefined)}).change(),e.find("select.mandatory").change(function(){null!==t(this).val()&&"null"!==t(this).val()&&t(this).val().length>0?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid")}).change(),e.find("input.date").each(function(){var e=t(this).attr("data-format");if(t(this).jqxDateTimeInput)if(t(this).data().valclass="jqxDateTimeInput",e)t(this).jqxDateTimeInput({formatString:e});else{var a=null;"undefined"!=typeof i18n?a=i18n.date:t(document).data().i18n&&t(document).data().i18n.date&&(a=t(document).data().i18n.date),t(this).jqxDateTimeInput({formatString:a.shortDateFormat})}else t(this).datepicker&&(e?t(this).datepicker({dateFormat:e}):t(this).datepicker())}),e.find("input.dateTime").each(function(){var e=t(this).attr("data-format");if(t(this).jqxDateTimeInput)if(t(this).data().valclass="jqxDateTimeInput",e)t(this).jqxDateTimeInput({formatString:e,showTimeButton:!0});else{var a=null;"undefined"!=typeof i18n?a=i18n.date:t(document).data().i18n&&t(document).data().i18n.date&&(a=t(document).data().i18n.date),t(this).jqxDateTimeInput({formatString:a.shortDateFormat+" HH:mm",showTimeButton:!0})}}),e.find("input.time").each(function(){t(this).jqxDateTimeInput&&(t(this).jqxDateTimeInput({formatString:"HH:mm",showTimeButton:!0,showDateButton:!1}),t(this).data().valclass="jqxDateTimeInput")});var a=RegExp("^[0-9.,-]+$");e.find("input.number").keyup(function(){var e=t(this).val();t(this).hasClass("currency")&&e&&(e=t.jsFormControls.Format._getNumber(e)),e.length>0&&(t(this).hasClass("autoclean")?t(this).val(e.replace(/[^0-9.,-]/g,"")):a.test(t(this).val())?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid"))}).keyup(),e.find("input.currency").each(function(){t(this).on("change blur",function(){var e=t(this).val();e.length>0&&t(this).val(t.jsFormControls.Format.currency(t.jsFormControls.Format._getNumber(e)))}),t(this).focus(function(){var e=t(this).val();e.length>0&&t(this).val(t.jsFormControls.Format._getNumber(e)),t(this).select()})}),e.find("input.percent").change(function(){var e=t(this).val();e.length>0&&t(this).val(t.jsFormControls.Format.decimal(t.jsFormControls.Format._getNumber(e))),t(this).focus(function(){var e=t(this).val();e.length>0&&t(this).val(t.jsFormControls.Format._getNumber(e)),t(this).select()})}),e.find("input.decimal").change(function(){var e=t(this).val();e.length>0&&t(this).val(t.jsFormControls.Format.decimal(t.jsFormControls.Format._getNumber(e)))}),e.find("input.vunit").change(function(){var e=t(this).val();e.length>0&&(e=t.jsFormControls.Format._getNumber(e),t(this).data().val=e,t(this).val(t.jsFormControls.Format.vunit(e,t(this).attr("data-unit"))))});var i=RegExp("^[0-9]+$");e.find("input.integer").keyup(function(){var e=t(this).val();e.length>0&&(t(this).hasClass("autoclean")?t(this).val(e.replace(/[^0-9]/g,"")):i.test(t(this).val())?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid"))}).keyup(),e.find("input.regexp").each(function(){t(this).keyup(function(){t(this).hasClass("autoclean")?t(this).data("regexp",RegExp(t(this).attr("data-regexp"),"g")):t(this).data("regexp",RegExp(t(this).attr("data-regexp")));var e=t(this).val();if(e.length>0){var a=t(this).data("regexp");t(this).hasClass("autoclean")?t(this).val(e.replace(a,"")):a.test(t(this).val())?t(this).addClass("valid").removeClass("invalid"):t(this).removeClass("valid").addClass("invalid")}else t(this).hasClass("mandatory")||t(this).removeClass("invalid").addClass("valid")}).keyup(),t(this).change(function(){t(this).keyup()})}),e.find("input.rotatestate").each(function(){var e=t(this).attr("data-state-values"),a=t(this).attr("data-state-class");if(e){try{e=JSON.parse(e)}catch(i){return}var s=t("");t(this).attr("title")&&s.attr("title",t(this).attr("title")),t(this).attr("data-state-style")&&s.attr("style",t(this).attr("data-state-style")),s.data("states",e),s.data("control",this),s.data("activeState",null),t(this).data("control",s),a&&s.addClass(a),s.click(function(){var e=t(this).data().activeState,a=t(this).data().states,i=t(this).data().control,s=null;if(null!==e){for(var r=0;a.length>r;r++)if(a[r].value===e.value){s=r===a.length-1?a[0]:a[r+1];break}}else s=a[0];t(i).attr("value",s.value),t(i).change()}),t(this).change(function(){var e=t(t(this).data().control),a=e.data().activeState,i=e.data().states;null!==a&&e.removeClass(a["class"]);var s=t(this).val();t.each(i,function(){return this.value===s?(e.data().activeState=this,this.title&&e.attr("title",this.title),e.addClass(this["class"]),!1):undefined })}),t(this).change(),t(this).after(s),t(this).hide()}})},e.prototype.validate=function(){return t(".required,.regexp,.date,.mandatory,.number,.validate",this.element).change(),t(".invalid",this.element).length>0?!1:!0},e.prototype.destroy=function(){return t(this.element).each(function(){t(this).removeData("jsFormControls")})},t.fn.jsFormControls=function(a){if("object"!=typeof a&&a){var i=Array.prototype.slice.call(arguments,1);if(1==this.length){var s=t(this).data("jsFormControls");if(s){if(0!==a.indexOf("_")&&s[a]){var r=s[a].apply(s,i);return r}return t.error("Method "+a+" does not exist on jQuery.jsFormControls"),!1}}return this.each(function(){var e=t.data(this,"jsFormControls");return e?0!==a.indexOf("_")&&e[a]?e[a].apply(e,i):(t.error("Method "+a+" does not exist on jQuery.jsFormControls"),!1):undefined})}return this.each(function(){t(this).data("jsFormControls")||t(this).data("jsFormControls",new e(this,a))})},t.jsFormControls=function(e,s){var r;if(t.isFunction(s))r=i[e],r&&t.each(r,function(){s(this,t(this.element))}),a[e]=s;else if(r=i[e]){var n=s,o=Array.prototype.slice.call(arguments,2);t.each(portlets,function(){this[n].apply(this,o)})}},t.jsFormControls.Format={format:function(e,a){return t(e).hasClass("dateTime")||t(e).hasClass("datetime")?isNaN(a)?a:t.jsFormControls.Format.dateTime(a):t(e).hasClass("date")?isNaN(a)?a:t.jsFormControls.Format.date(a):t(e).hasClass("currency")?t.jsFormControls.Format.currency(a):t(e).hasClass("byte")?isNaN(a)?a:t.jsFormControls.Format.byte(a):t(e).hasClass("decimal")?(t(e).data().processor=t.jsFormControls.Format.getDecimal,t.jsFormControls.Format.decimal(a)):t(e).hasClass("vunit")?(t(this).data().val=a,t(e).data().processor=t.jsFormControls.Format.getVunit,t.jsFormControls.Format.vunit(a,t(e).attr("data-unit"))):t(e).hasClass("percent")?(t(e).data().processor=t.jsFormControls.Format.getPercent,t.jsFormControls.Format.percent(a)):t(e).hasClass("humantime")?(t(e).data().processor=t.jsFormControls.Format.getHumanTime,t.jsFormControls.Format.humanTime(a)):t(e).hasClass("timespan")?t.jsFormControls.Format.timespan(a):a},_getValue:function(t,e,a){return e===undefined&&a===undefined?t:isNaN(t)||e===undefined||a===undefined?undefined:a},checkBox:function(e,a,i,s){return i=t.jsFormControls.Format._getValue(e,a,i,s),i?' ':' '},_getNumber:function(e){if(!e)return null;var a={format:"#,##0.###",groupingSeparator:",",decimalSeparator:"."},i=null,s=null;return"undefined"!=typeof i18n&&i18n.number?(a=i18n.number,i18n.currency&&(i=i18n.currency.prefix,s=i18n.currency.suffix)):t(document).data().i18n&&t(document).data().i18n.number&&(a=t(document).data().i18n.number,t(document).data().i18n.currency&&(i=t(document).data().i18n.currency.prefix,s=t(document).data().i18n.currency.suffix)),e=""+e,i&&i.length>0&&0===e.indexOf(i)&&(e=e.substring(i.length)),s&&s.length>0&&e.indexOf(s)>0&&(e=e.substring(0,e.length-s.length)),e=t.trim(e),-1!==e.indexOf(a.groupingSeparator)&&(e=e.replace(RegExp("\\"+a.groupingSeparator,"g"),"")),"."!==a.decimalSeparator&&-1!==e.indexOf(a.decimalSeparator)&&(e=e.replace(RegExp(a.decimalSeparator,"g"),".")),Number(e)},_pad:function(t){var e=10>t?"0":"";return e+=t},asMoment:function(e){if("undefined"==typeof moment)return new Date(e);var a=moment().toMomentFormatString(i18n.date.format),i=moment().toMomentFormatString(i18n.date.timeFormat),s=[a+" "+i,a,i],r=null;return t.each(s,function(){if(r)return!1;var t=moment(e,this,!0);return t.isValid()?(r=t,!1):undefined}),r||(r=moment(e)),r},asNumber:function(e){return t.jsFormControls.Format._getNumber(e)},"byte":function(t){if(""===t||!t||isNaN(t))return t;var e=1024;if(e>t)return t+" B";var a=Math.floor(Math.log(t)/Math.log(e)),i="KMGTPE".charAt(a-1)+"B";return Math.round(10*t/Math.pow(e,a))/10+i},vunit:function(e,a){if(""===e||!e||isNaN(e))return e;var i=0>e;if(i&&(e*=-1),1e3>e)return(i?"-":"")+t.jsFormControls.Format.decimal(e)+" "+a;var s=1e3,r=Math.floor(Math.log(e)/Math.log(s)),n="kmgtpe".charAt(r-1)+a;return(i?"-":"")+t.jsFormControls.Format.decimal(Math.round(100*e/Math.pow(s,r))/100)+" "+n},decimal:function(e){if(""===e||!e||isNaN(e))return e;var a={format:"#,##0.###",groupingSeparator:",",decimalSeparator:"."};"undefined"!=typeof i18n&&i18n.number?a=i18n.number:t(document).data().i18n&&t(document).data().i18n.number&&(a=t(document).data().i18n.number);var i=0;Math.abs(e-Math.floor(e))>.001&&(i=2);var s=e,r=isNaN(r=Math.abs(i))?2:i,n=a.decimalSeparator,o=a.groupingSeparator,l=parseInt(s=Math.abs(+s||0).toFixed(r),10)+"",h=(h=l.length)>3?h%3:0;return(0>e?"-":"")+(h?l.substr(0,h)+o:"")+l.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+o)+(r?n+Math.abs(s-l).toFixed(r).slice(2):"")},integer:function(e){if(""===e||!e||isNaN(e))return e;var a={format:"#,##0.###",groupingSeparator:",",decimalSeparator:"."};"undefined"!=typeof i18n&&i18n.number?a=i18n.number:t(document).data().i18n&&t(document).data().i18n.number&&(a=t(document).data().i18n.number);var i=0;Math.abs(e-Math.floor(e))>.001&&(i=2);var s=e,r=0,n=a.decimalSeparator,o=a.groupingSeparator,l=parseInt(s=Math.abs(+s||0).toFixed(r),10)+"",h=(h=l.length)>3?h%3:0;return(0>e?"-":"")+(h?l.substr(0,h)+o:"")+l.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+o)+(r?n+Math.abs(s-l).toFixed(r).slice(2):"")},getDecimal:function(t){return""===num?0:Number(t)},getVunit:function(t){return""===num?0:Number(t)},percent:function(e){return""===e||!e||isNaN(e)?e:t.jsFormControls.Format.decimal(100*e)},getPercent:function(t){return""===t?0:(-1!==t.indexOf("%")&&(t=t.substring(0,t.length-1)),Number(t)/100)},currency:function(e,a,i,s){if(i=t.jsFormControls.Format._getValue(e,a,i,s),!i){if(a)return" ";i=0}var r=t.jsFormControls.Format.decimal(i),n=null,o=null;return"undefined"!=typeof i18n?i18n.currency&&(n=i18n.currency.prefix,o=i18n.currency.suffix):t(document).data().i18n&&t(document).data().i18n.number&&t(document).data().i18n.currency&&(n=t(document).data().i18n.currency.prefix,o=t(document).data().i18n.currency.suffix),n&&(r=n+r),o&&(r+=o),r},dateTime:function(e,a,i,s){return i=t.jsFormControls.Format._getValue(e,a,i,s),i?this.date(i)+" "+this.time(i):a?" ":""},date:function(e,a,i,s){if(i=t.jsFormControls.Format._getValue(e,a,i,s),!i||""===i)return a?" ":"";if(isNaN(i))return i;var r=new Date;r.setTime(i);var n=r.getYear();1900>n&&(n+=1900);var o=null;return"undefined"!=typeof i18n?o=i18n.date:t(document).data().i18n&&t(document).data().i18n.date&&(o=t(document).data().i18n.date),t.format?t.format.date(r,o.shortDateFormat):this._pad(r.getDate())+"."+this._pad(r.getMonth()+1)+"."+this._pad(n)},time:function(e,a,i,s){if(i=t.jsFormControls.Format._getValue(e,a,i,s),!i||""===i)return a?" ":"";if(isNaN(i))return i;var r=new Date;r.setTime(i);var n="HH:mm";return"undefined"!=typeof i18n?i18n.timeFormat?n=i18n.timeFormat:i18n.date&&i18n.date.timeFormat&&(n=i18n.date.timeFormat):t(document).data().i18n&&t(document).data().i18n.timeFormat!==undefined&&(n=t(document).data().i18n.timeFormat),t.format?t.format.date(r,n):this._pad(r.getHours())+":"+this._pad(r.getMinutes())},timespan:function(e,a,i,s){i=t.jsFormControls.Format._getValue(e,a,i,s),i||(i="0");for(var r=i.split(":"),n=0;r.length>n;n++){var o=Number(r[n]);o&&"NaN"!==o||(o=0),r[n]=this._pad(o)}return 0>=r.length?"0:00":1==r.length?"0:"+this._pad(allowkomma?r[0]:Math.floor(r[0])):2==r.length?allowkomma?r[0]:Math.floor(r[0])+":"+this._pad(allowkomma?r[1]:Math.floor(r[1])):allowkomma?r[0]:Math.floor(r[0])+":"+this._pad(allowkomma?r[1]:Math.floor(r[1]))+":"+pad(allowkomma?r[2]:Math.floor(r[2]))},humanTime:function(e,a,i,s){if(i=t.jsFormControls.Format._getValue(e,a,i,s),isNaN(i))return i&&0!==i.length?i:"-";var r=Math.floor(i/36e5);i-=36e5*r;var n=Math.floor(i/6e4);i-=6e4*n;var o=Math.floor(i/1e3);i-=1e3*o;var l="";return r>0&&(l+=r+"h ",o=0,i=0),n>0&&(l+=n+"m ",i=0),o>0&&(l+=o+"s ",i=0),i>0&&(l+=i+"ms"),l.trim()},getHumanTime:function(t){if(!t||""===t)return 0;for(var e=0,a="",i="",s=function(){if(""!==a){var t=Number(a);switch(i){case"ms":case"mill":e+=t;break;case"s":case"secs":e+=1e3*t;break;case"":case"m":case"min":case"minute":e+=6e4*t;break;case"h":case"hour":e+=36e5*t;break;case"d":case"day":case"days":e+=36e5*24*t}i="",a=""}},r=0;t.length>r;r++){var n=t.charAt(r);switch(n){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":""!==i&&s(),a+=n;break;case"m":case"i":case"n":case"s":case"h":case"o":case"u":case"r":case"a":case"e":case"c":case"y":case"d":i+=n;break;default:}}return s(),e}}}(jQuery,window),String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")},String.prototype.startsWith=function(t){return null===this||0>=this.length?!1:null===t||"null"==t||0>=t.length?!1:this.substr(0,t.length)==t?!0:!1},String.prototype.startsWithIgnoreCase=function(t){return null===this||0>=this.length?!1:null===t||"null"==t||0>=t.length?!1:this.substr(0,t.length).toLowerCase()==t.toLowerCase()?!0:!1},String.prototype.endsWith=function(t){return null===this||0>=this.length?!1:null===t||"null"==t||0>=t.length||t.length>this.length?!1:this.substr(this.length-t.length)==t?!0:!1}; -//@ sourceMappingURL=js/jquery.jsForm.min.map \ No newline at end of file diff --git a/js/jquery.jsForm.min.map b/js/jquery.jsForm.min.map deleted file mode 100644 index df9d8fa..0000000 --- a/js/jquery.jsForm.min.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/jquery.jsForm.min.js","sources":["js/jquery.jsForm-1.3.5.js"],"names":["$","window","undefined","JsForm","element","options","$this","this","extend","controls","data","prefix","trackChanges","validateHidden","skipEmpty","renderer","processors","dataHandler","connect","viewClass","attr","_init","JSFORM_INIT_FUNCTIONS","JSFORM_MAP","prototype","_domInit","jsFormControls","each","_getForm","console","_debug","ex","_fill","ele","_initCollection","_initConditional","_fillDom","push","getNodes","that","msg","param","cons","log","p","isPlainObject","JSON","stringify","form","showEvaluator","fields","show","value","_getValueWithArrays","hide","hideEvaluator","conditionals","find","conditionalEval","length","func","field","split","_evaluateConditionals","collectionMap","collections","colName","indexOf","container","cols","_initList","hasClass","sortable","config","parse","on","_reorder","ev","pojo","fn","fieldName","tmpl","line","clone","addClass","prefill","val","isFunction","substring","append","_enableTracking","_addCollectionControls","trigger","idx","children","_fillData","hasJsForm","click","preventDefault","beforeInsertCallback","focus","inserter","parent","_renderObject","blobInput","evt","fileName","pop","files","target","reader","FileReader","onload","e","result","readAsDataURL","detach","removeAttr","_clear","removeData","name","prop","valclass","is","change","fieldname","empty","_handleArrayInPojo","use","pushVal","index","splice","num","isNaN","Number","_createPojoFromInput","start","startObj","trim","processor","format","d","date","setHours","setMinutes","setSeconds","setMilliseconds","getTime","Date","_getNumber","serialize","prev","parts","current","i","selectedClass","id","cobj","track","orig","removeClass","_fillSelectCollection","$parent","colData","cname","_get","isArray","lastIndexOf","toggleClass","cid","obj","did","nodeName","toUpperCase","text","cdata","deserialize","Format","html","cbVal","cbId","found","pk","get","ignoreInvalid","originalPojo","invalid","filter","_getCollection","colParent","_getParent","_isEmpty","getData","fieldMode","mode","closest","replace","thespan","wrap","span","before","remove","preventEditing","prevent","validate","valid","noInput","_fillCollection","cur","_fillList","lineFunc","sortField","sort","a","b","toLowerCase","reverse","base","size","next","after","prio","skin","ret","expr","create","prm","shift","path","arrayPattern","match","exec","parseInt","RegExp","isEmptyObject","f","_equals","idField","Math","abs","equals","changed","resetChanged","_equalsCollection","differs","childCounter","_pojoDifferFromInput","fill","fillFields","applyConditions","reset","clear","destroy","jsForm","method","args","Array","slice","call","arguments","apply","error","initFunc","jsForms","portlets","jQuery","JsFormControls","Handlebars","registerHelper","currency","decimal","time","dateTime","humanTime","byte","integer","location","jqxDateTimeInput","formatString","dateformat","i18n","document","shortDateFormat","datepicker","dateFormat","showTimeButton","showDateButton","numberRegexp","keyup","test","select","vunit","integerRegexp","regexp","states","defaultClass","stateControl","cState","activeState","cStates","control","newState","title","getDecimal","getVunit","getPercent","percent","getHumanTime","timespan","_getValue","row","cell","checkBox","columnDef","numberformat","groupingSeparator","decimalSeparator","pre","post","number","suffix","_pad","o","asMoment","moment","dformat","toMomentFormatString","tformat","timeFormat","formats","m","isValid","asNumber","bytes","unit","exp","floor","charAt","round","pow","neg","un","comma","n","c","t","toFixed","j","substr","setTime","year","getYear","getDate","getMonth","getHours","getMinutes","tokens","nt","allowkomma","pad","h","s","out","tu","convert","curNum","String","startsWith","str","startsWithIgnoreCase","endsWith"],"mappings":"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"} \ No newline at end of file