/** * data-ui.js - data's sad little sibling * Manages UI for dialogs involving saving/loading * forms. */ var dataNS = odkmaker.namespace.load('odkmaker.data'); var formId = ''; var reportId = ''; var formStype = '0'; var reportType = '0'; var isFormOpenSpecial = false; var isSpecialDataChanged = false; var isReportOpenSpecial = false; var isSaveAsDialogHidden = false; // Fix bug 0021057: Save button shows incorrect // The flag about showing button "Save" in toolbar of BuildForms var isNeedShowButtonSaveInToolBar = false; // PCA-241: New feature > Save form // The flag about we need save record name when Saving Special Forms var hasButtonSaveRecordNameClicked = false; var isFormDraftOrOpenSpecial = false; // The flag about checking if the Lookup Manager Items have been changed or not var isLookupManagerItemChange4IP = false; var jsonChangeLookupActive = {}; var OPEN_FORM_FROM_COMPONENTS = 2; var lastRunNowReportTime = (new Date()).getTime(); var getReportTimeZone = function(){ if(authNS.currentUser.TimeZoneSetting == 6){ if(authNS.currentUser.dayligthSavingsTime){ return - (authNS.currentUser.TimeZone + 1*60*60*1000); //- 1 h }else{ return - authNS.currentUser.TimeZone; } }else{ return (new Date()).getTimezoneOffset() * 60 * 1000; } } var openNewForm = function(frmKey) { waitForDataLoading(true); controlDataChange(); $('.tab-content .errorMessage').empty().slideUp(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); $.ajax({ url: '/formbuilder/newOpenForm?key=' + frmKey, dataType: 'json', type: 'POST', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { window.top.$.fancybox.close(); $('.jumpToHeader .cboJumpTo').empty(); isFormOpenSpecial = false; openSpecialControlDisable(false); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(response.PublicLookupTables !== undefined){ lookupdatainf.PublicLookupTables = response.PublicLookupTables; }else{ lookupdatainf.PublicLookupTables = undefined; } odkmaker.data.load(response); disableMenuSaveAs(false); disableMenuInsertForm(false); if(response.type == '0'){ $('.header #formType').text(msg_type_draft); disableMenuSave(true); isNeedShowButtonSaveInToolBar = true; } else if(response.type == '1'){ $('.header #formType').text(msg_type_public); disableMenuSave(false); }else if(response.type == '2'){ jAlert(msg_open_published_form_warning, lbl_alert, function() { $(window).trigger('resize'); }); $('.header #formType').text(msg_type_published); disableMenuSave(false); } $('.tab-content .errorMessage').empty().slideUp(); releaseDirtyFlag(); // Save the current form all field list using for Record Names if (response.resultOfOpenFormAllFields4RecordNames !== undefined) { resultOfOpenFormAllFields4RecordNames = response.resultOfOpenFormAllFields4RecordNames; } // Save the current form selected field list using for Record Names if (response.responseSelectedFieldListRecordNameOpenForm !== undefined) { responseSelectedFieldListRecordNameOpenForm = response.responseSelectedFieldListRecordNameOpenForm; } processRecordName4Form(STATUS_OPEN_FORM, response); }, error: function(request, status, error) { //$('.openDialog').jqmShow(); if(getStatus(request) == 404){ $('.tab-content .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.tab-content .errorMessage') .empty() .append('

' + lbl_could_not_open_form + '

') .slideDown(); } } }); }; var openForm = function(formKey, openFormFrom) { waitForDataLoading(true); controlDataChange(); $('.openDialog').jqmHide(); $('.openDialog .errorMessage') .empty() .slideUp(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); if(!formKey) { formKey = $('.openDialog .modalContents .selected .form_link').attr('id'); } //reloadPrivateFormJson(); $.ajax({ url: '/formbuilder/openForm?key=' + formKey, dataType: 'json', type: 'GET', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { $('.jumpToHeader .cboJumpTo').empty(); if(isVersion(VERSION_STRICT_FORM_BUILDER)){ response.id = response.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; openSpecialControlDisable(true); }else{ isFormOpenSpecial = false; openSpecialControlDisable(false); } dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(response.PublicLookupTables !== undefined){ lookupdatainf.PublicLookupTables = response.PublicLookupTables; }else{ lookupdatainf.PublicLookupTables = undefined; } if(OPEN_FORM_FROM_COMPONENTS == openFormFrom) { lookupdatainf.PublicLookupTables = undefined; } odkmaker.data.load(response); disableMenuSaveAs(false); disableMenuInsertForm(false); if(response.type == '0'){ $('.header #formType').text(msg_type_draft); disableMenuSave(true); // Fix bug 0021057: Save button shows incorrect // Only show toolbar button "Save" in case of OpenSpecial/OpenDraft isNeedShowButtonSaveInToolBar = true; } else if(response.type == '1'){ $('.header #formType').text(msg_type_public); disableMenuSave(false); }else if(response.type == '2'){ if(!isVersion(VERSION_STRICT_FORM_BUILDER)){ // Fix bug layout on IE after click OK of jAlert // Inside bug 0021190: Spacing between button "Template" and "Save" is different with spacing between other groups //jAlert(msg_open_published_form_warning); jAlert(msg_open_published_form_warning, lbl_alert, function() { // Refresh the window size $(window).trigger('resize'); }); $('.header #formType').text(msg_type_published); disableMenuSave(false); }else{ $('.header #formType').text(msg_type_published); resetOldCtrlFlag(); } } $('.openDialog .errorMessage') .empty() .slideUp(); releaseDirtyFlag(); // Save the current form all field list using for Record Names if (response.resultOfOpenFormAllFields4RecordNames !== undefined) { resultOfOpenFormAllFields4RecordNames = response.resultOfOpenFormAllFields4RecordNames; } // Save the current form selected field list using for Record Names if (response.responseSelectedFieldListRecordNameOpenForm !== undefined) { responseSelectedFieldListRecordNameOpenForm = response.responseSelectedFieldListRecordNameOpenForm; } // Process record name based on current form id processRecordName4Form(STATUS_OPEN_FORM, response); }, error: function(request, status, error) { $('.openDialog').jqmShow(); if(getStatus(request) == 404){ $('.openDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.openDialog .errorMessage') .empty() .append('

' + lbl_could_not_open_form + '

') .slideDown(); } } }); }; var openReport = function() { waitForDataLoading(true); $('.openReportDialog').jqmHide(); $('.openReportDialog .errorMessage') .empty() .slideUp(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); $.ajax({ url: '/reportbuilder/openReport?key=' + $('.openReportDialog .modalContents .selected .report_link').attr('id'), dataType: 'json', type: 'GET', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { $('.jumpToHeader .cboJumpTo').empty(); isReportOpenSpecial = false; openSpecialReportControlDisable(false); dataNS.currentReport = response; odkmaker.data.loadReport(response); disableMenuReportSaveAs(false); if(response.type == '0'){ $('.header #reportType').text(msg_type_draft); disableMenuReportSave(true); disableMenuReportAudit(false); isNeedShowButtonSaveInToolBar = true; } else if(response.type == '1'){ $('.header #reportType').text(msg_type_public); disableMenuReportSave(false); disableMenuReportAudit(false); }else if(response.type == '2'){ jAlert(msg_open_published_report_warning, lbl_alert, function() { // Refresh the window size $(window).trigger('resize'); }); $('.header #reportType').text(msg_type_published); disableMenuReportSave(false); disableMenuReportAudit(true); } $('.openReportDialog .errorMessage') .empty() .slideUp(); releaseDirtyFlag(); }, error: function(request, status, error) { $('.openReportDialog').jqmShow(); if(getStatus(request) == 404){ $('.openReportDialog .errorMessage') .empty() .append('

' + err_report_has_deleted + '

') .slideDown(); }else{ $('.openReportDialog .errorMessage') .empty() .append('

' + lbl_could_not_open_report + '

') .slideDown(); } } }); }; var copyExecuteReport = function() { var host = window.location.host; var reportKey = $('.openReportDialog .modalContents .selected .report_link').attr('id'); copyStringToClipboard(host + '/ReportWriterServlet?reportKey=' + reportKey + '&action=apply_task_queue'); } var runNowReport = function() { var host = window.location.host; var reportKey = $('.openReportDialog .modalContents .selected .report_link').attr('id'); if(reportKey) { var executeLink = document.location.protocol + '//' + host + '/ReportWriterServlet?reportKey=' + reportKey + '&action=apply_task_queue'; //window.open(executeLink, '_blank'); $('.openReportDialog iframe.runReport').attr('src', executeLink); } else { jAlert(msg_select_report_to_run); waitForDataLoading(false); } } reportDeleteData = function(reports){ var root = {fnId: 'Delete'}; root['reports'] = reports; return JSON.stringify(root); }; var deleteReport = function() { var checks = $('.rpt_check_id:checked'); if (checks.length < 1) { jAlert(warrning_remove_report); return; } jConfirm(msg_confirm_delete_selected_reports, lbl_warning, function(result) { if (result) { var reportKeys = $(checks.get(0)).attr("id").replace("rpt_check_", ""); for (var i = 1; i < checks.length; i++) { reportKeys += "," + $(checks.get(i)).attr("id").replace("rpt_check_", ""); } var deleteDataJSon = reportDeleteData(reportKeys); waitForDataLoading(true); $.ajax({ url: '/reportbuilder/deletereport', contentType: 'application/json', dataType: 'json', type: 'POST', data: deleteDataJSon, cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { jAlert(msg_delete_success, "", function() { $('.openReportDialog').jqmHide(); $('.openReportDialog').jqmShow(); }); }, error: function(request, status, error) { jAlert(msg_error_check_try); } }); waitForDataLoading(false); } }); } var openSpecialForm = function() { waitForDataLoading(true); controlDataChange(); $('.openSpecialDialog').jqmHide(); $('.openSpecialDialog .errorMessage') .empty() .slideUp(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); $.ajax({ url: '/formbuilder/openForm?key=' + $('.openSpecialDialog .modalContents .selected .form_link').attr('id'), dataType: 'json', type: 'GET', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { $('.jumpToHeader .cboJumpTo').empty(); isFormOpenSpecial = true; openSpecialControlDisable(true); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(response.PublicLookupTables !== undefined){ lookupdatainf.PublicLookupTables = response.PublicLookupTables; }else{ lookupdatainf.PublicLookupTables = undefined; } dataNS.currentForm.id = dataNS.currentForm.idTmp; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; odkmaker.data.load(response); // Fix bug layout on IE after click OK of jAlert // Inside bug 0021190: Spacing between button "Template" and "Save" is different with spacing between other groups //jAlert(msg_open_special_published_form_warning); jAlert(msg_open_special_published_form_warning, lbl_alert, function() { // Refresh the window size $(window).trigger('resize'); }); $('.header #formType').text(msg_type_published); disableMenuSave(true); disableMenuSaveAs(true); disableMenuInsertForm(true); $('.openSpecialDialog .errorMessage') .empty() .slideUp(); releaseDirtyFlag(); // Save the current form all field list using for Record Names if (response.resultOfOpenFormAllFields4RecordNames !== undefined) { resultOfOpenFormAllFields4RecordNames = response.resultOfOpenFormAllFields4RecordNames; } // Save the current form selected field list using for Record Names if (response.responseSelectedFieldListRecordNameOpenForm !== undefined) { responseSelectedFieldListRecordNameOpenForm = response.responseSelectedFieldListRecordNameOpenForm; } // Process initializing data for [Record_Name] in case of open special form processRecordName4Form(STATUS_OPEN_FORM, response); }, error: function(request, status, error) { $('.openSpecialDialog').jqmShow(); if(getStatus(request) == 404){ $('.openSpecialDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.openSpecialDialog .errorMessage') .empty() .append('

' + lbl_could_not_open_form + '

') .slideDown(); } } }); }; var openSpecialFormNew = function() { waitForDataLoading(true); controlDataChange(); $('.openDialog').jqmHide(); $('.openDialog .errorMessage') .empty() .slideUp(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); $.ajax({ url: '/formbuilder/openForm?key=' + $('.openDialog .modalContents .selected .form_link').attr('id'), dataType: 'json', type: 'GET', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { $('.jumpToHeader .cboJumpTo').empty(); isFormOpenSpecial = true; openSpecialControlDisable(true); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(response.PublicLookupTables !== undefined){ lookupdatainf.PublicLookupTables = response.PublicLookupTables; }else{ lookupdatainf.PublicLookupTables = undefined; } dataNS.currentForm.id = dataNS.currentForm.idTmp; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; odkmaker.data.load(response); // Fix bug layout on IE after click OK of jAlert // Inside bug 0021190: Spacing between button "Template" and "Save" is different with spacing between other groups //jAlert(msg_open_special_published_form_warning); jAlert(msg_open_special_published_form_warning, lbl_alert, function() { // Refresh the window size $(window).trigger('resize'); }); $('.header #formType').text(msg_type_published); disableMenuSave(true); disableMenuSaveAs(true); disableMenuInsertForm(true); $('.openDialog .errorMessage') .empty() .slideUp(); releaseDirtyFlag(); // Save the current form all field list using for Record Names if (response.resultOfOpenFormAllFields4RecordNames !== undefined) { resultOfOpenFormAllFields4RecordNames = response.resultOfOpenFormAllFields4RecordNames; } // Save the current form selected field list using for Record Names if (response.responseSelectedFieldListRecordNameOpenForm !== undefined) { responseSelectedFieldListRecordNameOpenForm = response.responseSelectedFieldListRecordNameOpenForm; } // Process initializing data for [Record_Name] in case of open special form processRecordName4Form(STATUS_OPEN_FORM, response); }, error: function(request, status, error) { $('.openDialog').jqmShow(); if(getStatus(request) == 404){ $('.openDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.openDialog .errorMessage') .empty() .append('

' + lbl_could_not_open_form + '

