File manager - Edit - /home/gzbnyc5/pty-app/realstate/public/js/pty.v2.field.save.js
Back
var rbracket = /\[\]$/, rCRLF = /\r?\n/g, rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, rsubmittable = /^(?:input|select|textarea|keygen)/i, rcheckableType = /^(?:checkbox|radio)$/i; $.fn.serializeArray = function () { return this.map(function () { // Can add propHook for "elements" to filter or add form elements var elements = jQuery.prop(this, "elements"); return elements ? jQuery.makeArray(elements) : this; }) .filter(function () { var type = this.type; // Use .is( ":disabled" ) so that fieldset[disabled] works return ( this.name && !jQuery(this).is(":disabled") && rsubmittable.test(this.nodeName) && !rsubmitterTypes.test(type) && (this.checked || !rcheckableType.test(type)) ); }) .map(function (_i, elem) { var val = jQuery(this).val(); if (val == null) { return null; } if (Array.isArray(val)) { if (val.length === 0) { return { name: elem.name, value: null }; } return jQuery.map(val, function (val) { return { name: elem.name, value: val.replace(rCRLF, "\r\n") }; }); } return { name: elem.name, value: val.replace(rCRLF, "\r\n") }; }) .get(); }; const PtyFieldSaveService = (function () { let form; let modelId; const urlFieldSave = viewUrls["field-save"]; const urlFileSave = viewUrls["upload-file"]; const serialize = function (obj, prefix) { var str = [], p; for (p in obj) { if (obj.hasOwnProperty(p)) { var k = prefix ? prefix + "[" + p + "]" : p, v = obj[p]; str.push( v !== null && typeof v === "object" ? serialize(v, k) : encodeURIComponent(k) + "=" + encodeURIComponent(v) ); } } return str.join("&"); }; const fieldSave = function (fields) { const serializedObjects = []; if (fields.length > 0 && fields.serialize().length > 0) { serializedObjects.push(fields.serialize()); } const notSelected = fields .filter("input[type=checkbox]:not(:checked)") .map(function () { const newObj = {}; newObj[this.name] = this.dataset.uncheckedValue ? this.dataset.uncheckedValue : ""; return newObj; }); if (notSelected.length > 0) { serializedObjects.push(serialize(notSelected[0])); } const postData = { id: modelId, fields: serializedObjects.join("&"), }; $.ajax({ url: urlFieldSave, data: postData, type: "POST", dataType: "JSON", success: function (data) {}, error: function (data) {}, }); }; const initFieldSave = function (target) { form.on("change", target, function () { let fields = $(this); if (fields.attr("type") == "file") { return; } if (fields.eq(0).closest("[data-repeater-item]").length > 0) { fields = fields .eq(0) .closest("[data-repeater-item]") .find("input, select"); } fieldSave(fields); }); }; return { init: function (target) { form = $("#kt_page_add_form"); modelId = Number($('[name="model_id"]').val()); if (Number(modelId) <= 0) { return; } initFieldSave(target); }, fieldSave, }; })();
| ver. 1.4 |
Github
|
.
| PHP 8.2.31 | Generation time: 0 |
proxy
|
phpinfo
|
Settings