This commit is contained in:
Andy Howard
2024-11-26 11:33:22 +00:00
parent 8b872cc8f3
commit c8b5df5909
56 changed files with 1122 additions and 860 deletions
@@ -154,6 +154,41 @@
sbm.resultsPaging.fn.refreshPaging(response.paging, context, refreshFn);
}
//--------------------------------------------------------------
sbm.configureItemTable = function (cfg, $sel)
{
//sbm.debug('configureItemTable', cfg, $sel);
let col = cfg.column || {};
let $cell = $('th,td', $sel).removeClass('hidden');
(col.hide || []).forEach(function (v, i, a) { $cell.filter('.' + col.prefix + v).addClass('hidden'); });
}
sbm.populateItemValues = function (cfg, $item, val)
{
//sbm.debug('populateItemValues', cfg, $item, val);
for (var name in val || []) { $item.find('.' + cfg.column.prefix + name).text(val[name]); };
}
sbm.clearItemForm = function ($frm)
{
//sbm.clearControlErrors($frm);
$('.sbm-input,.sbm-textarea,.sbm-select', $frm).val('').prop('readonly', false).prop('disabled', false);
$('.sbm-checkbox', $frm).prop('readonly', false).prop('disabled', false).removeAttr('checked');
}
sbm.configureItemControls = function (cfg, $frm)
{
//sbm.debug('configureItemControls', cfg);
let fld = cfg.field || {};
let $ctrl = $('.sbm-form-control', $frm).show();
for (var name in fld.label || {}) { /* ... */ };
(fld.hide || []).forEach(function (v, i, a) { $ctrl.filter('.' + fld.prefix + v).hide().find('.sbm-input,.sbm-textarea,.sbm-select,.sbm-checkbox').prop('disabled', true); });
(fld.readonly || []).forEach(function (v, i, a) { $ctrl.filter('.' + fld.prefix + v).find('.sbm-input,.sbm.textarea,.sbm-select,.sbm-checkbox').prop('readonly', true).prop('disabled', true); });
}
sbm.populateFormValues = function (cfg, $frm, val)
{
//sbm.debug('populateFormValues', cfg, $frm, val);
let $ctrl = $('.sbm-form-control', $frm);
for (var name in val || {}) { $ctrl.filter('.' + cfg.field.prefix + name).find('.sbm-input,.sbm-textarea,.sbm-select').filter('.sbm-auto-val').val(val[name]).end().find('.sbm-checkbox').prop('checked', !!val[name]); };
}
//--------------------------------------------------------------
// Page navigation.
sbm.navigateTo = function (action)
@@ -221,7 +256,7 @@
sbm.$dlg.alert = $('<div id="dlgAlert"><div id="dlgAlertMsg"></div></div>').dialog(opt);
}
$('#dlgAlertMsg', sbm.$dlg.alert).html(msg.replace(/\\n/g, '<br>'));
let btns = [];
let btns = {};
btns[sbm.lbl.ok] = function () { $(this).dialog('close'); if (onOk) onOk(); };
sbm.$dlg.alert.dialog('option', { title: title || sbm.dlg.title.alert, buttons: btns });
sbm.openDialog(sbm.$dlg.alert);
@@ -236,9 +271,10 @@
if (!sbm.isDef(sbm.$dlg.confirm))
{
var opt = sbm.dlgOpts();
opt.dialogClass += " sbm-dark-blue";
sbm.$dlg.confirm = $('<div id="dlgConfirm"><div class="spacer2"></div><div id="dlgConfirmMsg"></div></div>').dialog(opt);
}
var btns = [];
let btns = {};
btns[sbm.lbl.yes] = function () { $(this).dialog('close'); if (onOk) onOk(); };
btns[sbm.lbl.no] = function () { $(this).dialog('close'); if (onCancel) onCancel(); };
sbm.$dlg.confirm.dialog('option', { title: title || sbm.dlg.title.confirm, buttons: btns });