') .slideDown(); } } }); }; var disableMenuSave = function(enabled){ if(enabled){ $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').show(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_form, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); }else{ $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).removeClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).addClass('disabled'); // Also hide the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').hide(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_use_save_form_as, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); } } var disableMenuReportSave = function(enabled){ if(enabled){ $($('.reportBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); $('.reportBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_report, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); }else{ $($('.reportBuilder .menu .submenu .saveLink').parents('li')[0]).addClass('disabled'); $('.reportBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_use_save_report_as, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); } } var disableMenuReportAudit = function(enabled){ if(enabled){ $($('.reportBuilder .menu .submenu .dataAuditeReportLink').parents('li')[0]).removeClass('disabled'); $('.reportBuilder .menu .submenu .dataAuditeReportLink').off('mouseover').qtip({ content: lbl_show_report_audit, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); }else{ $($('.reportBuilder .menu .submenu .dataAuditeReportLink').parents('li')[0]).addClass('disabled'); $('.reportBuilder .menu .submenu .dataAuditeReportLink').off('mouseover').qtip({ content: lbl_show_report_audit, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); } } var reloadPrivateFormJson = function (){ var loadPrivateFormList = function(cs){ $.ajax({ url: '/formbuilder/openForm?isBuildFormLoad=true&cs=' + cs, dataType: 'json', type: 'GET', cache: false, async: false, complete: function() { }, success: function(response, status) { if(!cs || cs == ''){ dataNS.PrivateFormJSon = {}; dataNS.PrivateFormJSon.recordCount = 0; } var i = 0; var recordCount = dataNS.PrivateFormJSon.recordCount; while(response["" + i]){ dataNS.PrivateFormJSon["" + recordCount] = response["" + i]; recordCount += 1; i += 1; } dataNS.PrivateFormJSon.recordCount = recordCount; if(response.Continue){ loadPrivateFormList(response.cs); } }, error: function(request, status, error) { } }); } if(isVersion(VERSION_NEW_ACTION_FUCTION)){ loadPrivateFormList(''); } } var openSpecialControlDisable = function(disable){ if(disable){ $('.toolButton').addClass('openSpecialDisable'); }else{ $('.toolButton').removeClass('openSpecialDisable'); } }; var openSpecialReportControlDisable = function(disable){ if(disable){ $('.toolButton').addClass('openSpecialDisable'); }else{ $('.toolButton').removeClass('openSpecialDisable'); } }; var disableMenuSaveAs = function(disable){ // The toolbar icons in BuildForms var objIconSaveAs = $('.toolBar4MenuBuildForm .buildFormIconSaveDraftWapper, .toolBar4MenuBuildForm .buildFormIconPublishWrapper'); var objProgressionPublic = $('.buildFormMenuProgression .progressionPublic'); if(!disable || !isFormOpenSpecial){ $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveAsDraftLink').parents('li')[0]).removeClass('disabled'); $($('.formBuilder .menu .submenu .saveAsPrivateLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icons objIconSaveAs.show(); objProgressionPublic.show(); }else{ $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).removeClass('disabled'); $($('.formBuilder .menu .submenu .saveAsDraftLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveAsPrivateLink').parents('li')[0]).addClass('disabled'); // Also hide the toolbar icons objIconSaveAs.hide(); objProgressionPublic.hide(); } }; var disableMenuReportSaveAs = function(disable){ // The toolbar icons in BuildForms var objIconSaveAs = $('.toolBar4MenuBuildReport .buildReportIconSaveDraftWapper, .toolBar4MenuBuildReport .buildReportIconPublishWrapper'); var objProgressionPublic = $('.buildReportMenuProgression .reportProgressionPublic'); if(!disable || !isFormOpenSpecial){ $($('.reportBuilder .menu .submenu .saveAsDraftLink').parents('li')[0]).removeClass('disabled'); $($('.reportBuilder .menu .submenu .saveAsPrivateLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icons objIconSaveAs.show(); objProgressionPublic.show(); }else{ $($('.reportBuilder .menu .submenu .saveAsDraftLink').parents('li')[0]).addClass('disabled'); $($('.reportBuilder .menu .submenu .saveAsPrivateLink').parents('li')[0]).addClass('disabled'); // Also hide the toolbar icons objIconSaveAs.hide(); objProgressionPublic.hide(); } }; /** * Process show finish message when saving Form (Save Draft/Save Special) * @param isFormOpenSpecial * @param finishMessage * @param isOldForm */ function processShowFinishMessageWhenSaveFormCustom(isFormOpenSpecial, finishMessage, isFormUsingEmailReportSettings) { // Safety prevent error if (typeof isFormUsingEmailReportSettings === 'undefined') { isFormUsingEmailReportSettings = true; } // Process the normal cases if(!isFormOpenSpecial || isFormUsingEmailReportSettings === true){ // The normal cases (we just execute the function jAlert() jAlert(finishMessage); return; } // We are in the Save Form Special + Old Forms with feature Email Widget // Create the finish message again finishMessage = msg_save_form_special_change_email_widget_warning .replace('$1', '') .replace('$2', ''); jAlert(finishMessage, lbl_warning); } // PCA-270: Remove the replace space function ///** // * Apply replace Form Structure : SPACE to   with Table/Grid/Questionnaire // * (when save form) // */ //function applyReplaceFormStructureWithNBSP(controlsData, isLoadForm) { // // // Check version for processing this feature // if (currentVersion < VERSION_NEW_OPTION_CUSTOM_COLUMN_WEIGHT) { // return; // } // // // Browse all control field // for (var i = 0; i < controlsData.length; i++) { // var container = controlsData[i]; // if (container.type === CONST_CTRL_TYPE_CTRLGRID // || container.type === CONST_CTRL_TYPE_CTRLTABLE // || container.type === CONST_CTRL_TYPE_CTRLSCORETABLE // ) { // applyReplaceFSWhenSaveLoadFormWithNBSP4Item(container, isLoadForm); // } // } //} // //PCA-270: Remove the replace space function ///** // * Helper function for applyReplaceFormStructureWhenSaveFormWithNBSP() // * @param container // */ //function applyReplaceFSWhenSaveLoadFormWithNBSP4Item(container, isLoadForm) { // // // We will call this function at load form/save form // // // Check flag []Replace space with HTML tag “ ” // if (container.replaceSpaceWithHtmlTagNBSP !== true) { // return; // } // // // Apply replace all caption (table/children) // if (container.label !== undefined && container.label.eng !== undefined) { // if (isLoadForm === true) { // container.label.eng = container.label.eng.replace(/ /g, ' '); // } else { // container.label.eng = container.label.eng.replace(/ /g, ' '); // } // } // // if (container.children !== undefined) { // var children = container.children; // for (var i = 0; i < children.length; i++) { // var control = children[i]; // // Replace caption // if (control.label !== undefined && control.label.eng !== undefined) { // if (isLoadForm === true) { // control.label.eng = control.label.eng.replace(/ /g, ' '); // } else { // control.label.eng = control.label.eng.replace(/ /g, ' '); // } // } // } // } //} function loadComboProjectInfo(ctrl){ waitForDataLoading(true); $.ajax({ url: '/project/projects?fnId=load_cbo_prj_info', dataType: 'json', type: 'GET', data: '{}', cache: false, async: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { ctrl.empty(); if(response && response.count > 0){ var i = 0; var defaultValue = ''; while(response['' + i]){ var item = response['' + i]; var $option = $(""); $option.val(item.key); $option.append(item.value); ctrl.append($option); if(item.value.toLowerCase() == 'main project'){ defaultValue = item.key; } i++; } ctrl.val(defaultValue); }else{ var $option = $(""); ctrl.append($option); } }, error: function(request, status, error) { var $option = $(""); ctrl.empty().append($option); } }); } var showPublicAdditionalInfo = function(isShow){ if(!isShow){ $('.saveAsDialog .saveAsDialogHeader').empty().append(msg_save_as_draft); $('.saveAsDialog .publicAdditionalInfo').addClass(CONST_CSS_CLASS_HIDE_SESSION); }else{ $('.saveAsDialog .saveAsDialogHeader').empty().append(msg_save_as_public); $('.saveAsDialog .publicAdditionalInfo').removeClass(CONST_CSS_CLASS_HIDE_SESSION); loadComboProjectInfo($('.saveAsDialog .publicAdditionalInfo #cboAssignToProject')); $('.saveAsDialog .publicAdditionalInfo .formAddEdit').off().click(function(event){ $('.saveAsDialog').hide(); isSaveAsDialogHidden = true; $('.formBuilder .menu .submenu .formIconLink').trigger('click'); }); $('.needRefreshIcon').off('refresh').on('refresh', function(){ if((odkmaker.data.formSettings.iconKey || '') != ''){ if('' != odkmaker.data.formSettings.iconColor){ if('ffffff' == odkmaker.data.formSettings.iconColor) { $('.saveAsDialog .publicAdditionalInfo #formIcon').attr('style', 'background-image: url("' + odkmaker.data.formSettings.iconKey + '"); background-color:#998999'); } else { $('.saveAsDialog .publicAdditionalInfo #formIcon').attr('style', 'background-image: url("' + odkmaker.data.formSettings.iconKey + '"); background-color:#' + odkmaker.data.formSettings.iconColor); } } else if(odkmaker.data.formSettings.iconKey.indexOf('img')<0){ $('.saveAsDialog .publicAdditionalInfo #formIcon').attr('style', 'background-image: url("/imageViewer?blobKey=' + odkmaker.data.formSettings.iconKey + '&x=' + (new Date())+ '")'); }else{ $('.saveAsDialog .publicAdditionalInfo #formIcon').attr('style', 'background-image: url("' + odkmaker.data.formSettings.iconKey + '")'); } }else{ $('.saveAsDialog .publicAdditionalInfo #formIcon').attr('style', 'background-image: url("/img/mobile/formIconDefault.png")'); } if((odkmaker.data.formSettings.formIconText || '') != ''){ $('.saveAsDialog .publicAdditionalInfo #formMenuName').empty().append(odkmaker.data.formSettings.formIconText); }else{ $('.saveAsDialog .publicAdditionalInfo #formMenuName').empty().append($('.saveAsDialog .saveAs_name').val()); } }).trigger('refresh'); $('.saveAsDialog .publicAdditionalInfo .saveAs_seqNo').val('').keypress(function(event){ return onlyIntegerNumber(this, event, INTEGER_MAXLENGTH); }); // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms $('.publicAdditionalInfo #idApplyReportSetting4AssignProjects').removeAttr('checked'); if (isVersion(VERSION_BUILD_FORMS_REPORT_SETTINGS_4VIEWDATA)) { // TODO: Temporatory always hide checkbox //$('.publicAdditionalInfo .publishFormReportSettingsRegion').show(); } } // PCA-241: New feature > Save form (Apply Record Names) initRecordNamesWhenPublishForm(); } var disableMenuInsertForm = function(disable){ if(!isFreeAccount()){ var insFormIcon = $('.toolBar4MenuBuildForm .buildFormIconInsFormWrapper'); if(!disable || !isFormOpenSpecial || isVersion(VERSION_STRICT_FORM_BUILDER)){ $($('.formBuilder .menu .submenu .insertFormLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Insert Form" in Build Forms insFormIcon.show(); }else if(isFormOpenSpecial && (isVersion(VERSION_ADD_DEL_CTRL_OSP) || isVersion(VERSION_ADD_CTRL_OSP))){ $($('.formBuilder .menu .submenu .insertFormLink').parents('li')[0]).removeClass('disabled'); // Also hide the toolbar icon "Insert Form" in Build Forms insFormIcon.hide(); }else{ $($('.formBuilder .menu .submenu .insertFormLink').parents('li')[0]).addClass('disabled'); // Also hide the toolbar icon "Insert Form" in Build Forms insFormIcon.hide(); } } }; var checkReportTemplateProgress = function(taskKey){ if('' == taskKey){ jAlert(msg_unknown_error); waitForDataLoading(false); return; } setTimeout(function() { $.ajax({ url: '/exportStatus?taskKey=' + taskKey + '&act=Template', dataType: 'json', type: 'Get', cache: false, complete: function() { }, success: function(response, status) { if('done' == response.Result){ waitForDataLoading(false); window.open(response.Url,'',''); } else{ writeToLogInfo('checkReportTemplateProgress'); checkReportTemplateProgress(taskKey); } }, error: function(request, status, error) { jAlert(msg_unknown_error); waitForDataLoading(false); } }); }, 5000); // after 5 seconds }; var insertForm = function(index, insertFormKey) { waitForDataLoading(true); controlDataChange(); var isFNInsertFrom = 1;//1=insert form, 2=insert component $('.insertFormDialog').jqmHide(); $('.insertFormDialog .errorMessage') .empty() .slideUp(); if(!insertFormKey) { insertFormKey = $('.insertFormDialog .modalContents .selected .form_link').attr('id'); } if(undefined != index) { isFNInsertFrom = 2; } if(!index) { index = 0; } var jsonData = JSON.stringify({ insertFormKey: insertFormKey, title: $('.header #renameFormField').val(), controls: odkmaker.data.extract().controls, insertIndex: index, isFNInsertFrom: isFNInsertFrom }); $.ajax({ url: '/formbuilder/insertForm', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: jsonData, cache: false, complete: function() { }, success: function(response, status) { if(response.error == 'DeadlineExceededException'){ insertFormByQueue(jsonData); return; } waitForDataLoading(false); if(dataNS.currentForm != undefined){ dataNS.currentForm.controls = response.controls; } if(response.UpdateLookup) { //$('.propertiesPane:visible select.cboLookupTable').trigger('UpdateLookupTable'); loadLookupControl(true, true, true, undefined); } exceltemplate.reloadExcelReportTemplate(true); odkmaker.data.load(response); $('.isertFormDialog .errorMessage') .empty() .slideUp(); setDirtyFlag(); }, error: function(request, status, error) { if(getStatus(request) == 500){ insertFormByQueue(jsonData); return; } waitForDataLoading(false); $('.isertFormDialog').jqmShow(); if(getStatus(request) == 404){ $('.isertFormDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.isertFormDialog .errorMessage') .empty() .append('

' + lbl_could_not_insert_form + '

') .slideDown(); } } }); }; var dataui_init = function($) { dataNS.currentForm = null; dataNS.formSettings = {}; dataNS.currentFormHasExpCode = null; var openPublicForm = function(formKey) { var selectedRow = $('.searchPublishedFormResultDialog table tbody tr.highlitght'); if(selectedRow.length == 0){ $('.searchPublishedFormResultDialog .errorMessage') .empty() .append('

' + lbl_pls_select_form + '

