{"version":3,"sources":["../../../FormSubmission.ts"],"names":[],"mappings":"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","file":"FormSubmission.js","sourcesContent":["$(document).ready(function (): any {\n $(\"body\").on(\"submit\"\n , \"main form:not([data-dont-use-ajax-submit='true']):not([data-act-as-grid-filter='true'])\"\n + \",div.bootbox form:not([data-dont-use-ajax-submit='true']):not([data-act-as-grid-filter='true'])\"\n , function (e: Event): any {\n let $form: JQuery = $(this);\n\n e.preventDefault();\n\n if (typeof ($form.valid) !== \"function\") {\n console.error(\"JQuery validation plugin not found!\");\n }\n\n if (!($form.valid) || $form.valid()) {\n let formData: FormData = new FormData(this);\n let getAsBlob: boolean = $form.data(\"get-as-blob\");\n\n $.ajax({\n url: $form.attr(\"action\"),\n method: $form.attr(\"method\"),\n data: formData,\n processData: false,\n contentType: false,\n headers: {\n \"X-Should-Return-Partial\": \"true\"\n },\n success: function (data: any, textStatus: string, jqXHR: JQueryXHR): void {\n let $modal: any = $form.closest(\"div.bootbox\");\n\n\n let isInvalidModel: boolean = jqXHR.getResponseHeader(\"X-modelstate-invalid\") === \"true\";\n let isKeepPopup: boolean = jqXHR.getResponseHeader(\"X-keep-popup\") === \"true\";\n if ((!isInvalidModel && !isKeepPopup) && $modal.length > 0) { // hide popup if saved successfully\n let bootboxCallbackOnSuccess: string = $modal.data(\"callback-on-success\");\n\n $modal.modal(\"hide\");\n\n if (typeof bootboxCallbackOnSuccess !== \"undefined\"\n && bootboxCallbackOnSuccess !== null\n && bootboxCallbackOnSuccess !== \"\") {\n //let f: any = Nrl.Common.Helpers.EvalHelper.GetFunction(bootboxCallbackOnSuccess);\n //f();\n }\n\n } else { // error or not popup\n $form.removeData(\"validator\");\n $form.removeData(\"unobtrusiveValidation\");\n\n let $data: JQuery = $(data);\n $form.replaceWith($data);\n\n if ($.validator) {\n $.validator.unobtrusive.parse($data);\n }\n\n //Nrl.Common.Validation.ValidateForm($data);\n }\n },\n error: function (jqXHR: JQueryXHR, textStatus: string, errorThrown: string): void {\n //debugger;\n },\n dataType: getAsBlob ? \"binary\" : \"html\"\n });\n }\n }\n );\n\n // $(\"body\").on(\"submit\"\n // , \"div#app-content form[data-act-as-grid-filter='true']\"\n // + \", div.bootbox form[data-act-as-grid-filter='true']\"\n // , function (e: Event): any {\n // let $form: JQuery = $(this);\n\n // e.preventDefault();\n\n // if (typeof ($form.valid) !== \"function\") {\n // console.error(\"JQuery validation plugin not found!\");\n // }\n\n // if (!($form.valid) || $form.valid()) {\n // let gridList: JQuery = $(\"div.dx-widget[data-additional-filter-form-jquery-selector]\");\n // gridList.each(function (index: number, elem: Element): any {\n // let $grid: JQuery = $(elem);\n // let formSelector: string = $grid.data(\"additional-filter-form-jquery-selector\");\n\n // if (formSelector !== null && formSelector !== \"\") {\n // let $targetForm: JQuery = $(formSelector);\n // if ($targetForm.length > 0) {\n // if ($form[0] === $targetForm[0]) {\n\n // if ($grid.hasClass(\"dx-treelist\")) {\n // // this grid should be refreshed by this form\n // ($grid.dxTreeList(\"instance\")).filter(\n // \"{do-not-parse}\",\n // \"{additionalfilter}\",\n // $form.find(\"*:not(.sys-exclude-from-serialization)\").serialize()\n // );\n\n // //force tree list GET method\n // if ($form.data(\"refresh-grid-filter-on-submit\") === true) {\n // ($grid.dxTreeList(\"instance\")).refresh();\n // }\n // } else {\n // // this grid should be refreshed by this form\n // ($grid.dxDataGrid(\"instance\")).filter(\n // \"{do-not-parse}\",\n // \"{additionalfilter}\",\n // $form.find(\"*:not(.sys-exclude-from-serialization)\").serialize()\n // );\n\n // //force grid GET method (Devexpress won't submit if grid filter doesn't change)\n // if ($form.data(\"refresh-grid-filter-on-submit\") === true) {\n // ($grid.dxDataGrid(\"instance\")).refresh();\n // }\n // }\n // }\n // }\n // }\n // });\n // }\n // }\n // );\n\n // $(\"body\").on(\"reset\"\n // , \"div#app-content form[data-act-as-grid-filter='true']\"\n // + \", div.bootbox form[data-act-as-grid-filter='true']\"\n // , function (e: Event): any {\n // let $form: JQuery = $(this);\n // let gridList: JQuery = $(\"div.dx-widget[data-additional-filter-form-jquery-selector]\");\n // gridList.each(function (index: number, elem: Element): any {\n // let $grid: JQuery = $(elem);\n // let formSelector: string = $grid.data(\"additional-filter-form-jquery-selector\");\n // if (formSelector !== null && formSelector !== \"\") {\n // let $targetForm: JQuery = $(formSelector);\n // if ($targetForm.length > 0) {\n // if ($form[0] === $targetForm[0]) {\n // if ($grid.hasClass(\"dx-treelist\")) { //treeList clear filters\n // ($grid.dxTreeList(\"instance\")).clearFilter();\n // } else { //dataGrid clear filters\n // ($grid.dxDataGrid(\"instance\")).clearFilter();\n // }\n // }\n // }\n // }\n // });\n // }\n // );\n});\n\nfunction DisableDoubleSubmit(event: Event, sender: any): void {\n const $form: JQuery = $(sender);\n\n let isSubmitted: boolean = $form.data(\"isSubmitted\") === \"true\";\n\n if (isSubmitted) {\n event.preventDefault();\n } else {\n $form.data(\"isSubmitted\", \"true\");\n }\n}"]}