mirror of
https://github.com/VTECRM/vtenext.git
synced 2026-02-26 16:18:47 +00:00
746 lines
19 KiB
JavaScript
746 lines
19 KiB
JavaScript
/*************************************
|
|
* SPDX-FileCopyrightText: 2009-2020 Vtenext S.r.l. <info@vtenext.com>
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
************************************/
|
|
|
|
/* crmv@104568 crmv@146434 crmv@201359 */
|
|
|
|
var LayoutEditor = {
|
|
|
|
busy: false,
|
|
|
|
isBusy: function() {
|
|
return this.busy;
|
|
},
|
|
|
|
showBusy: function() {
|
|
var me = this;
|
|
me.busy = true;
|
|
jQuery('#status').show();
|
|
},
|
|
|
|
hideBusy: function() {
|
|
var me = this;
|
|
me.busy = false;
|
|
jQuery('#status').hide();
|
|
},
|
|
|
|
ajaxCall: function(service, params, options, callback) {
|
|
var me = this,
|
|
module = jQuery('input[name=fld_module]').val(),
|
|
panelid = jQuery('input[name=panelid]').val();
|
|
|
|
// return if busy
|
|
if (me.isBusy()) return;
|
|
|
|
options = jQuery.extend({}, {
|
|
rawResult: false,
|
|
container: 'cfList',
|
|
reloadVersion: true,
|
|
checkError: false,
|
|
}, options || {});
|
|
|
|
var url = 'index.php?module=Settings&action=SettingsAjax&file=LayoutBlockList&ajax=true&parenttab=Settings&sub_mode='+service;
|
|
url += '&fld_module='+module+'&mobile='+for_mobile+'&panelid='+panelid;
|
|
|
|
me.showBusy();
|
|
|
|
jQuery.ajax({
|
|
url: url,
|
|
method: 'POST',
|
|
data: params,
|
|
success: function(response) {
|
|
me.hideBusy();
|
|
if (!options.rawResult && options.container) {
|
|
var error = false;
|
|
if (options.checkError) {
|
|
if (response == 'DUPLICATE') {
|
|
alert(alert_arr.LABEL_ALREADY_EXISTS);
|
|
error = true;
|
|
} else if(response == 'LENGTH_ERROR') {
|
|
alert(alert_arr.LENGTH_OUT_OF_RANGE);
|
|
error = true;
|
|
// crmv@150747
|
|
} else if (response == 'DB_ROW_LIMIT_REACHED') {
|
|
alert(alert_arr.DB_ROW_LIMIT_REACHED);
|
|
error = true;
|
|
}
|
|
// crmv@150747e
|
|
}
|
|
if (!error) jQuery("#"+options.container).html(response);
|
|
}
|
|
if (options.reloadVersion) me.ajaxCallVersion();
|
|
if (typeof callback == 'function') callback(response);
|
|
}
|
|
});
|
|
},
|
|
|
|
ajaxCallRelated: function(service, params, options, callback) {
|
|
var me = this;
|
|
|
|
options = jQuery.extend(options || {}, {
|
|
container: 'RelatedList_div',
|
|
});
|
|
|
|
return me.ajaxCall(service, params, options, callback);
|
|
},
|
|
|
|
ajaxCallVersion: function() {
|
|
var me = this;
|
|
return me.ajaxCall('layoutBlockVersion', null, {container: 'layoutBlockVersionContainer', reloadVersion: false});
|
|
},
|
|
|
|
changeTab: function(panelid) {
|
|
var me = this,
|
|
curpanelid = jQuery('input[name=panelid]').val(),
|
|
module = jQuery('input[name=fld_module]').val();
|
|
|
|
if (curpanelid == panelid) return;
|
|
|
|
var url = 'index.php?module=Settings&action=LayoutBlockList&formodule='+module+'&panelid='+panelid;
|
|
location.href = url;
|
|
},
|
|
|
|
saveTabOrder: function() {
|
|
var me = this,
|
|
cont = jQuery('#LayoutEditTabs'),
|
|
ids = [];
|
|
|
|
cont.find('td.tabCell').each(function(idx, el) {
|
|
var panelid = jQuery(el).data('panelid');
|
|
ids.push(panelid);
|
|
});
|
|
|
|
me.ajaxCall('reorderTabs', {panelids: ids.join(';')}, {rawResult: true});
|
|
},
|
|
|
|
showEditTab: function(panelid, label, self) {
|
|
if (panelid > 0) {
|
|
// edit
|
|
var divname = 'editTab';
|
|
jQuery('#editTabPanelId').val(panelid);
|
|
jQuery('#editTabName').val(label);
|
|
} else {
|
|
// create
|
|
var divname = 'createTab';
|
|
}
|
|
showFloatingDiv(divname, self, panelid);
|
|
},
|
|
|
|
createTab: function() {
|
|
var me = this,
|
|
label = jQuery('#newTabName').val();
|
|
if (!label) return;
|
|
|
|
me.ajaxCall('addTab', {
|
|
tablabel: label
|
|
}, {
|
|
checkError: true
|
|
}, function(result) {
|
|
hideFloatingDiv('createTab');
|
|
});
|
|
},
|
|
|
|
editTab: function() {
|
|
var me = this,
|
|
label = jQuery('#editTabName').val(),
|
|
panelid = jQuery('#editTabPanelId').val();
|
|
|
|
if (!label || !panelid) return;
|
|
|
|
me.ajaxCall('editTab', {
|
|
editpanelid: panelid,
|
|
tablabel: label
|
|
}, {
|
|
checkError: true
|
|
}, function(result) {
|
|
hideFloatingDiv('editTab');
|
|
});
|
|
},
|
|
|
|
preDeleteTab: function(self) {
|
|
var me = this,
|
|
panelid = jQuery('#editTabPanelId').val(),
|
|
pinfo = panelBlocks[panelid];
|
|
|
|
// check if there are blocks in this panel
|
|
if (pinfo && pinfo.blockids && pinfo.blockids.length > 0) {
|
|
// show the panel to choose where the blocks should be moved
|
|
showFloatingDiv('chooseTabForBlocks', self);
|
|
hideFloatingDiv('editTab');
|
|
} else {
|
|
// go on with deletion
|
|
vteconfirm(alert_arr.SURE_TO_DELETE, function(yes) {
|
|
if (yes) me.deleteTab();
|
|
});
|
|
|
|
}
|
|
},
|
|
|
|
deleteTab: function() {
|
|
var me = this,
|
|
module = jQuery('input[name=fld_module]').val(),
|
|
panelid = jQuery('#editTabPanelId').val(),
|
|
desttab = jQuery('#delTabSelect').val();
|
|
|
|
me.ajaxCall('deleteTab', {delpanelid: panelid, move_blocks: desttab}, {rawResult: false}, function() {
|
|
// reload page
|
|
var url = 'index.php?module=Settings&action=LayoutBlockList&formodule='+module;
|
|
location.href = url;
|
|
});
|
|
},
|
|
|
|
preMoveBlock: function(blockid) {
|
|
var me = this;
|
|
|
|
jQuery('#moveBlockTabId').val(blockid);
|
|
showFloatingDiv('chooseTabForBlock');
|
|
},
|
|
|
|
moveBlock: function() {
|
|
var me = this,
|
|
blockid =jQuery('#moveBlockTabId').val(),
|
|
desttab = jQuery('#delTabSelectBlock').val();
|
|
|
|
me.ajaxCall('moveBlockToTab', {blockid: blockid, destpanel: desttab});
|
|
},
|
|
|
|
changeFieldorder: function(what_to_do, fieldid, blockid, modulename) {
|
|
var me = this;
|
|
|
|
me.ajaxCall('changeOrder', {
|
|
what_to_do: what_to_do,
|
|
fieldid: fieldid,
|
|
blockid: blockid
|
|
});
|
|
},
|
|
|
|
changeShowstatus: function(tabid,blockid,modulename) {
|
|
var me = this,
|
|
display_status = jQuery('#display_status_'+blockid).val();
|
|
|
|
if (display_status == 'move') {
|
|
return me.preMoveBlock(blockid);
|
|
}
|
|
|
|
me.ajaxCall('changeOrder', {
|
|
what_to_do: display_status,
|
|
tabid: tabid,
|
|
blockid: blockid
|
|
});
|
|
|
|
},
|
|
|
|
changeBlockorder: function(what_to_do, tabid, blockid, modulename) {
|
|
var me = this;
|
|
|
|
me.ajaxCall('changeOrder', {
|
|
what_to_do: what_to_do,
|
|
tabid: tabid,
|
|
blockid: blockid
|
|
});
|
|
},
|
|
|
|
deleteCustomField: function(id, fld_module, colName, uitype) {
|
|
var me = this;
|
|
|
|
vteconfirm(alert_arr.ARE_YOU_SURE_YOU_WANT_TO_DELETE, function(yes) {
|
|
if (yes) {
|
|
me.ajaxCall('deleteCustomField', {
|
|
fld_id: id,
|
|
colName: colName,
|
|
uitype: uitype
|
|
}, null, function() {
|
|
hideFloatingDiv('editfield_'+id);
|
|
gselected_fieldtype = '';
|
|
});
|
|
} else {
|
|
hideFloatingDiv('editfield_'+id);
|
|
}
|
|
});
|
|
|
|
},
|
|
|
|
deleteCustomBlock: function(module,blockid,no) {
|
|
var me = this;
|
|
|
|
if (no > 0) {
|
|
alert(alert_arr.PLEASE_MOVE_THE_FIELDS_TO_ANOTHER_BLOCK);
|
|
return false;
|
|
} else {
|
|
vteconfirm(alert_arr.ARE_YOU_SURE_YOU_WANT_TO_DELETE_BLOCK, function(yes) {
|
|
if (yes) {
|
|
me.ajaxCall('deleteCustomBlock', {
|
|
blockid: blockid,
|
|
});
|
|
}
|
|
});
|
|
}
|
|
},
|
|
|
|
getCreateCustomBlockForm: function(modulename,mode) {
|
|
var me = this,
|
|
blockid = jQuery('#after_blockid').val(),
|
|
blocklabel = trim(jQuery('#blocklabel').val());
|
|
|
|
// check label
|
|
if (blocklabel == "") {
|
|
alert(alert_arr.BLOCK_NAME_CANNOT_BE_BLANK);
|
|
return false;
|
|
}
|
|
|
|
me.ajaxCall('addBlock', {
|
|
mode: mode,
|
|
blocklabel: blocklabel,
|
|
after_blockid: blockid
|
|
}, {
|
|
checkError: true
|
|
}, function(result) {
|
|
hideFloatingDiv('addblock');
|
|
gselected_fieldtype = '';
|
|
});
|
|
},
|
|
|
|
alignAddBlockList: function() {
|
|
var me = this,
|
|
hasone = false,
|
|
panelid = jQuery('input[name=panelid]').val(),
|
|
target = jQuery('#after_blockid'),
|
|
pinfo = panelBlocks[panelid];
|
|
|
|
target.val('');
|
|
target.find('option').each(function(idx, el) {
|
|
var blockid = parseInt(el.value);
|
|
if (pinfo.blockids.indexOf(blockid) >= 0) {
|
|
jQuery(el).show();
|
|
hasone = true;
|
|
} else {
|
|
jQuery(el).hide();
|
|
}
|
|
});
|
|
if (hasone) {
|
|
target.get(0).selectedIndex = 0;
|
|
}
|
|
},
|
|
|
|
getCreateCustomFieldForm: function(modulename, blockid, mode) {
|
|
var me = this;
|
|
|
|
if (!validateLayoutEditor(blockid)) return false;
|
|
|
|
var type = jQuery("#fieldType_"+blockid).val();
|
|
var label = jQuery("#fldLabel_"+blockid).val();
|
|
var fldLength = jQuery("#fldLength_"+blockid).val();
|
|
var fldDecimal = jQuery("#fldDecimal_"+blockid).val();
|
|
var fldPickList = jQuery("#fldPickList_"+blockid).val();
|
|
//crmv@113771
|
|
var fldOnclick = jQuery("#fldOnclick_"+blockid).val();
|
|
var fldCode = jQuery("#fldCode_"+blockid).val();
|
|
//crmv@113771e
|
|
|
|
//crmv@101683
|
|
var fldCustomUserPick = jQuery('#fldCustomUserPick_'+blockid).val();
|
|
if (fldCustomUserPick != null && fldCustomUserPick.length > 0) fldCustomUserPick = JSON.stringify(fldCustomUserPick); else fldCustomUserPick = '';
|
|
//crmv@101683e
|
|
|
|
me.ajaxCall('addCustomField', {
|
|
blockid: blockid,
|
|
fieldType: type,
|
|
fldLabel: label,
|
|
fldLength: fldLength,
|
|
fldDecimal: fldDecimal,
|
|
fldPickList: fldPickList,
|
|
//crmv@113771
|
|
fldOnclick: fldOnclick,
|
|
fldCode: fldCode,
|
|
//crmv@113771e
|
|
fldCustomUserPick: fldCustomUserPick
|
|
}, {
|
|
checkError: true
|
|
}, function(result) {
|
|
hideFloatingDiv('addfield_'+blockid)
|
|
gselected_fieldtype = '';
|
|
});
|
|
|
|
},
|
|
|
|
saveFieldInfo: function(fieldid,module,sub_mode) {
|
|
var me = this;
|
|
|
|
//crmv@101683 crmv@113771
|
|
var info = {};
|
|
if (jQuery('#editCustomUserPick_'+fieldid).length > 0) {
|
|
var prop = jQuery('#editCustomUserPick_'+fieldid).val();
|
|
if (prop != null && prop.length > 0) info['users'] = prop;
|
|
}
|
|
if (jQuery('#editOnclick_'+fieldid).length > 0) {
|
|
var prop = jQuery('#editOnclick_'+fieldid).val();
|
|
if (prop != null && prop.length > 0) info['onclick'] = prop;
|
|
}
|
|
if (jQuery('#editCode_'+fieldid).length > 0) {
|
|
var prop = jQuery('#editCode_'+fieldid).val();
|
|
if (prop != null && prop.length > 0) info['code'] = prop;
|
|
}
|
|
//crmv@101683e crmv@113771e
|
|
|
|
me.ajaxCall(sub_mode, {
|
|
fieldid: fieldid,
|
|
ismandatory: jQuery('#mandatory_check_'+fieldid).is(':checked'),
|
|
isPresent: jQuery('#presence_check_'+fieldid).is(':checked'),
|
|
quickcreate: jQuery('#quickcreate_check_'+fieldid).is(':checked'),
|
|
massedit: jQuery('#massedit_check_'+fieldid).is(':checked'),
|
|
info: JSON.stringify(info), //crmv@113771
|
|
}, null, function() {
|
|
hideFloatingDiv('editfield_'+fieldid);
|
|
});
|
|
},
|
|
|
|
show_move_hiddenfields: function(modulename,tabid,blockid,sub_mode) {
|
|
var me = this;
|
|
|
|
if (sub_mode == 'showhiddenfields') {
|
|
var list = jQuery('#hiddenfield_assignid_'+blockid).val() || [];
|
|
} else {
|
|
var list = jQuery('#movefield_assignid_'+blockid).val() || [];
|
|
}
|
|
|
|
me.ajaxCall(sub_mode, {
|
|
tabid: tabid,
|
|
blockid: blockid,
|
|
selected: list.join(':'),
|
|
}, null, function() {
|
|
(sub_mode == 'showhiddenfields') ? hideFloatingDiv('hiddenfield_'+blockid) : hideFloatingDiv('movefield_'+blockid); // crmv@166864
|
|
});
|
|
},
|
|
|
|
changeRelatedListorder: function(what_to_do,tabid,sequence,id,module) {
|
|
var me = this;
|
|
|
|
me.ajaxCallRelated('changeRelatedInfoOrder', {
|
|
sequence: sequence,
|
|
what_to_do: what_to_do,
|
|
tabid: tabid,
|
|
id: id
|
|
});
|
|
},
|
|
|
|
changeRelatedListVisibility: function(tabid,visible,id,module) {
|
|
var me = this,
|
|
curpanelid = jQuery('input[name=panelid]').val();
|
|
|
|
me.ajaxCallRelated('changeRelatedInfoVisibility', {
|
|
visible: visible,
|
|
tabid: tabid,
|
|
id: id
|
|
}, null, function() {
|
|
if (visible == 0) {
|
|
// hide the related, reload the blocks
|
|
me.ajaxCall('NoService');
|
|
}
|
|
});
|
|
|
|
},
|
|
|
|
changeRelatedOption: function(module, option, value) {
|
|
var me = this;
|
|
|
|
me.ajaxCallRelated('changeRelatedOption', {
|
|
option: option,
|
|
optionValue: value
|
|
});
|
|
},
|
|
|
|
callRelatedList: function(module) {
|
|
var me = this;
|
|
|
|
me.ajaxCallRelated('getRelatedInfoOrder');
|
|
},
|
|
|
|
|
|
addRelatedList: function() {
|
|
var me = this,
|
|
ids = jQuery('#addRelatedSelect').val() || [];
|
|
|
|
if (ids && ids.length > 0) {
|
|
me.ajaxCall('addRelatedToTab', {
|
|
relids: ids.join(';'),
|
|
});
|
|
}
|
|
},
|
|
|
|
removeTabRelated: function(relationid) {
|
|
var me = this;
|
|
|
|
me.ajaxCall('removeTabRelated', {
|
|
relationid: relationid,
|
|
}, {
|
|
rawResult: true,
|
|
}, function() {
|
|
jQuery('#tabrelated_'+relationid).remove();
|
|
});
|
|
},
|
|
|
|
saveRelatedTabOrder: function() {
|
|
var me = this
|
|
cont = jQuery('#tabRelatedLists'),
|
|
ids = [];
|
|
|
|
cont.find('div.tabrelated').each(function(idx, el) {
|
|
var relid = jQuery(el).data('relationid');
|
|
ids.push(relid);
|
|
});
|
|
|
|
me.ajaxCall('reorderTabRelateds', {relationids: ids.join(';')}, {rawResult: true});
|
|
},
|
|
|
|
closeVersion: function(callback) {
|
|
var me = this;
|
|
me.ajaxCall('closeVersion', null, {rawResult: true, reloadVersion: false}, function(response){
|
|
if (response != '') alert(response);
|
|
else me.ajaxCallVersion();
|
|
if (typeof callback == 'function') callback();
|
|
});
|
|
},
|
|
|
|
exportVersion: function() {
|
|
var me = this,
|
|
module = jQuery('input[name=fld_module]').val(),
|
|
url = 'index.php?module=Settings&action=SettingsAjax&file=LayoutBlockList&formodule='+module+'&sub_mode=exportVersion';
|
|
|
|
me.ajaxCall('checkExportVersion', null, {rawResult: true, reloadVersion: false}, function(response){
|
|
if (response != '') alert(response);
|
|
else location.href = url;
|
|
});
|
|
}
|
|
}
|
|
|
|
function enableDisableCheckBox(obj, elementName) {
|
|
|
|
var ele = jQuery(elementName);
|
|
if (obj == null || ele.length == 0) return;
|
|
if (obj.checked == true) {
|
|
ele.prop('checked', true).prop('disabled', true);
|
|
} else {
|
|
ele.prop('disabled', false);
|
|
}
|
|
}
|
|
|
|
function makeFieldSelected(oField,fieldid,blockid)
|
|
{
|
|
//crmv@106857 crmv@113771
|
|
if (fieldid == 19) { // uitype 220
|
|
//return ModuleMakerFields.openAddTableFieldPopup(blockid,fieldid);
|
|
return MlTableFieldConfig.openAddTableFieldPopup(blockid);
|
|
}
|
|
//crmv@106857e crmv@113771e
|
|
if(gselected_fieldtype != '')
|
|
{
|
|
jQuery('#'+gselected_fieldtype).removeClass('customMnuSelected');
|
|
}
|
|
oField.className = 'customMnu customMnuSelected';
|
|
gselected_fieldtype = oField.id;
|
|
selFieldTypeLayoutEditor(fieldid,'','',blockid);
|
|
document.getElementById('selectedfieldtype_'+blockid).value = fieldid;
|
|
}
|
|
|
|
function saveMobileInfo(module){
|
|
jQuery('#status').show();
|
|
var mobileFields = jQuery('#layoutMobileInfo form').serialize();
|
|
VteJS_DialogBox.block();
|
|
jQuery.ajax({
|
|
url: 'index.php?module=Settings&action=SettingsAjax&file=LayoutBlockList&sub_mode=saveMobileInfo&parenttab=Settings&formodule='+module+'&ajax=true&mobile='+for_mobile,
|
|
method: 'POST',
|
|
data: mobileFields,
|
|
success: function() {
|
|
jQuery('#status').hide();
|
|
VteJS_DialogBox.unblock();
|
|
}
|
|
});
|
|
}
|
|
|
|
function nav(val) {
|
|
var theUrl = 'index.php?module=Settings&action=LayoutBlockList&parenttab=Settings&formodule='+val+'&mobile='+for_mobile;
|
|
location.href = theUrl;
|
|
}
|
|
|
|
//crmv@106857
|
|
var MlTableFieldConfig = {
|
|
|
|
openAddTableFieldPopup: function(blockno, editno) {
|
|
hideFloatingDiv('addfield_'+blockno);
|
|
var url = 'index.php?module=Settings&action=SettingsAjax&file=LayoutTableField&blockid='+blockno;
|
|
if (typeof(editno) != 'undefined') url += '&fieldid='+editno;
|
|
openPopup(url);
|
|
},
|
|
initAddTableFieldPopup: function(blockno, editfieldno, fieldinfo) {
|
|
var cont = jQuery('#selectedcolumns');
|
|
|
|
var height = (jQuery(document).height() - jQuery('#vte_menu_white').height() - jQuery('#Buttons_List_white').height() - jQuery('.crmvDivContent table').first().height() - 50) + 'px';
|
|
cont.css({
|
|
'height' : height
|
|
});
|
|
// initialize the sortable
|
|
cont.sortable({
|
|
axis: 'x',
|
|
containment: 'parent',
|
|
distance: 10,
|
|
opacity: 0.8,
|
|
});
|
|
|
|
jQuery('#mmaker_newtablefield_blockno').val(blockno);
|
|
jQuery('#mmaker_newtablefield_editfieldno').val(editfieldno);
|
|
|
|
if (fieldinfo != '') {
|
|
fieldinfo = JSON.parse(fieldinfo);
|
|
TableFieldConfig.setValues(fieldinfo);
|
|
//crmv@145432 length and decimals are readonly in editview
|
|
if (jQuery('[name="newtablefieldprop_val_length"]').length > 0) {
|
|
jQuery('#selectedcolumns [name="newtablefieldprop_val_length"]').prop('readonly', true);
|
|
jQuery('#selectedcolumns [name="newtablefieldprop_val_length"]').addClass('dvtCellInfoOff');
|
|
jQuery('#selectedcolumns [name="newtablefieldprop_val_decimals"]').prop('readonly', true);
|
|
jQuery('#selectedcolumns [name="newtablefieldprop_val_decimals"]').addClass('dvtCellInfoOff');
|
|
}
|
|
//crmv@145432e
|
|
}
|
|
},
|
|
cancelConfig: function() {
|
|
var me = this;
|
|
me.closeConfig();
|
|
},
|
|
closeConfig: function() {
|
|
closePopup();
|
|
},
|
|
validateConfig: function() {
|
|
return TableFieldConfig.validateConfig();
|
|
},
|
|
saveConfig: function() {
|
|
var me = this,
|
|
cont = jQuery('#selectedcolumns'),
|
|
cols = cont.find('.selectedField');
|
|
|
|
if (!me.validateConfig()) return false;
|
|
|
|
var fieldno = jQuery('#mmaker_newtablefield_fieldno').val();
|
|
var editno = jQuery('#mmaker_newtablefield_editfieldno').val();
|
|
var blockno = jQuery('#mmaker_newtablefield_blockno').val();
|
|
var props = {
|
|
label: jQuery('#newtablefieldprop_val_label').val(),
|
|
columns: [],
|
|
// crmv@190916
|
|
readonly: jQuery('#newtablefieldprop_val_readonly').val(),
|
|
mandatory: (jQuery('#newtablefieldprop_val_mandatory:checked').length > 0)?true:false,
|
|
// crmv@190916e
|
|
};
|
|
|
|
cols.each(function(idx, el) {
|
|
var fprops = ModuleMakerFields.checkNewTableFieldProps('newtablefield', idx);
|
|
if (!fprops) {
|
|
props = false;
|
|
return false;
|
|
}
|
|
props.columns.push(fprops);
|
|
});
|
|
if (!props) return false;
|
|
|
|
props.columns = JSON.stringify(props.columns);
|
|
|
|
jQuery.fancybox.showLoading();
|
|
me.ajaxCall(editno ? 'editfield' : 'addfield', {
|
|
blockno: blockno,
|
|
addfieldno: fieldno,
|
|
editfieldno: editno,
|
|
properties: JSON.stringify(props),
|
|
}, function(result){
|
|
if(result == 'DUPLICATE'){
|
|
jQuery.fancybox.hideLoading();
|
|
alert(alert_arr.LABEL_ALREADY_EXISTS);
|
|
return false;
|
|
}else if(result == 'LENGTH_ERROR'){
|
|
jQuery.fancybox.hideLoading();
|
|
alert(alert_arr.LENGTH_OUT_OF_RANGE);
|
|
return false;
|
|
}else{
|
|
parent.jQuery("#cfList").html(result);
|
|
parent.LayoutEditor.ajaxCallVersion();
|
|
jQuery.fancybox.hideLoading();
|
|
}
|
|
me.closeConfig();
|
|
}, {
|
|
includeForm: true,
|
|
});
|
|
},
|
|
deleteConfig: function() {
|
|
var me = this;
|
|
var blockno = jQuery('#mmaker_newtablefield_blockno').val();
|
|
var editno = jQuery('#mmaker_newtablefield_editfieldno').val();
|
|
|
|
vteconfirm(alert_arr.SURE_TO_DELETE, function(yes) {
|
|
if (yes) {
|
|
jQuery.fancybox.showLoading();
|
|
me.ajaxCall('deletefield', {
|
|
blockno: blockno,
|
|
editfieldno: editno,
|
|
}, function(result){
|
|
jQuery.fancybox.hideLoading();
|
|
parent.jQuery("#cfList").html(result);
|
|
parent.LayoutEditor.ajaxCallVersion();
|
|
me.closeConfig();
|
|
}, {
|
|
includeForm: true,
|
|
});
|
|
}
|
|
});
|
|
},
|
|
|
|
busy: false,
|
|
isBusy: function() {
|
|
return this.busy;
|
|
},
|
|
showBusy: function() {
|
|
var me = this;
|
|
me.busy = true;
|
|
},
|
|
hideBusy: function() {
|
|
var me = this;
|
|
me.busy = false;
|
|
},
|
|
ajaxCall: function(action, params, callback, options) {
|
|
var me = this;
|
|
|
|
// return if busy
|
|
if (me.isBusy()) return;
|
|
|
|
options = options || {};
|
|
params = params || {};
|
|
var url = "index.php?module=Settings&action=SettingsAjax&file=LayoutTableFieldAjax&ajax=1&subaction="+action;
|
|
|
|
if (options.includeForm) {
|
|
var form = jQuery('#module_maker_form').serialize();
|
|
params = jQuery.param(params) + '&' + form;
|
|
}
|
|
|
|
me.showBusy();
|
|
jQuery.ajax({
|
|
url: url,
|
|
type: 'POST',
|
|
async: true,
|
|
data: params,
|
|
success: function(data) {
|
|
me.hideBusy();
|
|
/*jQuery('#mmaker_div_allblocks').hide().html('');
|
|
jQuery('#mmaker_div_allblocks').html(data).show();*/
|
|
/*
|
|
if (options.reloadList) {
|
|
jQuery('#mmaker_div_relations').hide().html('');
|
|
jQuery('#mmaker_div_relations').html(data).show();
|
|
}*/
|
|
if (typeof callback == 'function') callback(data);
|
|
},
|
|
error: function() {
|
|
if (typeof callback == 'function') callback();
|
|
}
|
|
});
|
|
|
|
},
|
|
}
|
|
//crmv@106857e
|