') .slideDown(); return; } $('.searchPublishedFormResultDialog .errorMessage') .empty() .slideUp(); waitForDataLoading(true); controlDataChange(); $('.searchPublishedFormResultDialog').jqmHide(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); var key = selectedRow.attr('id'); key = key.replace('tableRow_', ''); $.ajax({ url: '/formbuilder/openForm?key=' + key, dataType: 'json', type: 'GET', cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(response.PublicLookupTables !== undefined){ lookupdatainf.PublicLookupTables = response.PublicLookupTables; }else{ lookupdatainf.PublicLookupTables = undefined; } odkmaker.data.load(response); disableMenuSaveAs(false); if(response.type == '0'){ $('.header #formType').text(msg_type_draft); disableMenuSave(false); } else if(response.type == '1'){ $('.header #formType').text(msg_type_public); disableMenuSave(false); }else if(response.type == '2'){ $('.header #formType').text(msg_type_published); if(!isVersion(VERSION_STRICT_FORM_BUILDER)){ disableMenuSave(false); }else{ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; openSpecialControlDisable(true); resetOldCtrlFlag(); } } $('.searchPublishedFormResultDialog .errorMessage') .empty() .slideUp(); }, error: function(request, status, error) { $('.searchPublishedFormResultDialog').jqmShow(); if(getStatus(request) == 404){ $('.searchPublishedFormResultDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.searchPublishedFormResultDialog .errorMessage') .empty() .append('

' + lbl_could_not_open_form + '

') .slideDown(); } } }); }; var insertFormByQueue = function(jsonData, queueId, execCount) { if(queueId != undefined){ jsonData = JSON.stringify({ queueId: queueId, useQueue: true }); }else{ jsonData = JSON.stringify({ jsonData: jsonData, useQueue: true }); } if(!execCount){ execCount = 0; } waitForDataLoading(true); $.ajax({ url: '/formbuilder/insertForm', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: jsonData, cache: false, complete: function() { }, success: function(response, status) { if(response.waiting){ if(execCount >= 10){ waitForDataLoading(false); $('.isertFormDialog').jqmShow(); $('.isertFormDialog .errorMessage') .empty() .append('

' + lbl_could_not_insert_form + '

') .slideDown(); return; } setTimeout(function() { insertFormByQueue(jsonData, response.queueId, execCount+1); }, 10*1000); return; } waitForDataLoading(false); if(dataNS.currentForm != undefined){ dataNS.currentForm.controls = response.controls; } odkmaker.data.load(response); $('.isertFormDialog .errorMessage') .empty() .slideUp(); setDirtyFlag(); }, error: function(request, status, error) { waitForDataLoading(false); $('.isertFormDialog').jqmShow(); if(getStatus(request) == 404){ $('.isertFormDialog .errorMessage') .empty() .append('

' + err_form_has_deleted + '

') .slideDown(); }else{ $('.isertFormDialog .errorMessage') .empty() .append('

' + lbl_could_not_insert_form + '

