![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/www/html/keeview_app/html/ |
Upload File : |
hr.output_form_mobile.fragmentClasses = { staticLoaded: false }; hr.output_form_mobile.emittor = absol.form.emittor; hr.output_form_mobile.generateOperateFunctionOfArray = function (typelist) { var handleCmdInsertRow; return handleCmdInsertRow; } hr.output_form_mobile.checkFormVersion = function(code, callbackfunc){ var checkInputForm = Thread.create({ extcode: EncodingClass.exportCode() + "\n" + code, modules: { data_module: null, generateDefaultLinearMobileOutputForm: form_module.generateDefaultLinearMobileOutputForm, generateDefaultRelativeMobileOutputForm: form_module.generateDefaultRelativeMobileOutputForm, getNameDictOfTypelist: form_module.getNameDictOfTypelist, makeLayoutFormDictionary: form_module.makeLayoutFormDictionary, makeCircuitFormDictionary: form_module.makeCircuitFormDictionary, convertLayoutInputFormToNewVersion: form_module.convertLayoutInputFormToNewVersion, convertCircuitInputFormToNewVersion: form_module.convertCircuitInputFormToNewVersion, form_module: { type2mobileoutputform: form_module.type2mobileoutputform } }, func: function(params) { params.data = EncodingClass.pack.fromUint8Array(params.data); data_module = params.data.read(); params.data.terminate(); var latestVersionForm = {}; var formDict = {}; data_module.mobile_output_forms.items.forEach((cur) => { formDict[cur.id] = cur; }); var typeDict = {}; data_module.typelists.items.forEach((cur, idx) => { typeDict[cur.id] = idx; }); data_module.mobile_output_forms.items.forEach(function (form) { var t_idx = typeDict[form.typeid]; if (!form.content.layout) return; if (t_idx === undefined) { return; } if ( data_module.typelists.items[t_idx].type == "structure" || data_module.typelists.items[t_idx].type == "extends_structure" || data_module.typelists.items[t_idx].type2 == "structure" || data_module.typelists.items[t_idx].type2 == "extends_structure" ) { form.content.layout.attributes.typeId = form.typeid; form.content.layout.attributes.formName = form.name; if (form.content.layout.attributes.formVersion != form_module.formVersion){ if (!latestVersionForm[form.typeid]) { var t_form; if (form.content.layout.tag == "LinearLayout") t_form = form_module.generateDefaultLinearOutputForm({}, form.typeid, data_module.typelists.items[t_idx]); else t_form = form_module.generateDefaultRelativeOutputForm({}, form.typeid, data_module.typelists.items[t_idx]); latestVersionForm[form.typeid] = { layout: {}, circuit: { blocks: {}, lines: {} } }; if (t_form !== false) { var nameDict = {}; form_module.getNameDictOfTypelist(data_module.typelists.items[t_idx].content, nameDict); form_module.makeLayoutFormDictionary(t_form.layout, nameDict, latestVersionForm[form.typeid]); form_module.makeCircuitFormDictionary(t_form.circuit, latestVersionForm[form.typeid]); } else { ModalElement.close(); } } form_module.convertLayoutInputFormToNewVersion(form.content.layout.children, latestVersionForm[form.typeid]); form_module.convertCircuitInputFormToNewVersion(form.content.circuit, latestVersionForm[form.typeid]); var t_dict = {}; form.content.circuit.blocks.forEach(function(elt){ if (!t_dict[elt.attributes.id]) { t_dict[elt.attributes.id] = elt; } else { if (!t_dict[elt.attributes.id].attributes.permissions) { t_dict[elt.attributes.id] = elt; } } }); form.content.circuit.blocks = Object.values(t_dict); t_dict = {}; form.content.circuit.lines.forEach(function(elt){ var text = elt.u + elt.uPin + elt.v + elt.vPin; if (!t_dict[text]) { t_dict[text] = elt; } else { if (!t_dict[text].attributes.permissions) { t_dict[text] = elt; } } }); form.content.circuit.lines = Object.values(t_dict); } } }); data_module = EncodingClass.pack.fromVariable(data_module); params.data = data_module.toUint8Array(); data_module.terminate(); tranferList = [params.data.buffer]; return { status: "success", retval: params.data }; }, callbackfunc: callbackfunc }); var packData = EncodingClass.pack.fromVariable({ typelists: data_module.typelists, mobile_output_forms: data_module.mobile_output_forms }); var data = packData.toUint8Array(); packData.terminate(); // var tranferList = data.toUint8Array(); return checkInputForm.call({data: data}, [data.buffer]); } hr.output_form_mobile.loadFormConstructorToAssembler = function () { return new Promise(function(rs, rj){ var formDict = {}; var latestVersionForm = {}; var caculateFunc = function(){ data_module.mobile_output_forms.items.forEach((cur) => { formDict[cur.id] = cur; }); data_module.mobile_output_forms.items.forEach(function (form) { var t_idx = data_module.typelists.getIndex(form.typeid); if (!form.content.layout) return; if (t_idx == -1) { // console.log(form.typeid); return; } // if (data_module.typelists.items[t_idx].type == "structure" || data_module.typelists.items[t_idx].type == "extends_structure" || data_module.typelists.items[t_idx].type2 == "structure") { // form.content.layout.attributes.typeId = form.typeid; // form.content.layout.attributes.formName = form.name; // if (form.content.layout.attributes.formVersion != form_module.formVersion){ // if (!latestVersionForm[form.typeid]) { // var t_form; // if (form.content.layout.tag == 'LinearLayout') t_form = form_module.generateDefaultLinearMobileOutputForm({}, form.typeid, data_module.typelists.items[t_idx]); // else t_form = form_module.generateDefaultRelativeMobileOutputForm({}, form.typeid, data_module.typelists.items[t_idx]); // latestVersionForm[form.typeid] = { // layout: {}, // circuit: { // blocks: {}, // lines: {} // } // }; // if (t_form !== false) { // var nameDict = {}; // form_module.getNameDictOfTypelist(data_module.typelists.items[t_idx].content, nameDict); // form_module.makeLayoutFormDictionary(t_form.layout, nameDict, latestVersionForm[form.typeid]); // form_module.makeCircuitFormDictionary(t_form.circuit, latestVersionForm[form.typeid]); // } // else { // ModalElement.close(); // } // } // form_module.convertLayoutInputFormToNewVersion(form.content.layout.children, latestVersionForm[form.typeid]); // form_module.convertCircuitInputFormToNewVersion(form.content.circuit, latestVersionForm[form.typeid]); // var t_dict = {}; // form.content.circuit.blocks.forEach(function(elt){ // if (!t_dict[elt.attributes.id]) { // t_dict[elt.attributes.id] = elt; // } // else { // if (!t_dict[elt.attributes.id].attributes.permissions) { // t_dict[elt.attributes.id] = elt; // } // } // }); // form.content.circuit.blocks = Object.values(t_dict); // // t_dict = {}; // form.content.circuit.lines.forEach(function(elt){ // var text = elt.u + elt.uPin + elt.v + elt.vPin; // if (!t_dict[text]) { // t_dict[text] = elt; // } // else { // if (!t_dict[text].attributes.permissions) { // t_dict[text] = elt; // } // } // }); // form.content.circuit.lines = Object.values(t_dict); // } // } var constructor = absol.form.makeFmFragmentConstructor({ tag: '' + form.id, contentViewData: form.content }); if ((data_module.typelists.items[t_idx]) && (data_module.typelists.items[t_idx].type == "array" || data_module.typelists.items[t_idx].type2 == "array")) { form_module.attachOnCreatedCb(form.content.layout); constructor.prototype.onCreated = function () { var myArrayComp = this.findViewByName(form.typeid.toString()); if (!myArrayComp) { var t_id = data_module.typelists.items[t_idx].content.typeof; myArrayComp = this.findViewByName("$value$"); } myArrayComp.on('cmd_insert_row', this.handleCmdInsertRow.bind(this)); myArrayComp.on('cmd_remove_row', this.handleCmdRemoveRow.bind(this)); }; constructor.prototype.handleCmdRemoveRow = function (event) { event.accept(new Promise(function (resolve) { ModalElement.question({ title: LanguageModule.text("txt_warning"), message: "Bạn có muốn xóa không?", onclick: function (sel) { if (sel == 0) { resolve(true); } else { resolve(false); } } }); })) }; constructor.prototype.handleCmdInsertRow = function (event) { // var parentFrg = this.parentFragment;//laf cais form o ngoai // var orgId = parentFrg.props.___.value; var shareData = this.getContext("shareData"); var orgid; if (shareData) { orgid = shareData.orgid; } if (orgid && form.typeid == -25) event.resolve({type_select_position_orgid: {value: orgid}}); else event.resolve({}); }; } absol.form.AssemblerInstance.addConstructor(constructor); form.FragmentClass = constructor; }); rs("success"); } caculateFunc(); }); }; hr.output_form_mobile.init = function (host) { while (data_module.pendingData.status != "success") { setTimeout(function(){ hr.output_form_mobile.init(host); }, 1000) return; } if (window.ABSOL_DEBUG) console.trace(host); host.database = {}; host.taskName = "m_output"; host.isMobile = true; hr.output_form_mobile.loadFormConstructorToAssembler().then(function(){ data_module.mobile_output_forms.items.sort(function (a, b) { if (absol.string.nonAccentVietnamese(a.name).toLowerCase() < absol.string.nonAccentVietnamese(b.name).toLowerCase()) return -1; if (absol.string.nonAccentVietnamese(a.name).toLowerCase() > absol.string.nonAccentVietnamese(b.name).toLowerCase()) return 1; return 0; }); hr.output_form_mobile.emittor.emit('form_load', { formList: data_module.mobile_output_forms.items }); // Tạo form và gắn form // Plugin viết trong file FunctionEditor.js // Các hàm thêm sửa xóa form viết trong file form_module.js host.formEditor = new absol.form.FormEditor(); host.formEditor.getView() .addStyle({ width: '100%', height: '100%' }).addTo(host.holder); host.formEditor.setContext("HOST", host); host.formEditor.start(); host.holder.on('deactive', function () { host.formEditor.pause(); }); host.holder.on('active', function () { host.formEditor.start(); }); host.holder.on('remove', function () { host.formEditor.destroy(); }); }); // ///////////////////////////////// // // Load người dùng, quốc gia, thành phố, form, kiểu dữ liệu // var output_forms = host.funcs.loadFormList(); // var typelists = data_module.loadTypeList(); // ///////////////////////////////// // Promise.all( // [ // output_forms, typelists, // form_module.defaultOutputFormForPrimitiveType() // ] // ).then(function (result) { // var content = { // output_forms: result[0].concat(result[2]), // typelists: result[1] // }; // data_module.typelists.items = content.typelists; // data_module.mobile_output_forms.items = content.output_forms; // contentModule.decodeContent(data_module.typelists.items, function () { // contentModule.decodeContent(data_module.mobile_output_forms.items, function () { // hr.output_form_mobile.loadFormConstructorToAssembler().then(function(){ // data_module.mobile_output_forms.items.sort(function (a, b) { // if (absol.string.nonAccentVietnamese(a.name).toLowerCase() < absol.string.nonAccentVietnamese(b.name).toLowerCase()) return -1; // if (absol.string.nonAccentVietnamese(a.name).toLowerCase() > absol.string.nonAccentVietnamese(b.name).toLowerCase()) return 1; // return 0; // }); // hr.output_form_mobile.emittor.emit('form_load', { formList: data_module.mobile_output_forms.items }); // // Tạo form và gắn form // // Plugin viết trong file FunctionEditor.js // // Các hàm thêm sửa xóa form viết trong file form_module.js // host.formEditor = new absol.form.FormEditor(); // host.formEditor.getView() // .addStyle({ // width: '100%', // height: '100%' // }).addTo(host.holder); // host.formEditor.setContext("HOST", host); // host.formEditor.start(); // host.holder.on('deactive', function () { // host.formEditor.pause(); // }); // // host.holder.on('active', function () { // host.formEditor.start(); // }); // // host.holder.on('remove', function () { // host.formEditor.destroy(); // }); // }); // }); // }); // }, function (rj_mes) { // console.log(rj_mes); // }); }