look for the out of the box scripts with g_form.submit() for examples
the following example involving a dialog window needs to ensure the mandatory worknotes do not interfere with form submission. Form submit script highlighted
var _canSubmit = false;
var _dialog;
function onSubmit() {
if (_canSubmit) {
return true;
}
/* */
//Check for Assignment Group
if (g_form.getValue('assignment_group') == g_scratchpad.hoth_assignmentGroup && g_scratchpad.serviceOfferingAntenna == true) {
var wNote = g_form.getValue('work_notes');
//If Work note updated
if (wNote != '' && wNote != null) {
g_form.setMandatory('work_notes', false); //--don't block form submission
g_form.clearMessages();
//Alert user to remove any Sensitive data
/*-replace JS confirm with nicer dialog*/
_canSubmit = false;
var sMsg = new GwtMessage().getMessage('inc.hoth.work_notes_sesitive_data');
var dialog = new GlideModal('glide_modal_confirm', true, 500);
dialog.setTitle('Check Worknotes');
dialog.setPreference('body', new GwtMessage().format(sMsg));
dialog.setPreference('focusTrap', true);
dialog.setPreference('onPromptComplete', doComplete);
dialog.setPreference('onPromptCancel', doCancel);
dialog.setPreference('buttonLabelComplete', 'OK');
dialog.setPreference('buttonLabelCancel', 'Cancel');
dialog.render();
return false;
//return confirm(new GwtMessage().getMessage('inc.hoth.work_notes_sesitive_data'));
} else {
g_form.setMandatory('work_notes', true);
return false;
}
}
return true;
}
function doComplete() {
g_form.setMandatory('work_notes', false);
_canSubmit = true;
var action = g_form.getActionName();
if(action == 'sysverb_update_and_stay')
g_form.save();
else if(action=='sysverb_update_bottom')
g_form.submit('sysverb_update_bottom');
else
g_form.submit();
/*if (action) {
gsftSubmit(action);
} else {
g_form.submit();
}*/
}
function doCancel() {
g_form.setMandatory('work_notes', true);
if (_dialog)
_dialog.destroy();
return false;
}
Comments
Post a Comment