') .slideDown(); } } }); }; $(function() { // menu events // Apply toolbar icon "New", same as menu "New" in BuildForms $('.formBuilder .menu .submenu .newLink, .formBuilder .toolBar4MenuBuildForm .buildFormIconNew') .off('click') .click(function(event) { // Fix bug 0021057: Save button shows incorrect // Only show toolbar button "Save" in case of OpenSpecial/OpenDraft //$('.buildFormIconSaveWrapper').hide(); event.preventDefault(); if((dataNS.currentForm != undefined || $('.workspace:visible').children().length != 0) && needToConfirm){ jConfirm(msg_confirm_unsaved_changes, lbl_conf_dlg, function(answer) { if(answer){ odkmaker.application.newForm(); $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').show(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_form, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); // Process record name in Status New processRecordName4Form(STATUS_NEW_FORM); } }); }else{ odkmaker.application.newForm(); $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').show(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_form, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); // Process record name in Status New processRecordName4Form(STATUS_NEW_FORM); } }); $('.reportBuilder .menu .submenu .newLink, .reportBuilder .toolBar4MenuBuildReport .buildReportIconNew') .off('click') .click(function(event) { event.preventDefault(); if((dataNS.currentReport != undefined || $('.reportBuilder .workspace').children().length != 0) && needToConfirmReport){ jConfirm(msg_confirm_report_unsaved_changes, lbl_conf_dlg, function(answer) { if(answer){ odkmaker.application.newReport(); $($('.reportBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); $('.reportBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_report, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); } }); }else{ odkmaker.application.newReport(); $($('.reportBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); $('.reportBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_report, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); } }); $('.toolBar4MenuBuildForm .buildFormIconHelp') .off('click') .click(function(event) { /*$('.jqmOverlay').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_INITIAL); $('.jqmOverlay:visible').css('opacity', 0); $('#rightPanel').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_INITIAL).css('z-index', '9999'); $('.jqmOverlay').off().click(function(){ $('#rightPanel').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_NONE); $('.jqmOverlay').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_NONE); $('.jqmOverlay').off(); });*/ showRightPanelHelp(hl_tab_build_forms, '50%'); }); $('.toolBar4MenuBuildReport .buildReportIconHelp') .off('click') .click(function(event) { /*$('.jqmOverlay').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_INITIAL); $('.jqmOverlay:visible').css('opacity', 0); $('#rightPanel').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_INITIAL).css('z-index', '9999'); $('.jqmOverlay').off().click(function(){ $('#rightPanel').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_NONE); $('.jqmOverlay').css(CONST_CSS_KEY_DISPLAY, CONST_VALUE_NONE); $('.jqmOverlay').off(); });*/ showRightPanelHelp(hl_tab_build_report, '50%'); }); // Apply toolbar icon "Save", same as menu "Save" in BuildForms $('.formBuilder .menu .submenu .saveLink, .toolBar4MenuBuildForm .buildFormIconSave') .off('click') .click(function(event) { // Using only one reference item in "Save" in Build Forms // (in menu and toolbar icon) var objThis = $('.formBuilder .menu .submenu .saveLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var callSaveForm = function(){ if(isVersion(VERSION_STRICT_FORM_BUILDER) && isSpecialDataChanged && odkmaker.data.currentForm.type == '2'){ $('.toolBar4MenuBuildForm .buildFormIconPublish').click(); return; } var controls = odkmaker.data.extract().controls; if (odkmaker.auth.currentUser === null) { $('.signinDialog').jqmShow(); return; } if (odkmaker.data.currentForm === null || odkmaker.data.currentForm.id === null || odkmaker.data.currentForm.id === '') { formStype = '0'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_draft); showPublicAdditionalInfo(false); $('.saveAsDialog').jqmShow(); return; } if(isFormOpenSpecial && odkmaker.data.currentForm.type == '2'){ var retObj = odkmaker.data.checkFormDataValid(); if(retObj.error != 0){ if(retObj.error == 1){ jAlert(msg_bf_form_validate_error); }else{ jAlert(retObj.message); } return; } if(isVersion7_2() && retObj.skipwarning == true && (getStoreData("BuildForm_NotShowSkipWarning") == null || getStoreData("BuildForm_NotShowSkipWarning") != CONST_VALUE_TRUE_STR)){ var html = '
' + msg_bf_skip_warning + '
'; html += '
do not show again!
'; jConfirm(html, lbl_conf_dlg, function(answer, data) { if(data['dontShow']){ storeData("BuildForm_NotShowSkipWarning", true, { expires: 365 }); } if(answer){ waitForDataLoading(true); var controlsData = odkmaker.data.extract().controls; // Apply convert SPACE into   with Grid/Table/Questionaire that [x]Replace space with HTML tag “ ” //applyReplaceFormStructureWithNBSP(controlsData, false); var xmlData = odkmaker.data.serialize(); var isUsingGZip = false; if(isVersion(VERSION_ZIP_FORM_INFO)){ controlsData = GZip(JSON.stringify(controlsData)); xmlData = GZip(xmlData); isUsingGZip = true; } $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: $('.header #renameFormField').val(), controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), id: odkmaker.data.currentForm.id, savetype: dataNS.currentForm.type, idTmp: odkmaker.data.currentForm.idTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: isFormOpenSpecial, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { if(response && (response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 9091){ cnfMsg = msg_save_form_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); }else if(response.Status == 9092){ cnfMsg = msg_save_form_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jConfirm(cnfMsg, lbl_conf_dlg, function(answer) { if(answer){ $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: $('.header #renameFormField').val(), controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), id: odkmaker.data.currentForm.id, savetype: dataNS.currentForm.type, idTmp: odkmaker.data.currentForm.idTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: isFormOpenSpecial, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { releaseDirtyFlag(); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; var cnfMsg = ""; if(dataNS.currentForm.type == 0){ cnfMsg = msg_save_form_draft_success; }else{ if(isFormOpenSpecial){ cnfMsg = msg_save_form_special_success; }else{ cnfMsg = msg_save_form_published_success; } if(isVersion(VERSION_STRICT_FORM_BUILDER)){ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; resetOldCtrlFlag(); } } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode($('.header #renameFormField').val())); cnfMsg = replaceFunction(cnfMsg, '{FormName}', HtmlEncode($('.header #renameFormField').val())); // Process show message in multiple case (OpenSpecial/...) //jAlert(cnfMsg); processShowFinishMessageWhenSaveFormCustom(isFormOpenSpecial, cnfMsg, response.isFormUsingEmailReportSettings); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); } return; } releaseDirtyFlag(); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; var cnfMsg = ""; if(dataNS.currentForm.type == 0){ cnfMsg = msg_save_form_draft_success; }else{ if(isFormOpenSpecial){ cnfMsg = msg_save_form_special_success; }else{ cnfMsg = msg_save_form_published_success; } if(isVersion(VERSION_STRICT_FORM_BUILDER)){ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; resetOldCtrlFlag(); } } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode($('.header #renameFormField').val())); cnfMsg = replaceFunction(cnfMsg, '{FormName}', HtmlEncode($('.header #renameFormField').val())); // Process show message in multiple case (OpenSpecial/...) //jAlert(cnfMsg); processShowFinishMessageWhenSaveFormCustom(isFormOpenSpecial, cnfMsg, response.isFormUsingEmailReportSettings); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); return; } } waitForDataLoading(true); var controlsData = odkmaker.data.extract().controls; // Apply convert SPACE into   with Grid/Table/Questionaire that [x]Replace space with HTML tag “ ” //applyReplaceFormStructureWithNBSP(controlsData, false); var xmlData = odkmaker.data.serialize(); var isUsingGZip = false; if(isVersion(VERSION_ZIP_FORM_INFO)){ controlsData = GZip(JSON.stringify(controlsData)); xmlData = GZip(xmlData); isUsingGZip = true; } $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: $('.header #renameFormField').val(), controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), seqNo: odkmaker.data.currentForm.customSeqNo, allowRetrieve: odkmaker.data.currentForm.allowRetrieve, id: odkmaker.data.currentForm.id, savetype: dataNS.currentForm.type, idTmp: odkmaker.data.currentForm.idTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: isFormOpenSpecial, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { if(response && (response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 9091){ cnfMsg = msg_save_form_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); return; }else if(response.Status == 9092){ cnfMsg = msg_save_form_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jConfirm(cnfMsg, lbl_conf_dlg, function(answer) { if(answer){ $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: $('.header #renameFormField').val(), controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), id: odkmaker.data.currentForm.id, savetype: dataNS.currentForm.type, idTmp: odkmaker.data.currentForm.idTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: isFormOpenSpecial, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, isIgnoreConflict: true, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { releaseDirtyFlag(); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; var cnfMsg = ""; if(dataNS.currentForm.type == 0){ cnfMsg = msg_save_form_draft_success; }else{ if(isFormOpenSpecial){ cnfMsg = msg_save_form_special_success; }else{ cnfMsg = msg_save_form_published_success; } if(isVersion(VERSION_STRICT_FORM_BUILDER)){ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; resetOldCtrlFlag(); } } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode($('.header #renameFormField').val())); cnfMsg = replaceFunction(cnfMsg, '{FormName}', HtmlEncode($('.header #renameFormField').val())); // Process show message in multiple case (OpenSpecial/...) //jAlert(cnfMsg); processShowFinishMessageWhenSaveFormCustom(isFormOpenSpecial, cnfMsg, response.isFormUsingEmailReportSettings); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); } return; } releaseDirtyFlag(); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; var cnfMsg = ""; if(dataNS.currentForm.type == 0){ cnfMsg = msg_save_form_draft_success; }else{ if(isFormOpenSpecial){ cnfMsg = msg_save_form_special_success; }else{ cnfMsg = msg_save_form_published_success; } if(isVersion(VERSION_STRICT_FORM_BUILDER)){ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; resetOldCtrlFlag(); } } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode($('.header #renameFormField').val())); cnfMsg = replaceFunction(cnfMsg, '{FormName}', HtmlEncode($('.header #renameFormField').val())); // Process show message in multiple case (OpenSpecial/...) //jAlert(cnfMsg); processShowFinishMessageWhenSaveFormCustom(isFormOpenSpecial, cnfMsg, response.isFormUsingEmailReportSettings); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } }, error: function(request, status, error) { jAlert(msg_error_try); } }); } var formVersion = '1.0'; if(dataNS == undefined || dataNS.currentForm == undefined || dataNS.currentForm.formVersion == undefined){ if(isVersion(VERSION_5_0)){ formVersion = FORM_VERSION; } }else{ formVersion = dataNS.currentForm.formVersion; } /*if(isVersion(VERSION_5_0) && formVersion === '1.0'){ $.alerts.okButton = 'Continue'; jConfirm(msg_warning_save_version_change, lbl_conf_dlg, function(answer, data) { $.alerts.okButton = CUSTOM_OK_BUTTON_LABEL; if(answer){ callSaveForm(); } }); }else{ callSaveForm(); }*/ callSaveForm(); }); $('.formBuilder .menu .submenu .closeHelp') .off('click') .click(function(event) { setTimeout(function() { $('.builder:visible .showHelp .rightScrollAreaClose').trigger('click'); }, 100); }); $('.reportBuilder .menu .submenu .closeHelp') .off('click') .click(function(event) { setTimeout(function() { $('.builder:visible .showHelp .rightScrollAreaClose').trigger('click'); }, 100); }); // Apply toolbar icon "Save", same as menu "Save" in BuildReport $('.reportBuilder .menu .submenu .saveLink, .toolBar4MenuBuildReport .buildReportIconSave') .off('click') .click(function(event) { // Using only one reference item in "Save" in Build Report // (in menu and toolbar icon) var objThis = $('.reportBuilder .menu .submenu .saveLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var callSaveReport = function(){ var controls = odkmaker.data.extract().controls; if (odkmaker.auth.currentUser === null) { $('.signinDialog').jqmShow(); return; } if (!odkmaker.data.currentReport || odkmaker.data.currentReport.id === null || odkmaker.data.currentReport.id === '') { reportType = '0'; $('.reportSaveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .errorMessage') .empty() .slideUp(); $('.reportSaveAsDialog .modalSmallContents .lblReportType').text(msg_type_draft); $('.reportSaveAsDialog .modalSmallContents .saveAs_name').val($('.reportBuilder input#renameReportField').val()); $('.reportSaveAsDialog').jqmShow(); return; } if(isReportOpenSpecial){ var retObj = odkmaker.data.checkReportDataValid(); if(retObj.error != 0){ if(retObj.error == 1){ jAlert(msg_bf_report_validate_error); }else{ jAlert(retObj.message); } return; } if(isVersion7_2() && retObj.skipwarning == true && (getStoreData("BuildReport_NotShowSkipWarning") == null || getStoreData("BuildReport_NotShowSkipWarning") != CONST_VALUE_TRUE_STR)){ var html = '
' + msg_bf_skip_warning + '
'; html += '
do not show again!
'; jConfirm(html, lbl_conf_dlg, function(answer, data) { if(data['dontShow']){ storeData("BuildReport_NotShowSkipWarning", true, { expires: 365 }); } if(answer){ waitForDataLoading(true); var controlsData = odkmaker.data.extract().controls; var frequency = ''; var emailTo = ''; var emailOptMessage = ''; var emailSubject = ''; var emailType = ''; var reportTimeZone = ''; var reportTimeZoneDst = ''; var forwardReportTo = ''; var frtWebGroup = ''; var frtWebUser = ''; var emailCtrl = controlsData[controlsData.length - 1]; var excelReportType = ''; var excelTemplateKey = ''; var excelSheetName = ''; if(emailCtrl.type == 'ctrlEmailSchedule'){ frequency = emailCtrl.reportFrequency; var value = emailCtrl.reportEmail; if(value != undefined){ var contentStartPos = value.indexOf('$$', 0); if(contentStartPos >= 0){ emailTo = value.substring(0, contentStartPos); emailOptMessage = value.substring(contentStartPos + 2); }else{ emailTo = value; } } emailSubject = emailCtrl.subjectLine; emailType = emailCtrl.reportFileType; reportTimeZone = emailCtrl.reportTimeZone; reportTimeZoneDst = emailCtrl.reportTimeZoneDst; forwardReportTo = emailCtrl.forwardReportTo; frtWebGroup = emailCtrl.frtWebGroup; frtWebUser = emailCtrl.frtWebUser; excelReportType = emailCtrl.excelReportType; //if(emailType == CONST_ONE){ if(emailCtrl.useCustomTemplate){ if(emailCtrl.excelTemplate){ var arrs = emailCtrl.excelTemplate.split(CONST_SPLIT_BLOBKEY); if(arrs.length>1){ var arrs1 = arrs[1].split(CONST_SPLIT_AND); excelTemplateKey = arrs1[0]; }else{ excelTemplateKey = emailCtrl.excelTemplate; } } excelSheetName = emailCtrl.excelSheetName; } //} } var timezone = getReportTimeZone(); $.ajax({ url: '/reportbuilder/savereportas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ title: $('.header #renameReportField').val(), controls: controlsData, id: odkmaker.data.currentReport.id, savetype: dataNS.currentReport.type, idTmp: odkmaker.data.currentReport.idTmp, frequency: frequency, emailTo: emailTo, emailOptMessage: emailOptMessage, emailSubject: emailSubject, emailType: emailType, saveSpecial: isReportOpenSpecial, isUsingGZip: false, timezone: timezone, reportTimeZone: reportTimeZone, reportTimeZoneDst: reportTimeZoneDst, forwardReportTo: forwardReportTo, frtWebGroup: frtWebGroup, frtWebUser: frtWebUser, excelReportType: excelReportType, excelTemplateKey: excelTemplateKey, excelSheetName: excelSheetName //convertToPdf: emailCtrl.convertToPdf // CO-1284 }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { if(response && (response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 9091){ cnfMsg = msg_save_report_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); }else if(response.Status == 9092){ cnfMsg = msg_save_report_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); } return; } releaseDirtyFlag(); dataNS.currentReport = response; var cnfMsg = ""; if(dataNS.currentReport.type == 0){ cnfMsg = msg_save_report_draft_success; }else{ if(isReportOpenSpecial){ cnfMsg = msg_save_report_special_success; }else{ cnfMsg = msg_save_report_published_success; } } if(response && response.WebAppCreditsPurchase){ if(response.WebAppCreditsPurchase <= 0){ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'red'); }else{ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'inherit'); } } cnfMsg = replaceFunction(cnfMsg, '{ReportName}', HtmlEncode($('.header #renameReportField').val())); jAlert(cnfMsg); }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); return; } } waitForDataLoading(true); var controlsData = odkmaker.data.extract().controls; var frequency = ''; var emailTo = ''; var emailOptMessage = ''; var emailSubject = ''; var emailType = ''; var emailCtrl = controlsData[controlsData.length - 1]; var excelReportType = ''; var excelTemplateKey = ''; var excelSheetName = ''; var reportTimeZone = ''; var reportTimeZoneDst = ''; var forwardReportTo = ''; var frtWebGroup = ''; var frtWebUser = ''; if(emailCtrl.type == 'ctrlEmailSchedule'){ frequency = emailCtrl.reportFrequency; var value = emailCtrl.reportEmail; if(value != undefined){ var contentStartPos = value.indexOf('$$', 0); if(contentStartPos >= 0){ emailTo = value.substring(0, contentStartPos); emailOptMessage = value.substring(contentStartPos + 2); }else{ emailTo = value; } } emailSubject = emailCtrl.subjectLine; emailType = emailCtrl.reportFileType; reportTimeZone = emailCtrl.reportTimeZone; reportTimeZoneDst = emailCtrl.reportTimeZoneDst; forwardReportTo = emailCtrl.forwardReportTo; frtWebGroup = emailCtrl.frtWebGroup; frtWebUser = emailCtrl.frtWebUser; excelReportType = emailCtrl.excelReportType; //if(emailType == CONST_ONE){ if(emailCtrl.excelTemplate){ var arrs = emailCtrl.excelTemplate.split(CONST_SPLIT_BLOBKEY); if(arrs.length>1){ var arrs1 = arrs[1].split(CONST_SPLIT_AND); excelTemplateKey = arrs1[0]; }else{ excelTemplateKey = emailCtrl.excelTemplate; } } if(emailCtrl.useCustomTemplate){ excelSheetName = emailCtrl.excelSheetName; } //} } var timezone = getReportTimeZone(); $.ajax({ url: '/reportbuilder/savereportas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ title: $('.header #renameReportField').val(), controls: controlsData, id: odkmaker.data.currentReport.id, savetype: dataNS.currentReport.type, idTmp: odkmaker.data.currentReport.idTmp, frequency: frequency, emailTo: emailTo, emailOptMessage: emailOptMessage, emailSubject: emailSubject, emailType: emailType, saveSpecial: isReportOpenSpecial, isUsingGZip: false, timezone: timezone, reportTimeZone: reportTimeZone, reportTimeZoneDst: reportTimeZoneDst, forwardReportTo: forwardReportTo, frtWebGroup: frtWebGroup, frtWebUser: frtWebUser, excelReportType: excelReportType, excelTemplateKey: excelTemplateKey, excelSheetName: excelSheetName //convertToPdf: emailCtrl.convertToPdf // CO-1284 }), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { if(response && (response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 9091){ cnfMsg = msg_save_report_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); }else if(response.Status == 9092){ cnfMsg = msg_save_report_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); } return; } releaseDirtyFlag(); dataNS.currentReport = response; var cnfMsg = ""; if(dataNS.currentReport.type == 0){ cnfMsg = msg_save_report_draft_success; }else{ if(isReportOpenSpecial){ cnfMsg = msg_save_report_special_success; }else{ cnfMsg = msg_save_report_published_success; } } if(response && response.WebAppCreditsPurchase){ if(response.WebAppCreditsPurchase <= 0){ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'red'); }else{ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'inherit'); } } cnfMsg = replaceFunction(cnfMsg, '{ReportName}', HtmlEncode($('.header #renameReportField').val())); jAlert(cnfMsg); }, error: function(request, status, error) { jAlert(msg_error_try); } }); } var reportVersion = '1.0'; if(dataNS == undefined || dataNS.currentReport == undefined || dataNS.currentReport.reportVersion == undefined){ if(isVersion(VERSION_5_0)){ reportVersion = FORM_VERSION; } }else{ reportVersion = dataNS.currentReport.reportVersion; } callSaveReport(); }); // function for make form public menu item // $('.formBuilder .menu .submenu .makeFormPublicLink').click(function(event) // { // if(odkmaker.data.currentForm === null || odkmaker.data.currentForm.idTmp === null || odkmaker.data.currentForm.idTmp === ''){ // jAlert(msg_form_save_and_public); // }else{ // waitForDataLoading(true); // $('.makeFormPublicDialog .errorMessage').empty().slideUp(); // // $.ajax({ // url: '/formbuilder/MakeFormPublicServlet?fnId=inf&key=' + odkmaker.data.currentForm.idTmp, // contentType: 'application/json', // dataType: 'json', // type: 'GET', // data: {}, // cache: false, // complete: function() // { // waitForDataLoading(false); // }, // success: function(response, status) // { // $('.makeFormPublicDialog input').val(''); // $('.makeFormPublicDialog textarea').val(''); // $('.makeFormPublicDialog textarea').empty(); // $('.makeFormPublicDialog #makeFormPublic_form_name').val(response.Form.viewableName); // $('.makeFormPublicDialog #makeFormPublic_form_creator').val(authNS.currentUser.FirstName + ' ' + authNS.currentUser.LastName); // $('.makeFormPublicDialog #makeFormPublic_Email').val(authNS.currentUser.Email); // var now = new Date(); // $('.makeFormPublicDialog #makeFormPublic_form_date_created').val(now.format('mm/dd/yyyy HH:MM:ss')); // $('.makeFormPublicDialog .grpKeywords') // .empty() // .append(response.CboKeyword); // $('.makeFormPublicDialog .cboLanguage') // .empty() // .append(response.CboLanguage) // .val('English'); // if($('.makeFormPublicDialog .cboLanguage').val() == "Other") { // $(".makeFormPublicDialog #other_language").prop('disabled', false); // $(".makeFormPublicDialog span#req").show(); // }else { // $(".makeFormPublicDialog #other_language").prop('disabled', true); // $(".makeFormPublicDialog span#req").hide(); // } // $('.makeFormPublicDialog').jqmShow(); // }, // error: function(request, status, error) // { // if(getStatus(request) == 401){ // jAlert(msg_read_permission_required); // }else if(getStatus(request) == 901){ // jAlert(msg_form_not_found); // }else{ // jAlert(msg_error_try); // } // } // }); // } // }); // modal events $.live('.openDialog .formList li', 'click', function(event) { event.preventDefault(); var $this = $(this); $this.siblings('li').removeClass('selected'); $this.addClass('selected'); }); $('.openDialog .editFormLink').click(function(event) { event.preventDefault(); openSpecialFormNew(); }); $('.openDialog .openLink').click(function(event) { event.preventDefault(); openForm(); }); $('.openReportDialog .openLink').click(function(event) { event.preventDefault(); openReport(); }); $('.openReportDialog .copyExecuteLink').click(function(event) { event.preventDefault(); copyExecuteReport(); }); $('.openReportDialog .runNowLink').off('click').click(function(event) { event.preventDefault(); if((new Date()).getTime() - lastRunNowReportTime < 3000) { return; } waitForDataLoading(true); lastRunNowReportTime = (new Date()).getTime(); runNowReport(); }); $('.openReportDialog iframe.runReport').off('load').on('load', function(){ jAlert(msg_run_report); waitForDataLoading(false); }); $('.openReportDialog .deleteLink').click(function(event) { event.preventDefault(); deleteReport(); }); $.live('.openSpecialDialog .formList li', 'click', function(event) { event.preventDefault(); var $this = $(this); $this.siblings('li').removeClass('selected'); $this.addClass('selected'); }); $.live('.insertFormDialog .formList li', 'click', function(event) { event.preventDefault(); var $this = $(this); $this.siblings('li').removeClass('selected'); $this.addClass('selected'); }); $('.openSpecialDialog .openLink').click(function(event) { event.preventDefault(); openSpecialForm(); }); $('.insertFormDialog .insertLink').click(function(event) { event.preventDefault(); insertForm(); }); $.live('#componentsContent .componentsInsert', 'click', function(event) { var formKey = $(this).parents('tr').attr('id'); //openForm(formKey, OPEN_FORM_FROM_COMPONENTS); var index = 0; // var tmpIndex = $("#workspaceScrollArea .control").index($("#workspaceScrollArea .control.selected")); // if(tmpIndex >= 0) { // index = tmpIndex + 1; // } // jAlert(index); try { if($("#workspaceScrollArea .control.selected").length > 0) { var tmpIndex = $("#workspaceScrollArea .control.selected").attr('id').replace('selectedCtrlFocus',''); if(!isNaN(parseInt(tmpIndex))) { index = parseInt(tmpIndex); } } } catch (e){} insertForm(index, formKey); $('.componentsDialog').jqmHide(); //componentsManager.insertComponents(this); }); $('.searchPublishedFormResultDialog .openLink').click(function(event) { event.preventDefault(); openPublicForm(); }); $.live('.openDialog .formList li', 'dblclick', function(event) { event.preventDefault(); openForm(); }); $.live('.openSpecialDialog .formList li', 'dblclick', function(event) { event.preventDefault(); openSpecialForm(); }); $.live('.insertFormDialog .formList li', 'dblclick', function(event) { event.preventDefault(); insertForm(); }); $('.saveAsDialog .saveAsLink').click(function(event) { var callSaveAsForm = function(){ if($('.saveAsDialog .saveAsLink').hasClass(CONST_CSS_CLASS_HIDE_SESSION)){ return; } $('.saveAsDialog .saveAsLink') .addClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .addClass('waitingIcon') .slideDown(); event.preventDefault(); var fields = $(':input[name=r01]').serializeArray(); var stype = formStype; var title = $('.saveAsDialog .saveAs_name').val(); var seqNo = $('.saveAsDialog .saveAs_seqNo').val(); var allowRetrieve = $('.saveAsDialog .saveAs_AllowRetrieve').prop('checked'); var activeProject = $('.saveAsDialog #cboAssignToProject').val(); var activeProjectName = $('.saveAsDialog #cboAssignToProject option:selected').text(); if(!activeProjectName || activeProjectName == ''){ activeProjectName = 'Main Project'; } if (jQuery.trim(title) === ''){ $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .errorMessage') .empty() .append('

Please type the name.

') .slideDown(); return false; } else if(/[\/:*?"\\><|]/.test(title)){ $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .errorMessage') .empty() .append('

' + err_form_name_not_alw_char + '

') .slideDown(); return false; } var formId = ''; var formIdTmp = ''; if (odkmaker.data.currentForm === null || odkmaker.data.currentForm.idTmp === null || odkmaker.data.currentForm.idTmp === '') { formIdTmp = ''; }else{ formIdTmp = odkmaker.data.currentForm.idTmp; } // PCA-241: New feature > Save form if (formStype === '2') { // Publish form // Generate record names from screen SaveAs var errorMessageRN = processSaveRecordNames(true); if (errorMessageRN != null) { jAlert(errorMessageRN); return false; } } var controlsData = odkmaker.data.extract().controls; // Apply convert SPACE into   with Grid/Table/Questionaire that [x]Replace space with HTML tag “ ” //applyReplaceFormStructureWithNBSP(controlsData, false); var xmlData = odkmaker.data.serialize(); var isUsingGZip = false; if(isVersion(VERSION_ZIP_FORM_INFO)){ controlsData = GZip(JSON.stringify(controlsData)); xmlData = GZip(xmlData); isUsingGZip = true; } var previewMode = ''; var previewSize = ''; var previewOrientation = ''; var previewDefault = false; if(dataNS.currentForm && dataNS.currentForm.previewMode) { previewMode = dataNS.currentForm.previewMode; previewSize = dataNS.currentForm.previewSize; previewOrientation = dataNS.currentForm.previewOrientation; previewDefault = dataNS.currentForm.previewDefault; } $('.formBuilder .header #renameFormField').val(title); console.log("odkmaker.data.formSettings.iconKey=" + odkmaker.data.formSettings.iconKey + ", odkmaker.data.formSettings.iconColor=" + odkmaker.data.formSettings.iconColor + ", odkmaker.data.formSettings.formIconText=" + odkmaker.data.formSettings.formIconText); $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: title, seqNo: seqNo, allowRetrieve: allowRetrieve, controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), id: formId, savetype: stype, idTmp: formIdTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: false, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, activeProject: activeProject, previewMode: previewMode, previewSize: previewSize, previewOrientation: previewOrientation, previewDefault: previewDefault, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, success: function(response, status) { // Fix bug 0022242: Error when save form as Publish and user can not save form // Wrap error when response == null or undefined if (typeof response === 'undefined' || response === null) { jAlert(msg_save_form_name_fail_unknown_warning); waitForDataLoading(false); return; } if(response.Status != undefined && (response.Status == 909 || response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 909){ cnfMsg = msg_save_form_name_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{FormName}', title); }else if(response.Status == 9091){ cnfMsg = msg_save_form_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); jAlert(cnfMsg); return; }else if(response.Status == 9092){ cnfMsg = msg_save_form_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); } jConfirm(cnfMsg, lbl_conf_dlg, function(answer) { if(answer){ $.ajax({ url: '/formbuilder/saveformas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ strRecordName: generateRecordNameString(), title: title, seqNo: seqNo, allowRetrieve: allowRetrieve, controls: controlsData, xform: xmlData, // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms pageSettingKeySet4ViewData : pageSettingKeySet4ViewData, isApplyReportSettings4AssignedPrj : $('#idApplyReportSetting4AssignProjects').prop('checked'), id: response.CnfFormKey, savetype: stype, idTmp: formIdTmp, lookupTables: odkmaker.data.lookupTables(), openFiles: odkmaker.data.openFiles(), saveSpecial: false, hasExtentionCode: dataNS.currentFormHasExpCode || false, formIcon: odkmaker.data.formSettings.iconKey, formIconColor: odkmaker.data.formSettings.iconColor, formIconText: odkmaker.data.formSettings.formIconText, isShadedheadings: odkmaker.data.formSettings.isShadedheadings, textColor: odkmaker.data.formSettings.textColor, headingColor: odkmaker.data.formSettings.headingColor, activeTextColor: odkmaker.data.formSettings.activeTextColor, isShadedRow: odkmaker.data.formSettings.isShadedRow, rowTextColor: odkmaker.data.formSettings.rowTextColor, rowColor: odkmaker.data.formSettings.rowColor, isBorderAroundHeading: odkmaker.data.formSettings.isBorderAroundHeading, isRemoveBorderAroundAnswer: odkmaker.data.formSettings.isRemoveBorderAroundAnswer, isButtonShades: odkmaker.data.formSettings.isButtonShades, isAutoSetDefaultDspFwd: odkmaker.data.formSettings.isAutoSetDefaultDspFwd, buttonShadesColor: odkmaker.data.formSettings.buttonShadesColor, buttonTextColor: odkmaker.data.formSettings.buttonTextColor, activeButtonTextColor: odkmaker.data.formSettings.activeButtonTextColor, buttonBorderColor: odkmaker.data.formSettings.buttonBorderColor, btnRoundedCorners: odkmaker.data.formSettings.btnRoundedCorners, labelShading: odkmaker.data.formSettings.labelShading, labelLineColor: odkmaker.data.formSettings.labelLineColor, labelHeadingColor: odkmaker.data.formSettings.labelHeadingColor, labelTextColor: odkmaker.data.formSettings.labelTextColor, openingView: odkmaker.data.formSettings.openingView, allowReturnToFromView: odkmaker.data.formSettings.allowReturnToFromView || false, isUsingGZip: isUsingGZip, activeProject: activeProject, isIgnoreConflict: true, previewMode: previewMode, previewSize: previewSize, previewOrientation: previewOrientation, previewDefault: previewDefault, isActiveBox: odkmaker.data.formSettings.isActiveBox, activeBoxColor: odkmaker.data.formSettings.activeBoxColor, isAnswerColor: odkmaker.data.formSettings.isAnswerColor, answerColor: odkmaker.data.formSettings.answerColor, answerBGColor: odkmaker.data.formSettings.answerBGColor }), cache: false, success: function(response, status) { if(response.Status != undefined && response.Status == 909){ } releaseDirtyFlag(); var cnfMsg = ""; if(stype == 0){ cnfMsg = msg_save_form_draft_success; }else{ cnfMsg = msg_save_form_published_success_to_prj } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode(title)); cnfMsg = replaceFunction(cnfMsg,'{FormName}', HtmlEncode(title)); cnfMsg = replaceFunction(cnfMsg,'{ProjectName}', HtmlEncode(activeProjectName)); jAlert(cnfMsg); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; console.log("dataNS.currentForm.formIcon=" + dataNS.currentForm.formIcon + ", dataNS.currentForm.formIconColor=" + dataNS.currentForm.formIconColor + ", dataNS.currentForm.formIconText=" + dataNS.currentForm.formIconText); dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadForm){ dataNS.pleaseReloadForm = {}; } if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadForm[activeProject] = true; dataNS.pleaseReloadFormList = true; dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; $('.saveAsDialog').jqmHide(); //title = HtmlDecode(title); var $textField = $('.header #renameFormField'); $('.formBuilder .header h1') .attr('title', title); $textField.val(title); /*if(title.length > 20){ title = title.substring(0, 17) + '...'; }*/ disableMenuSaveAs(false); if(stype == '0'){ $('.header #formType').text(msg_type_draft); disableMenuSave(true); } else if(stype == '1'){ $('.header #formType').text(msg_type_public); disableMenuSave(false); }else if(stype == '2'){ $('.header #formType').text(msg_type_published); if(!isVersion(VERSION_STRICT_FORM_BUILDER)){ disableMenuSave(false); }else{ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; openSpecialControlDisable(true); resetOldCtrlFlag(); } } $('.formBuilder .header h1') .text(title) .fadeIn(); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .errorMessage') .empty() .slideUp(); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } }, error: function(request, status, error) { $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); if(getStatus(request) == 909){ var errorMsg = msg_save_form_name_conflict_error; //errorMsg = errorMsg.replace('{FormName}', title); errorMsg = replaceFunction(errorMsg, '{FormName}', title); $('.saveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); }else{ $('.saveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); } $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); } }); }else{ $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); } }); }else{ releaseDirtyFlag(); var cnfMsg = ""; if(stype == 0){ cnfMsg = msg_save_form_draft_success; }else{ cnfMsg = msg_save_form_published_success_to_prj } //cnfMsg = cnfMsg.replace('{FormName}', HtmlEncode(title)); cnfMsg = replaceFunction(cnfMsg,'{FormName}', HtmlEncode(title)); cnfMsg = replaceFunction(cnfMsg,'{ProjectName}', HtmlEncode(activeProjectName)); jAlert(cnfMsg); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.iconColor = dataNS.currentForm.formIconColor || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; console.log("dataNS.currentForm.formIcon=" + dataNS.currentForm.formIcon + ", dataNS.currentForm.formIconColor=" + dataNS.currentForm.formIconColor + ", dataNS.currentForm.formIconText=" + dataNS.currentForm.formIconText); dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(!dataNS.pleaseReloadForm){ dataNS.pleaseReloadForm = {}; } if(!dataNS.pleaseReloadFormDataSource){ dataNS.pleaseReloadFormDataSource = {}; } dataNS.pleaseReloadForm[activeProject] = true; dataNS.pleaseReloadFormList = true; dataNS.pleaseReloadFormDataSource[dataNS.currentForm.idTmp] = true; $('.saveAsDialog').jqmHide(); //title = HtmlDecode(title); var $textField = $('.formBuilder .header #renameFormField'); $('.formBuilder .header h1') .attr('title', title); $textField.val(title); /*if(title.length > 20){ title = title.substring(0, 17) + '...'; }*/ disableMenuSaveAs(false); if(stype == '0'){ $('.header #formType').text(msg_type_draft); disableMenuSave(true); } else if(stype == '1'){ $('.header #formType').text(msg_type_public); disableMenuSave(false); }else if(stype == '2'){ $('.formBuilder .header #formType').text(msg_type_published); if(!isVersion(VERSION_STRICT_FORM_BUILDER)){ disableMenuSave(false); }else{ dataNS.currentForm.id = dataNS.currentForm.idTmp; isFormOpenSpecial = true; isSpecialDataChanged = false; openSpecialControlDisable(true); resetOldCtrlFlag(); } } $('.formBuilder .header h1') .text(title) .fadeIn(); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .errorMessage') .empty() .slideUp(); if(response.keyChange != undefined){ lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); //reloadPrivateFormJson(); } } }, error: function(request, status, error) { $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); if(getStatus(request) == 909){ var errorMsg = msg_save_form_name_conflict_error; //errorMsg = errorMsg.replace('{FormName}', title); errorMsg = replaceFunction(errorMsg,'{FormName}', title); $('.saveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); } else if(getStatus(request) == 401){ var errorMsg = msg_save_form_permission_required; $('.saveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); } else if(getStatus(request) == 404){ var errorMsg = msg_save_form_not_found_customer; $('.saveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); } else { /*var resultJson = undefined; try{ resultJson = jQuery.parseJSON(request.response); } catch(e){ } if(resultJson != undefined){ if(resultJson.createFormState == 1){ jAlert(msg_save_form_success_cannot_add_to_prj); }else{ $('.saveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); } }else{ $('.saveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); }*/ $('.saveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); } $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); } }); } var formVersion = '1.0'; if(dataNS == undefined || dataNS.currentForm == undefined || dataNS.currentForm.formVersion == undefined){ if(isVersion(VERSION_5_0)){ formVersion = FORM_VERSION; } }else{ formVersion = dataNS.currentForm.formVersion; } /*if(isVersion(VERSION_5_0) && formVersion === '1.0'){ $.alerts.okButton = 'Continue'; jConfirm(msg_warning_save_version_change, lbl_conf_dlg, function(answer, data) { $.alerts.okButton = CUSTOM_OK_BUTTON_LABEL; if(answer){ callSaveAsForm(); } }); }else{ callSaveAsForm(); }*/ callSaveAsForm(); }); $('.reportSaveAsDialog .reportSaveAsLink').click(function(event) { var callSaveAsReport = function(){ if($('.reportSaveAsDialog .reportSaveAsLink').hasClass(CONST_CSS_CLASS_HIDE_SESSION)){ return; } $('.reportSaveAsDialog .reportSaveAsLink') .addClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .status') .addClass('waitingIcon') .slideDown(); event.preventDefault(); var stype = reportType; var title = $('.reportSaveAsDialog .saveAs_name').val(); if (jQuery.trim(title) === ''){ $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .errorMessage') .empty() .append('

Please type the name.

') .slideDown(); return false; } else if(/[\/:*?"\\><|]/.test(title)){ $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + err_report_name_not_alw_char + '

') .slideDown(); return false; } var reportId = ''; var reportIdTmp = ''; if (!odkmaker.data.currentReport || odkmaker.data.currentReport.idTmp === null || odkmaker.data.currentReport.idTmp === '') { reportIdTmp = ''; }else{ reportIdTmp = odkmaker.data.currentReport.idTmp; } var controlsData = odkmaker.data.extract().controls; var frequency = ''; var emailTo = ''; var emailOptMessage = ''; var emailSubject = ''; var emailType = ''; var emailCtrl = controlsData[controlsData.length - 1]; var excelReportType = ''; var excelTemplateKey = ''; var excelSheetName = ''; var reportTimeZone = ''; var reportTimeZoneDst = ''; var forwardReportTo = ''; var frtWebGroup = ''; var frtWebUser = ''; if(emailCtrl.type == 'ctrlEmailSchedule'){ frequency = emailCtrl.reportFrequency; var value = emailCtrl.reportEmail; if(value != undefined){ var contentStartPos = value.indexOf('$$', 0); if(contentStartPos >= 0){ emailTo = value.substring(0, contentStartPos); emailOptMessage = value.substring(contentStartPos + 2); }else{ emailTo = value; } } emailSubject = emailCtrl.subjectLine; emailType = emailCtrl.reportFileType; reportTimeZone = emailCtrl.reportTimeZone; reportTimeZoneDst = emailCtrl.reportTimeZoneDst; forwardReportTo = emailCtrl.forwardReportTo; frtWebGroup = emailCtrl.frtWebGroup; frtWebUser = emailCtrl.frtWebUser; forwardReportTo = emailCtrl.forwardReportTo excelReportType = emailCtrl.excelReportType; //if(emailType == CONST_ONE){ if(emailCtrl.excelTemplate){ var arrs = emailCtrl.excelTemplate.split(CONST_SPLIT_BLOBKEY); if(arrs.length>1){ var arrs1 = arrs[1].split(CONST_SPLIT_AND); excelTemplateKey = arrs1[0]; }else{ excelTemplateKey = emailCtrl.excelTemplate; } } if(emailCtrl.useCustomTemplate){ excelSheetName = emailCtrl.excelSheetName; } //} } $('.reportBuilder .header #renameReportField').val(title); var timezone = getReportTimeZone(); $.ajax({ url: '/reportbuilder/savereportas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ title: title, controls: controlsData, id: reportId, savetype: stype, idTmp: reportIdTmp, frequency: frequency, emailTo: emailTo, emailOptMessage: emailOptMessage, emailSubject: emailSubject, emailType: emailType, saveSpecial: false, isUsingGZip: false, timezone: timezone, reportTimeZone: reportTimeZone, reportTimeZoneDst: reportTimeZoneDst, forwardReportTo: forwardReportTo, frtWebGroup: frtWebGroup, frtWebUser: frtWebUser, excelReportType: excelReportType, excelTemplateKey: excelTemplateKey, excelSheetName: excelSheetName //convertToPdf: emailCtrl.convertToPdf // CO-1284 }), cache: false, success: function(response, status) { if (typeof response === 'undefined' || response === null) { $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); jAlert(msg_save_report_name_fail_unknown_warning); waitForDataLoading(false); return; } if(response.Status != undefined && (response.Status == 909 || response.Status == 9091 || response.Status == 9092)){ var cnfMsg = ''; if(response.Status == 909){ cnfMsg = msg_save_report_name_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{ReportName}', title); }else if(response.Status == 9091){ cnfMsg = msg_save_report_type_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); }else if(response.Status == 9092){ cnfMsg = msg_save_report_date_conflict_warning; cnfMsg = replaceFunction(cnfMsg,'{UpdateUser}', response.UpdateUser); } jConfirm(cnfMsg, lbl_conf_dlg, function(answer) { if(answer){ var timezone = getReportTimeZone(); $.ajax({ url: '/reportbuilder/savereportas', contentType: 'application/json; charset=UTF-8', dataType: 'json', type: 'POST', data: JSON.stringify({ title: title, controls: controlsData, id: response.CnfReportKey, savetype: stype, idTmp: reportIdTmp, frequency: frequency, emailTo: emailTo, emailOptMessage: emailOptMessage, emailSubject: emailSubject, emailType: emailType, saveSpecial: false, isUsingGZip: false, timezone: timezone, reportTimeZone: reportTimeZone, reportTimeZoneDst: reportTimeZoneDst, forwardReportTo: forwardReportTo, frtWebGroup: frtWebGroup, frtWebUser: frtWebUser, excelReportType: excelReportType, excelTemplateKey: excelTemplateKey, excelSheetName: excelSheetName //convertToPdf: emailCtrl.convertToPdf // CO-1284 }), cache: false, success: function(response, status) { if(response.Status != undefined && response.Status == 909){ } releaseDirtyFlag(); var cnfMsg = ""; if(stype == 0){ cnfMsg = msg_save_report_draft_success; }else{ cnfMsg = msg_save_report_published_success } if(response && response.WebAppCreditsPurchase){ if(response.WebAppCreditsPurchase <= 0){ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'red'); }else{ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'inherit'); } } cnfMsg = replaceFunction(cnfMsg,'{ReportName}', HtmlEncode(title)); jAlert(cnfMsg); dataNS.currentReport = response; $('.reportSaveAsDialog').jqmHide(); var $textField = $('.header #renameReportField'); $('.reportBuilder .header h1') .attr('title', title); $textField.val(title); disableMenuReportSaveAs(false); if(stype == '0'){ $('.header #reportType').text(msg_type_draft); disableMenuReportSave(true); disableMenuReportAudit(false); } else if(stype == '1'){ $('.header #reportType').text(msg_type_public); disableMenuReportSave(false); disableMenuReportAudit(false); }else if(stype == '2'){ $('.header #reportType').text(msg_type_published); disableMenuReportSave(false); disableMenuReportAudit(true); } $('.reportBuilder .header h1') .text(title) .fadeIn(); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .errorMessage') .empty() .slideUp(); }, error: function(request, status, error) { $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); if(getStatus(request) == 909){ var errorMsg = msg_save_report_name_conflict_error; errorMsg = replaceFunction(errorMsg, '{ReportName}', title); $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); }else if(getStatus(request) == 932){ $('.accountStatus .webappCredit').empty().append('0').css('color', 'red'); var errorMsg = err_do_not_web_app_credit; $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); }else{ $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); } $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); } }); }else{ $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); } }); }else{ releaseDirtyFlag(); var cnfMsg = ""; if(stype == 0){ cnfMsg = msg_save_report_draft_success; }else{ cnfMsg = msg_save_report_published_success } if(response && response.WebAppCreditsPurchase){ if(response.WebAppCreditsPurchase <= 0){ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'red'); }else{ $('.accountStatus .webappCredit').empty().append(response.WebAppCreditsPurchase).css('color', 'inherit'); } } cnfMsg = replaceFunction(cnfMsg,'{ReportName}', HtmlEncode(title)); jAlert(cnfMsg); dataNS.currentReport = response; $('.reportSaveAsDialog').jqmHide(); //title = HtmlDecode(title); var $textField = $('.reportBuilder .header #renameReportField'); $('.reportBuilder .header h1') .attr('title', title); $textField.val(title); disableMenuReportSaveAs(false); if(stype == '0'){ $('.header #reportType').text(msg_type_draft); disableMenuReportSave(true); disableMenuReportAudit(false); } else if(stype == '1'){ $('.header #reportType').text(msg_type_public); disableMenuReportSave(false); disableMenuReportAudit(false); }else if(stype == '2'){ $('.reportBuilder .header #reportType').text(msg_type_published); disableMenuReportSave(false); disableMenuReportAudit(true); } $('.reportBuilder .header h1') .text(title) .fadeIn(); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .errorMessage') .empty() .slideUp(); } }, error: function(request, status, error) { $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); if(getStatus(request) == 909){ var errorMsg = msg_save_report_name_conflict_error; errorMsg = replaceFunction(errorMsg,'{ReportName}', title); $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); }else if(getStatus(request) == 932){ $('.accountStatus .webappCredit').empty().append('0').css('color', 'red'); var errorMsg = err_do_not_web_app_credit; $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); }else if(getStatus(request) == 401){ var errorMsg = msg_save_report_permission_required; $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); } else if(getStatus(request) == 404){ var errorMsg = msg_save_report_not_found_customer; $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + errorMsg + '

') .slideDown(); } else { $('.reportSaveAsDialog .errorMessage') .empty() .append('

' + err_could_not_save + '

') .slideDown(); } $('.reportSaveAsDialog .reportSaveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); } }); } var reportVersion = '1.0'; if(dataNS == undefined || dataNS.currentReport == undefined || dataNS.currentReport.reportVersion == undefined){ reportVersion = REPORT_VERSION; }else{ reportVersion = dataNS.currentReport.reportVersion; } callSaveAsReport(); }); // Apply toolbar icon "Save As-Draft", same as menu "Save As-Draft" in BuildForms $('.formBuilder .menu .submenu .saveAsDraftLink, .toolBar4MenuBuildForm .buildFormIconSaveDraft') .off('click') .click(function(event) { // Using only one reference item in Save As-Draft in Build Forms // (in menu and toolbar icon) var objThis = $('.formBuilder .menu .submenu .saveAsDraftLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } formStype = '0'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_draft); showPublicAdditionalInfo(false); $('.saveAsDialog').jqmShow(); }); // Apply toolbar icon "Save As-Draft", same as menu "Save As-Draft" in BuildReports $('.reportBuilder .menu .submenu .saveAsDraftLink, .toolBar4MenuBuildReport .buildReportIconSaveDraft') .off('click') .click(function(event) { // Using only one reference item in Save As-Draft in Build Reports // (in menu and toolbar icon) var objThis = $('.reportBuilder .menu .submenu .saveAsDraftLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } reportType = '0'; $('.reportSaveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .errorMessage') .empty() .slideUp(); $('.reportSaveAsDialog .modalSmallContents .lblReportType').text(msg_type_draft); $('.reportSaveAsDialog .modalSmallContents .saveAs_name').val($('.reportBuilder input#renameReportField').val()); $('.reportSaveAsDialog').jqmShow(); }); $('.formBuilder .menu .submenu .saveAsPublicLink').click(function(event) { event.preventDefault(); if($($(this).parents('li')[0]).hasClass('disabled')){ return; } var retObj = odkmaker.data.checkFormDataValid(); if(retObj.error != 0){ /*if(retObj.error >= 90){ jAlert(retObj.message); }else{ if(retObj.ctrlName.length > 76){ jAlert('Control ' + retObj.ctrlName.substring(0, 73) + '...' + ' error : ' + retObj.message); }else{ jAlert('Control ' + retObj.ctrlName + ' error : ' + retObj.message); } }*/ if(retObj.error == 1){ jAlert(msg_bf_form_validate_error); }else{ jAlert(retObj.message); } return; } if(isVersion7_2() && retObj.skipwarning == true && (getStoreData("BuildForm_NotShowSkipWarning") == null || getStoreData("BuildForm_NotShowSkipWarning") != CONST_VALUE_TRUE_STR)){ var html = '
' + msg_bf_skip_warning + '
'; html += '
do not show again!
'; jConfirm(html, lbl_conf_dlg, function(answer, data) { if(data['dontShow']){ storeData("BuildForm_NotShowSkipWarning", true, { expires: 365 }); } if(answer){ formStype = '1'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_public); showPublicAdditionalInfo(true); $('.saveAsDialog').jqmShow(); } }); }else{ formStype = '1'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_public); showPublicAdditionalInfo(true); $('.saveAsDialog').jqmShow(); } }); $('.buildFormMenuProgression .progressionPublic') .off('click') .click(function(event){ var objThis = $('.formBuilder .menu .submenu .saveAsPrivateLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ objThis = $('.formBuilder .menu .submenu .saveLink'); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; }else{ $('.toolBar4MenuBuildForm .buildFormIconSave').click(); } }else{ $('.toolBar4MenuBuildForm .buildFormIconPublish').click(); } }); $('.buildReportMenuProgression .reportProgressionPublic') .off('click') .click(function(event){ var objThis = $('.reportBuilder .menu .submenu .saveAsPrivateLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ objThis = $('.reportBuilder .menu .submenu .saveLink'); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; }else{ $('.toolBar4MenuBuildReport .buildReportIconSave').click(); } }else{ $('.toolBar4MenuBuildReport .buildReportIconPublish').click(); } }); // Apply toolbar icon "Publish", same as menu "Save As-Publish" in BuildForms $('.formBuilder .menu .submenu .saveAsPrivateLink, .toolBar4MenuBuildForm .buildFormIconPublish') .off('click') .click(function(event) { // Using only one reference item in Save As-Publish in Build Forms // (in menu and toolbar icon) var objThis = $('.formBuilder .menu .submenu .saveAsPrivateLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var retObj = odkmaker.data.checkFormDataValid(); if(retObj.error != 0){ /*if(retObj.error >= 90){ jAlert(retObj.message); }else{ if(retObj.ctrlName != undefined && retObj.ctrlName.length > 76){ jAlert('Control ' + retObj.ctrlName.substring(0, 73) + '...' + ' error : ' + retObj.message); }else{ jAlert('Control ' + retObj.ctrlName + ' error : ' + retObj.message); } }*/ if(retObj.error == 1){ jAlert(msg_bf_form_validate_error); }else{ jAlert(retObj.message); } return; } if(isVersion7_2() && retObj.skipwarning == true && (getStoreData("BuildForm_NotShowSkipWarning") == null || getStoreData("BuildForm_NotShowSkipWarning") != CONST_VALUE_TRUE_STR)){ var html = '
' + msg_bf_skip_warning + '
'; html += '
do not show again!
'; jConfirm(html, lbl_conf_dlg, function(answer, data) { if(data['dontShow']){ storeData("BuildForm_NotShowSkipWarning", true, { expires: 365 }); } if(answer){ formStype = '2'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_published); showPublicAdditionalInfo(true); $('.saveAsDialog').jqmShow(); } }); }else{ formStype = '2'; $('.saveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.saveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.saveAsDialog .errorMessage') .empty() .slideUp(); $('.saveAsDialog .modalSmallContents .lblFormType').text(msg_type_published); showPublicAdditionalInfo(true); $('.saveAsDialog').jqmShow(); } }); $('.reportBuilder .menu .submenu .saveAsPrivateLink, .toolBar4MenuBuildReport .buildReportIconPublish') .off('click') .click(function(event) { // Using only one reference item in Save As-Publish in Build Reports // (in menu and toolbar icon) var objThis = $('.reportBuilder .menu .submenu .saveAsPrivateLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var retObj = odkmaker.data.checkReportDataValid(); if(retObj.error != 0){ if(retObj.error == 1){ jAlert(msg_bf_report_validate_error); }else{ jAlert(retObj.message); } return; } reportType = '2'; $('.reportSaveAsDialog .saveAsLink') .removeClass(CONST_CSS_CLASS_HIDE_SESSION); $('.reportSaveAsDialog .status') .removeClass('waitingIcon') .slideUp(); $('.reportSaveAsDialog .errorMessage') .empty() .slideUp(); $('.reportSaveAsDialog .modalSmallContents .lblReportType').text(msg_type_published); $('.reportSaveAsDialog .modalSmallContents .saveAs_name').val($('.reportBuilder input#renameReportField').val()); $('.reportSaveAsDialog').jqmShow(); }); // Apply toolbar icon "Delete", same as menu "Delete" in BuildForms $('.formBuilder .menu .submenu .deleteFormLink, .toolBar4MenuBuildForm .buildFormIconDelete') .off('click') .click(function(event) { if(odkmaker.data.currentForm == null && !needToConfirm){ return; } jConfirm(msg_confirm_delete + msg_confirm_delete_this_frm, lbl_conf_dlg, function(answer) { if(answer){ if(odkmaker.data.currentForm == null || odkmaker.data.currentForm.idTmp == null || odkmaker.data.currentForm.idTmp == ''){ odkmaker.application.newForm(); return; } var formName = HtmlEncode($('.header #renameFormField').val()); $.ajax({ url: '/formbuilder/deleteform', contentType: 'application/json', dataType: 'json', type: 'POST', data: JSON.stringify({ id: odkmaker.data.currentForm.idTmp }), cache: false, success: function(response, status) { dataNS.currentForm = null; dataNS.formSettings = {}; dataNS.currentFormHasExpCode = null; odkmaker.application.newForm(); var msg = msg_delete_form_success; msg = msg.replace('{FormName}', formName); jAlert(msg); // Process record name in Status New processRecordName4Form(STATUS_NEW_FORM); }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); }); // Apply toolbar icon "Delete", same as menu "Delete" in BuildReports $('.reportBuilder .menu .submenu .deleteReportLink, .toolBar4MenuBuildReport .buildReportIconDelete') .off('click') .click(function(event) { if(odkmaker.data.currentReport == null && !needToConfirmReport){ return; } jConfirm(msg_confirm_delete + msg_confirm_delete_this_report, lbl_conf_dlg, function(answer) { if(answer){ if(odkmaker.data.currentReport == null || odkmaker.data.currentReport.idTmp == null || odkmaker.data.currentReport.idTmp == ''){ odkmaker.application.newReport(); return; } var reportName = HtmlEncode($('.header #renameReportField').val()); $.ajax({ url: '/reportbuilder/deletereport', contentType: 'application/json', dataType: 'json', type: 'POST', data: JSON.stringify({ id: odkmaker.data.currentReport.idTmp }), cache: false, success: function(response, status) { dataNS.currentReport = null; odkmaker.application.newReport(); var msg = msg_delete_report_success; msg = msg.replace('{ReportName}', reportName); jAlert(msg); }, error: function(request, status, error) { jAlert(msg_error_try); } }); } }); }); $('.exportDialog .downloadLink').click(function(event) { event.preventDefault(); var $form = $('
'); $form .append($('').val(dataNS.serialize())) .append($('').val($('.header #renameFormField').val() + '.xml')); $form.appendTo($('body')); $form.submit(); }); $('.exportJsonDialog .downloadLink').click(function(event) { event.preventDefault(); var $form = $(''); var jsonData = {'controls': odkmaker.data.extract().controls}; jsonData.formSettings = odkmaker.data.formSettings; jsonData.record_names_array = glbHashObject['record_names_array']; $form .append($('').val(JSON.stringify(jsonData))) .append($('').val($('.header #renameFormField').val() + '.json')); $form.appendTo($('body')); $form.submit(); }); $(".makeFormPublicDialog .cboLanguage").change(function() { if($(this).val() == "Other") { $(".makeFormPublicDialog #other_language").prop('disabled', false); $(".makeFormPublicDialog span#req").show(); }else { $(".makeFormPublicDialog #other_language").prop('disabled', true); $(".makeFormPublicDialog span#req").hide(); } }); $('.makeFormPublicDialog .saveLink').click(function(event) { if(/[\/:*?"\\><|]/.test($('.makeFormPublicDialog #makeFormPublic_form_name').val())){ $('.makeFormPublicDialog .errorMessage') .empty() .append('

' + err_form_name_not_alw_char + '

') .slideDown(); return false; } waitForDataLoading(true); $('.makeFormPublicDialog .errorMessage').empty().slideUp(); var grpKeywords = $(".makeFormPublicDialog input[name=grpKeywords]:checked"); var keywords = ''; var comma = ''; _.each(grpKeywords, function(control) { keywords = keywords + comma + $(control).val(); comma = ', ' }); $(".makeFormPublicDialog .keywords").val(keywords); $.ajax({ url: '/formbuilder/MakeFormPublicServlet?fnId=save&key=' + odkmaker.data.currentForm.idTmp, dataType: 'json', type: 'POST', data: $('.makeFormPublicDialog ').find(':input, input:checked'), cache: false, complete: function() { waitForDataLoading(false); }, success: function(response, status) { jAlert(msg_form_wait_preview); $('.makeFormPublicDialog').jqmHide(); }, error: function(request, status, error) { if(getStatus(request) == 401){ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_read_permission_required + '

') .slideDown(); }else if(getStatus(request) == 901){ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_form_not_found + '

') .slideDown(); }else if(getStatus(request) == 904){ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_error_email_not_valid + '

') .slideDown(); }else if(getStatus(request) == 910){ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_some_field_required + '

') .slideDown(); }else if(getStatus(request) == 912){ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_error_invalid_datetime + '

') .slideDown(); }else{ $('.makeFormPublicDialog .errorMessage') .append('

' + msg_error_check_try + '

') .slideDown(); } } }); }); $('.previewAndroid').click(function(event){ event.preventDefault(); var retObj = odkmaker.data.checkFormDataValid(); var error = ''; if(retObj.error != 0){ /*if(retObj.error >= 90){ error = retObj.message; }else{ if(retObj.ctrlName != undefined && retObj.ctrlName.length > 76){ error = 'Control ' + retObj.ctrlName.substring(0, 73) + '...' + ' error : ' + retObj.message; }else{ error = 'Control ' + retObj.ctrlName + ' error : ' + retObj.message; } } if(error != ''){ if(error.indexOf(msg_save_form_no_fields) > -1){ error = msg_no_data_preview; } error = error.replace('save', 'open') jAlert(error); }*/ if(retObj.error == 1){ jAlert(msg_bf_form_validate_error_preview); } else if(retObj.error == 98){ jAlert(msg_bf_form_empty_error_preview); } else { jAlert(retObj.message); } return; } $('.previewForm').addClass('previewAndroid'); $('.previewForm').jqmShow(); makeParamater(); }); // Apply toolbar icon "Insert Form", same as menu "Insert Form" in BuildForms $('.formBuilder .menu .submenu .insertFormLink, .toolBar4MenuBuildForm .buildFormIconInsForm') .off('click') .click(function(event) { // Using only one reference item in Save As-Publish in Build Forms // (in menu and toolbar icon) var objThis = $('.formBuilder .menu .submenu .insertFormLink'); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var $dialog = $('.insertFormDialog').jqmShow(); var $formOwnerList = $dialog.find('.formowner'); $formOwnerList.empty(); $dialog.find('.errorMessage') .empty() .slideUp(); $dialog.find('status').find('div') .removeClass('waitingIcon') .slideUp(); $('.insertFormDialog .modalButtonContainer .acceptLink').removeClass(CONST_CSS_CLASS_HIDE_SESSION); $formOwnerList.append('
  • ' + lbl_loading + '
  • '); $('.insertFormDialog .headerSortDown').removeClass('headerSortDown'); $('.insertFormDialog .headerSortUp').removeClass('headerSortUp'); //$('.insertFormDialog .formNameHeader').addClass('headerSortUp'); $.ajax({ url: '/formbuilder/openForm?', dataType: 'json', type: 'GET', cache: false, complete: function() { }, success: function(response, status) { $formOwnerList.empty(); if(response.FormOwner != ''){ $('.insertFormDialog .modalButtonContainer .acceptLink').removeClass(CONST_CSS_CLASS_HIDE_SESSION); $formOwnerList.append(response.FormOwner); //$('.insertFormDialog .openFormSortSession .formNameHeader').trigger('click'); /*CO-3924: Change default open form settings We want to default the open form screen to show the last modified record first. Currently i believe it is by name but we want it so the last modified record shows first when opening a form. */ $('.insertFormDialog .openFormSortSession .formModifiedDateHeader').removeClass('headerSortUp').addClass('headerSortDown').trigger('click'); $('.insertFormDialog .modalContents .scroll_contain').off().on('UpdateAction', function(){ $('.insertFormDialog .modalContents .line_content_form_open').off().click(function(){ $('.insertFormDialog .modalContents .selected').removeClass('selected'); $(this).addClass('selected'); selectedFormKey = $(this).find('.form_link').attr('id'); }).dblclick(function(event){ $('.insertFormDialog .modalContents .selected').removeClass('selected'); $(this).addClass('selected'); selectedFormKey = $(this).find('.form_link').attr('id'); event.preventDefault(); insertForm(); }); }).trigger('UpdateAction'); }else{ $('.insertFormDialog .modalButtonContainer .acceptLink').addClass(CONST_CSS_CLASS_HIDE_SESSION); } }, error: function(request, status, error) { $formOwnerList.empty(); $('.insertFormDialog .modalButtonContainer .acceptLink').addClass(CONST_CSS_CLASS_HIDE_SESSION); if(getStatus(request) == 401){ $('.insertFormDialog .errorMessage') .empty() .append('

    ' + err_donot_have_priv + '

    ') .slideDown(); }else{ $('.insertFormDialog .errorMessage') .empty() .append('

    ' + err_could_not_open_form + '

    ') .slideDown(); } } }); }); $('.formBuilder .menu .submenu #createReportLink').click(function(event) { waitForDataLoading(true); // check if form has any questions var controls = odkmaker.data.extract().controls; if (controls == undefined || controls.length <= 0){ jAlert(msg_bf_form_validate_error); waitForDataLoading(false); return; } // validate form structure var retObj = odkmaker.data.checkFormDataValid(); if(retObj.error != 0){ if(retObj.error == 1){ jAlert(msg_bf_form_validate_error); }else{ jAlert(retObj.message); } waitForDataLoading(false); return; } // CO-3452: Dynamic Table Rows and the excel template var dynamicTables = odkmaker.data.validateDynamicTables(controls); if(dynamicTables.length > 0){ var tableHtml = ''; jQuery.each(dynamicTables, function() { tableHtml += ''; tableHtml += ''; tableHtml += ''; tableHtml += ''; }); tableHtml += '
    '+ this.caption +'
    '; $('.tableRowsTemplate #tableRowsContainer').empty().append(tableHtml); $('#tableRowsContainer .dynamicMaxRow').blur(function(event) { var ctrlObj = this; var msgError = ''; if(!isNumberValueString(ctrlObj.value)){ msgError = msg_error_invalid_number; } else if(ctrlObj.value > EXCEL_TEMPLATE_DYNAMIC_ROW_MAX){ msgError = msg_excel_template_dynamic_row_max.replace('{max}', EXCEL_TEMPLATE_DYNAMIC_ROW_MAX); } if(msgError !== ''){ jAlert(msgError, lbl_alert, function(event){ ctrlObj.focus(); }); } }); /*$('#tableRowsContainer .dynamicMaxRow').keypress(function(event){ return onlyIntegerNumber(this, event, INTEGER_MAXLENGTH); });*/ $('.tableRowsTemplate').jqmShow(); $('.tableRowsTemplate').css('top', '150px;'); waitForDataLoading(false); return; } else{ generateExcelTemplate(controls, {}); } }); $('.tableRowsTemplate .tableTemplate_Add').click(function(event){ $('.tableRowsTemplate').jqmHide(); waitForDataLoading(true); var data = {}; try{ var rowObjs = $('#tableRowsContainer').find(':input'); jQuery.each(rowObjs, function() { data[this.getAttribute('name')] = this.value; }); } catch(e){} generateExcelTemplate(odkmaker.data.extract().controls, data); }); $('.tableRowsTemplate .tableTemplate_Cancel').click(function(event){ $('.tableRowsTemplate').jqmHide(); }); $('.formBuilder .menu .submenu .recordNamesLink').click(function(event) { // if(odkmaker.data.currentForm == undefined || odkmaker.data.currentForm.idTmp == undefined || (odkmaker.data.currentForm.type != undefined && odkmaker.data.currentForm.type != '2')){ if (canShowRecordNamesDialog() == false) { // jAlert(msg_recorname_menu_disable); return; } waitForDataLoading(true); $('.recordNamesDialog #rndAdd_Item').off('click'); $('.recordNamesDialog #rndAdd_Item').click(function() { $('.recordNamesDialog #rndFromListBox_Item option:selected').appendTo('.recordNamesDialog #rndToListBox_Item'); }); // If you want to move all item from fromListBox to toListBox $('.recordNamesDialog #rndAddAll_Item').off('click'); $('.recordNamesDialog #rndAddAll_Item').click(function() { $('.recordNamesDialog #rndFromListBox_Item option').appendTo('.recordNamesDialog #rndToListBox_Item'); }); // If you want to remove selected item from toListBox to fromListBox $('.recordNamesDialog #rndRemove_Item').off('click'); $('.recordNamesDialog #rndRemove_Item').click(function() { $('.recordNamesDialog #rndToListBox_Item option:selected').appendTo('.recordNamesDialog #rndFromListBox_Item'); }); // If you want to remove all items from toListBox to fromListBox $('.recordNamesDialog #rndRemoveAll_Item').off('click'); $('.recordNamesDialog #rndRemoveAll_Item').click(function() { $('.recordNamesDialog #rndToListBox_Item option').appendTo('.recordNamesDialog #rndFromListBox_Item'); }); $('.recordNamesDialog #rndDown_Item').off('click'); $('.recordNamesDialog #rndDown_Item').click(function() { listboxOrder('rndToListBox_Item', CONST_DOWN) }); $('.recordNamesDialog #rndDownAll_Item').off('click'); $('.recordNamesDialog #rndDownAll_Item').click(function() { listboxOrder('rndToListBox_Item', 'downAll') }); $('.recordNamesDialog #rndUp_Item').off('click'); $('.recordNamesDialog #rndUp_Item').click(function() { listboxOrder('rndToListBox_Item', 'up') }); $('.recordNamesDialog #rndUpAll_Item').off('click'); $('.recordNamesDialog #rndUpAll_Item').click(function() { listboxOrder('rndToListBox_Item', 'upAll') }); // Assign events for button Save, Cancel $('.recordNamesDialog .saveNamingRecord').off('click'); $(".recordNamesDialog .saveNamingRecord").click(function() { waitForDataLoading(true); // Call processing for saving current Record_Name selection var errorMessage = processSaveRecordNames(); if (errorMessage != null) { jAlert(errorMessage, null, function() { $('.recordNamesDialog').jqmHide(); waitForDataLoading(false); }); } else { $('.recordNamesDialog').jqmHide(); waitForDataLoading(false); } var fieldNames = $(".recordNamesDialog #rndToListBox_Item option").toArray(); var recorNames = ''; if (fieldNames.length > 0) { for (i = 0; i < fieldNames.length; i++) { if(recorNames == ''){ recorNames = fieldNames[i].text; }else{ recorNames = recorNames + ' ' + fieldNames[i].text; } } } }); // Call processing for showing Record_Name selection processShowingRecordNameDialog(); waitForDataLoading(false); }); $('.formBuilder .menu .submenu .formIconLink').click(function(event) { waitForDataLoading(true); // Call processing for showing form icon selection processShowingFormIconDialog(); waitForDataLoading(false); }); $('.formBuilder .menu .submenu .formSettingLink').click(function(event) { waitForDataLoading(true); // Call processing for showing form icon selection processShowingFormSettingDialog(); waitForDataLoading(false); }); // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms if (isVersion(VERSION_BUILD_FORMS_REPORT_SETTINGS_4VIEWDATA)) { $('.formBuilder .menu .submenu .formReportSettingLink').off('click').click(function(event) { // In Open Special, we will do nothing if (isFormOpenSpecial && isFormOpenSpecial === true) { writeToLogInfoRequired('Do nothing because we are in Open Special ...'); return; } // Hide menu $('.formBuilder .menu .submenu').blur(); // Wait 1s for preventing layout error setTimeout(function(){ showPageSettings4BuildFormsGUISet4ViewData(); }, 50); }); // The report setting from BuildForms + Set ViewData Report Settings // PCA-581: Make report settings in Build Forms // In Open Special, we will disable menu Report settings var menuItemRPSetting = $('.menu #formReportSettingDialog'); menuItemRPSetting.show(); } $('.formBuilder .menu .submenu .openingViewLink').click(function(event) { waitForDataLoading(true); // Call processing for showing form icon selection processShowingOpeningViewDialog(); waitForDataLoading(false); }); $('.reportBuilder .menu .dataAuditeReportLink') .off('click') .click(function(event) { var objThis = $(this); event.preventDefault(); if($(objThis.parents('li')[0]).hasClass('disabled')){ return; } var showAuditInfo = function(reportId){ var loadAuditInfoList = function(page, reportId){ var ret = undefined; waitForDataLoading(true); $.ajax({ url: '/reportbuilder/ReportScheduleServlet?fnId=AuditList&reportId=' + reportId + '&page=' + page, dataType: 'json', type: 'GET', cache: false, async: false, complete: function() { }, success: function(response, status) { waitForDataLoading(false); ret = response; }, error: function(request, status, error) { waitForDataLoading(false); if(getStatus(request) == 401){ $('.openSpecialDialog .errorMessage') .empty() .append('

    ' + err_donot_have_priv + '

    ') .slideDown(); }else{ $('.openSpecialDialog .errorMessage') .empty() .append('

    ' + err_could_not_open_form + '

    ') .slideDown(); } } }); return ret; } var reportDataArray = loadAuditInfoList(0, reportId); var html = ''; html += ''; html += ''; html += ''; html += ''; html += ''; if(reportDataArray && reportDataArray.data_audit){ for(var i=0; i'; html += ''; html += ''; } } html += '
    Report idUser idUpdate date
    ' + userId + '' + updateDate + '
    '; $('.dataAuditReportDialog form').empty().append(html); } var reportId = dataNS.currentReport.reportID; showAuditInfo(reportId); $('.dataAuditReportDialog').show(); }); $('.dataAuditReportDialog .btnDialogClose') .off('click') .click(function(event) { $('.dataAuditReportDialog').hide(); }); // Process Search/Filter for lookup manager $('#mnuMmanageLookupTable .manageLookupTable, #mnuManageLookupTableNew .frmLookupStandard') .click(function(event, isIgnoreInitData, isAdvancedData){ // $('.menu .manageLookupTable').click(function(event, isIgnoreInitData, isAdvancedData){ if(!$('#lookup_html_area .lookUpDialog').length) { waitForDataLoading(true); var obj = {'isIgnoreInitData':isIgnoreInitData,'isAdvancedData':isAdvancedData}; $('#lookup_html_area').load("/html/lookup_dialog.html", obj, function() { $('#lookup_html_area .modal').jqm({ onShow: function(hash) { hash.o.prependTo('body'); hash.w.fadeIn('slow'); }, onHide : function(hash) { hash.w.fadeOut('slow',function(){ hash.o.remove(); }); }, modal: true }); // $('.menu .manageLookupTable').trigger('click',[obj.isIgnoreInitData, obj.isAdvancedData]); $('#mnuMmanageLookupTable .manageLookupTable').trigger('click',[obj.isIgnoreInitData, obj.isAdvancedData]); }); return; } // Default title (Standard) $('.lookUpDialog .padding_2 .titleManageLookup').text(msg_manage_lookup_standard_gui); var activeStateClass = $('.lookUpDialog input[name=manage_lookup_in_active]:checked').attr('class'); var activeState = ""; if('manage_lookup_active' == activeStateClass) { activeState = 'active'; } else if('manage_lookup_inactive' == activeStateClass) { activeState = 'inactive'; } // Advanced Data Manager advancedDTM.isAdvancedLookupGUI = false; if (isVersion(VERSION_ADVANCED_DATA_MANAGER) && isAdvancedData) { advancedDTM.isAdvancedLookupGUI = true; $('.lookUpDialog .padding_2 .titleManageLookup').text(msg_manage_lookup_advanced_gui); // Disable button [Upload] $('#gotoUploadScreen').prop('disabled', true); } else { // Disable button [Upload] $('#gotoUploadScreen').removeAttr('disabled'); } // Reset all global vars when we are in List GUI advancedDTM.resetGlobalVars(); if(isFreeAccount()){ return; } // Apply show lookup GUI with filtering data by lookup type : Non-POD/POD/All //$('.lookUpDialog').jqmShow(); waitForDataLoading(true); // append lookup table html value var lookupTable = ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; // Add "Upload Date" lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += ''; lookupTable += '
    ' + lbl_table_name + '' + lbl_col_name + '' + lbl_desc + '' + lbl_associate_forms + '' + lbl_upload_date_in_lookup_manager + '' + lbl_last_modified + '' + lbl_active + '
    '; $('#lookUp_Content').empty().append(lookupTable); // append record data for lookup table var lkTableRecords = ''; $.ajax({ url: '/dataview/lookupprocess?action=viewAll', dataType: 'json', type: 'Get', data : { isAdvancedLookupGUI : advancedDTM.isAdvancedLookupGUI ,activeState: activeState }, cache: false, complete: function() { $('#lookup_Table').find('#vd_lookup_menu_bar').append(lkTableRecords); if(!isUserFinishLoad || isUserPriAddEdit()) { $('#lookup_Table').find('.icon_down').hover(function() { lookupRecordId = this.id; lookupOldBlob = this.name; }); } else { $('#lookup_Table').find('.icon_down') .removeClass('icon_down').addClass('icon_down1'); } // Implements the text-wrapping for col_1, col_2, col_3, col_4 //processTextWrappingLookupTableValues(); if(!isUserFinishLoad || isUserPriAddEdit()) { cssdropdown.startchrome("vd_lookup_menu_bar"); } // Process center screen and make scroll bar for LookupManager // when the screen resolution is small makeCenterAndScroll4LookupManager(); // Show lookup dialog with filtering POD data // (including init default search/filter data) console.log(' >>>>>>>>> isIgnoreInitData : ' + isIgnoreInitData); if (isIgnoreInitData) { showLookupDialogIncludingFilterData(); } else { // Init search filter data (clear text field/set default values) showLookupDialogIncludingFilterData(true); } registerLookupCtrlEvents(); waitForDataLoading(false); }, success: function(response, status) { lkTableRecords = generateLookupTableRows(response, 'buildForm'); }, error: function(request, status, error) { jAlert('Failed: ' + request.statusText); lkTableRecords += ''; lkTableRecords += ''; lkTableRecords += ''; lkTableRecords += ''; lkTableRecords += ' '; lkTableRecords += ' '; lkTableRecords += ' '; lkTableRecords += ''; waitForDataLoading(false); } }); // Initialize for Lookup Use Form (only the first time) // if (glbHashObject['is_init_lookup_4_use_form'] == undefined) { initLookup4UseForm(); // glbHashObject['is_init_lookup_4_use_form'] = true; // } }); // Advanced $('#mnuManageLookupTableNew .frmLookupAdvanced').off('click').click(function() { console.log('Click Advanced Menu'); // Check if the current account has the AdvancedDataManager in AdminGUI if (!authNS.currentUser.AdvanceDataSource) { jAlert(msg_not_using_advanced_lookup_for_account); return; } $('#mnuMmanageLookupTable .manageLookupTable').trigger('click', [false, true]); }); }); }; var resetOldCtrlFlag = function(){ $('.workspace:visible .control').each(function(){ var $control = $(this); var data = $control.data('odkControl-properties'); if(data){ _.each($control.data('odkControl-properties'), function(property, name){ property.isOldCtrl = true; }) } }); } var openFormImportJson = function(importJsonControls, formSettings, record_names_array) { controlDataChange(); lookupdatainf.reloadLookupDataNoWait($('.cboLookupTable')); $('.jumpToHeader .cboJumpTo').empty(); var response = {}; response.title = 'Untitled Form'; response.controls = importJsonControls; isFormOpenSpecial = false; openSpecialControlDisable(false); dataNS.currentForm = response; dataNS.formSettings = {}; dataNS.formSettings.iconKey = dataNS.currentForm.formIcon || ''; dataNS.formSettings.formIconText = dataNS.currentForm.formIconText || ''; dataNS.formSettings.openingView = dataNS.currentForm.openingView || ''; dataNS.formSettings.allowReturnToFromView = dataNS.currentForm.allowReturnToFromView || false; dataNS.formSettings.isShadedheadings = dataNS.currentForm.isShadedheadings || false; dataNS.formSettings.textColor = dataNS.currentForm.textColor || ''; dataNS.formSettings.headingColor = dataNS.currentForm.headingColor || ''; dataNS.formSettings.activeTextColor = dataNS.currentForm.activeTextColor || ''; dataNS.formSettings.isBorderAroundHeading = dataNS.currentForm.isBorderAroundHeading; dataNS.formSettings.isRemoveBorderAroundAnswer = dataNS.currentForm.isRemoveBorderAroundAnswer; dataNS.formSettings.isShadedRow = dataNS.currentForm.isShadedRow || false; dataNS.formSettings.rowTextColor = dataNS.currentForm.rowTextColor || ''; dataNS.formSettings.rowColor = dataNS.currentForm.rowColor || ''; dataNS.formSettings.isButtonShades = dataNS.currentForm.isButtonShades || false; dataNS.formSettings.buttonShadesColor = dataNS.currentForm.buttonShadesColor || ''; dataNS.formSettings.buttonTextColor = dataNS.currentForm.buttonTextColor || ''; dataNS.formSettings.activeButtonTextColor = dataNS.currentForm.activeButtonTextColor || ''; dataNS.formSettings.buttonBorderColor = dataNS.currentForm.buttonBorderColor || ''; dataNS.formSettings.btnRoundedCorners = dataNS.currentForm.btnRoundedCorners || false; dataNS.formSettings.isAutoSetDefaultDspFwd = dataNS.currentForm.isAutoSetDefaultDspFwd || false; dataNS.formSettings.labelShading = dataNS.currentForm.labelShading || ''; dataNS.formSettings.labelLineColor = dataNS.currentForm.labelLineColor || ''; dataNS.formSettings.labelHeadingColor = dataNS.currentForm.labelHeadingColor || ''; dataNS.formSettings.labelTextColor = dataNS.currentForm.labelTextColor || ''; dataNS.currentFormHasExpCode = dataNS.currentForm.hasExtentionCode; dataNS.formSettings.isActiveBox = dataNS.currentForm.isActiveBox || false; dataNS.formSettings.activeBoxColor = dataNS.currentForm.activeBoxColor || ''; dataNS.formSettings.isAnswerColor = dataNS.currentForm.isAnswerColor || false; dataNS.formSettings.answerColor = dataNS.currentForm.answerColor || ''; dataNS.formSettings.answerBGColor = dataNS.currentForm.answerBGColor || ''; if(formSettings != undefined){ dataNS.formSettings = formSettings; } if(record_names_array != undefined){ glbHashObject['record_names_array'] = record_names_array; } lookupdatainf.PublicLookupTables = undefined; odkmaker.data.load(response); disableMenuSaveAs(false); disableMenuInsertForm(false); $('.header #formType').text(msg_type_draft); disableMenuSave(true); isNeedShowButtonSaveInToolBar = true; releaseDirtyFlag(); }; var bindImportJsonFile = function() { $('#importJsonLink').off('click').on('click', function(){ new AjaxUpload($(this), { action: '/formbuilder/ImportJsonServlet' + '?fnId=Upload_JSON', name: 'jsonFile', responseType: 'json', onSubmit: function(file, ext){ // Check if upload file size > 5MB var browserNameGlobal = getBrowserInfo(); if (browserNameGlobal == 'chrome' || browserNameGlobal == 'safari') { if(getControlUploadSize1(this) > 5*1024*1024){ jAlert(msg_upload_file_size_limit_form_json); waitForDataLoading(false); return false; } } // check upload file extension if (! (ext && /^(json)$/.test(ext))){ jAlert(msg_warning_import_json_form_ext); return false; } waitForDataLoading(true); }, onComplete: function(file, response){ // We can't upload file if (response === undefined || response === null) { jAlert(msg_unknown_error); waitForDataLoading(false); return; } // Handle for case over upload file size limit var signalLimit = response.max_file_size_over_limit; if (signalLimit != undefined && signalLimit != null && signalLimit == true) { jAlert(msg_upload_file_size_limit_form_json); waitForDataLoading(false); return; } // Fix bug 0023712: Email - Warning message don't show although user upload template that have excel 2003 format if (response.invalid_json === true) { jAlert(msg_warning_import_json_form_ext); waitForDataLoading(false); return; } if((dataNS.currentForm != undefined || $('.workspace:visible').children().length != 0) && needToConfirm){ jConfirm(msg_confirm_unsaved_changes, lbl_conf_dlg, function(answer) { if(answer){ odkmaker.application.newForm(); $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').show(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_form, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); // Process record name in Status New processRecordName4Form(STATUS_NEW_FORM); openFormImportJson(response.controls, response.formSettings, response.record_names_array); waitForDataLoading(false); }else{ waitForDataLoading(false); } }); }else{ odkmaker.application.newForm(); $($('.formBuilder .menu .submenu .recordNamesLink').parents('li')[0]).addClass('disabled'); $($('.formBuilder .menu .submenu .saveLink').parents('li')[0]).removeClass('disabled'); // Also show the toolbar icon "Save" on BuildForms //$('.toolBar4MenuBuildForm .buildFormIconSave').show(); $('.formBuilder .menu .submenu .saveLink').off('mouseover').qtip({ content: lbl_save_cur_form, show: 'mouseover', hide: 'mouseout', position: { corner: { tooltip: 'leftMiddle', // Use the corner... target: 'rightMiddle' // ...and opposite corner } }, style: { name: 'dark', background: '#000000', border: { radius: 3, width: 3 }, tip: true } }); // Process record name in Status New processRecordName4Form(STATUS_NEW_FORM); openFormImportJson(response.controls, response.formSettings, response.record_names_array); waitForDataLoading(false); } } }); }).trigger('click'); } ;(function($){ dataui_init($); })(jQuery);