modulebuilder.js

来自「SugarCRM5.1 开源PHP客户关系管理系统」· JavaScript 代码 · 共 867 行 · 第 1/2 页

JS
867
字号
		},		submitForm: function(formname, successCall){			if (Ext.Ajax.isLoading()) {				ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_TIME_DEPENDENT'));				return;			}			ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_LOADING'));			if (typeof(successCall) == 'undefined') {				successCall = ModuleBuilder.updateContent;			}			else {				ModuleBuilder.callLock = true;			}			Ext.Ajax.request({				params: Ext.Ajax.serializeForm(formname),				success: successCall,				failure: ModuleBuilder.failed			});		},		setMode: function(reqMode){			ModuleBuilder.mode = reqMode;		},		main: function(type){			document.location.href = 'index.php?module=ModuleBuilder&action=index&type=' + type;		},		failed: function(o){			ajaxStatus.flashStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_FAILED_DATA'), 2000);		},		//Wizard Functions		buttonDown: function(button, name, list){			if (typeof(name) != 'undefined') {				for (i in ModuleBuilder.buttons[list]) {					ModuleBuilder.buttons[list][i].className = 'wizardButton';				}				ModuleBuilder.buttonSelect(name, list);			}			button.className = 'wizardButtonDown';		},		buttonOver: function(button){			button.className = 'buttonOn';		},		buttonOut: function(button, name, list){			if (typeof(name) != 'undefined') {				if (ModuleBuilder.buttonGetSelected(list) != name) {					button.className = 'wizardButton'				}			}			else {				button.className = 'wizardButton'			}		},		buttonAdd: function(id, name, list){			if (typeof(ModuleBuilder.buttons[list]) == 'undefined') {				ModuleBuilder.buttons[list] = {};			}			ModuleBuilder.buttons[list][name] = document.getElementById(id);		},		buttonGetSelected: function(list){			if (typeof(ModuleBuilder.selected[list]) == 'undefined') {				return false;			}			return ModuleBuilder.selected[list];		},		buttonSelect: function(name, list){			ModuleBuilder.selected[list] = name;		},		buttonToForm: function(form, field, list){			var theField = eval('document.' + form + '.' + field);			theField.value = ModuleBuilder.buttonGetSelected(list);		},		getTitle: function(title, breadCrumb){			return "<h2>" + title + "</h2><br>" + breadCrumb;		},		closeAllTabs: function() {			for (var i = ModuleBuilder.tabPanel.items.getCount() - 1; i > -1; i--) {				var tab = ModuleBuilder.tabPanel.items.get(i);				if (tab.closable) {					ModuleBuilder.tabPanel.remove(tab);				}			}		},		//Help Functions		helpRegister: function(name){			var formname = 'document.' + name;			var form = eval(formname);			var i = 0;			for (i = 0; i < form.elements.length; i++) {				if (typeof(form.elements[i].type) != 'undefined' && typeof(form.elements[i].name) != 'undefined' && form.elements[i].type != 'hidden') {					form.elements[i].onmouseover = function(){						ModuleBuilder.helpToggle(this.name)					};					form.elements[i].onmouseout = function(){						ModuleBuilder.helpToggle('default')					};				}			}		},		helpUnregisterByID: function (id){			var elm = document.getElementById(id);			elm.onmouseover = function() {};			elm.onmouseout = function() {};			return;		},		helpRegisterByID: function(name, tag){			var parent = document.getElementById(name);			var children = parent.getElementsByTagName(tag);			for (var i = 0; i < children.length; i++) {				if (children[i].id != 'undefined') {					children[i].onmouseover = function(){						ModuleBuilder.helpToggle(this.id)					};					//children[i].onmouseover = function(){alert(this.id)};					children[i].onmouseout = function(){						ModuleBuilder.helpToggle('default')					};				}			}		},		helpSetup: function(group, def, panel){			if (!ModuleBuilder.panelHelp) ModuleBuilder.panelHelp = [];			//console.log("helpsetup Called with " + group + " : " + def + " : " + panel);			if (!panel) {				panel = 'center';			}			var helpLang = SUGAR.language.get('ModuleBuilder', 'help');			if (group && def) {				ModuleBuilder.panelHelp[panel] = {lang: helpLang[group],def: def};				ModuleBuilder.helpLang = helpLang[group];				ModuleBuilder.helpDefault = def;			} else if (ModuleBuilder.panelHelp[panel]){				ModuleBuilder.helpLang = ModuleBuilder.panelHelp[panel].lang;				ModuleBuilder.helpDefault = ModuleBuilder.panelHelp[panel].def;			}			ModuleBuilder.helpToggle('default');		},		helpSetupAssistant: function(group, subgroup){			helpLang = SUGAR.language.get('ModuleBuilder', 'assistantHelp');		},		helpToggle: function(name){			if (name == 'default')				name = ModuleBuilder.helpDefault;			if (ModuleBuilder.helpLang != null && typeof(ModuleBuilder.helpLang[name]) != 'undefined') {				document.getElementById('mbhelp').innerHTML = ModuleBuilder.helpLang[name];			}		},		handleSave: function(form, callBack){			if (check_form(form)) {				ModuleBuilder.state.isDirty=false;				ModuleBuilder.submitForm(form, callBack);			}		},		//Tree Functions		handleTreeClick: function(node, event) {			ModuleBuilder.getContent(node.attributes.action);		},		treeSubscribe:function(tree){			debugger;			tree.subscribe("labelClick", ModuleBuilder.treeLabelClick);		},		treeRefresh:function(type){			ModuleBuilder.getContent('module=ModuleBuilder&action=ViewTree&tree=' + type);		},		//MB Specific		addModule: function(MBpackage){			ModuleBuilder.getContent('module=ModuleBuilder&action=module&view_package=' + MBpackage);		},		viewModule: function(MBpackage, module){			ModuleBuilder.getContent('module=ModuleBuilder&action=module&view_package=' + MBpackage + '&view_module=' + module);		},		packageDelete: function(MBpackage){			ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_DELETING'));			if (confirm(SUGAR.language.get('ModuleBuilder', 'LBL_JS_REMOVE_PACKAGE'))) {				ModuleBuilder.getContent('module=ModuleBuilder&action=DeletePackage&package=' + MBpackage);				ModuleBuilder.tree.root.removeChild(ModuleBuilder.tree.getNodeById('package_tree/' + MBpackage));			}		},		packagePublish: function(form){			if (check_form(form)) {				ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_BUILDPROGRESS'));				ModuleBuilder.submitForm(form, ModuleBuilder.packageBuild);			}		},		packageBuild: function(o){			//make sure no user changes were made			document.CreatePackage.action.value = 'BuildPackage';			document.CreatePackage.submit();			ModuleBuilder.callLock = false;		},		packageDeploy: function(form){			if (check_form(form)) {				ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_DEPLOYPROGRESS'));				ModuleBuilder.submitForm(form, ModuleBuilder.packageInstall);			}		},		packageInstall: function(o){			//make sure no user changes were made			document.CreatePackage.action.value = 'displaydeploy';			ModuleBuilder.callLock = false;			ModuleBuilder.submitForm('CreatePackage');		},		beginDeploy: function(p){			Ext.Ajax.request({				params: 'module=ModuleBuilder&action=DeployPackage&package=' + p,				method: 'GET',				success: ModuleBuilder.deployComplete,				failure: ModuleBuilder.failed			});		},		deployComplete: function(data){			ModuleBuilder.getContent('module=ModuleBuilder&action=package&package=');			Ext.Ajax.request({				params: 'module=Administration&action=RebuildRelationship&silent=true',				method: 'GET',				failure: ModuleBuilder.failed			});		},		packageExport: function(form){			if (check_form(form)) {				ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_BUILDPROGRESS'));				ModuleBuilder.submitForm(form, ModuleBuilder.packageExportProject);			}		},		packageExportProject: function(o){			//make sure no user changes were made			document.CreatePackage.action.value = 'ExportPackage';			document.CreatePackage.submit();			ModuleBuilder.callLock = false;		},		moduleDelete: function(MBpackage, module){			ajaxStatus.showStatus(SUGAR.language.get('ModuleBuilder', 'LBL_AJAX_DELETING'));			if (confirm(SUGAR.language.get('ModuleBuilder', 'LBL_JS_REMOVE_PACKAGE'))) {				ModuleBuilder.getContent('module=ModuleBuilder&action=DeleteModule&package=' + MBpackage + '&view_module=' + module);				ModuleBuilder.tree.root.removeChild(ModuleBuilder.tree.getNodeById(MBpackage + '/' + module));			}		},		moduleViewFields: function(o){			ModuleBuilder.callLock = false;			ModuleBuilder.getContent('module=ModuleBuilder&action=modulefields&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module);		},		moduleLoadField: function(name, type){			if (typeof(type) == 'undefined')				type = 0;			if (typeof(formsWithFieldLogic) != 'undefined')				formsWithFieldLogic = 'undefined';			ModuleBuilder.getContent('module=ModuleBuilder&action=modulefield&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module + '&field=' + name + '&type=' + type);		},		moduleLoadLabels: function(type){			if (typeof(type) == 'undefined')				type = 0;			else				if (type == "studio") {					ModuleBuilder.getContent('module=ModuleBuilder&action=editLabels&view_module=' + ModuleBuilder.module);				}				else					if (type == "mb") {						ModuleBuilder.getContent('module=ModuleBuilder&action=modulelabels&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module + '&type=' + type);					}		},		moduleViewRelationships: function(o){			ModuleBuilder.callLock = false;			ModuleBuilder.getContent('module=ModuleBuilder&action=relationships&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module);		},		moduleLoadRelationship2: function(name) {			var panel = Ext.getCmp('relEditor');			if (!panel) {				panel = new Ext.Panel({					id:'relEditor',					title: 'Edit Relationship',					autoScroll: true,					autoHeight: true,					closable: true				});				ModuleBuilder.tabPanel.add(panel);			}			if (name == "") {				name = Ext.getDom('rel_name_id') ? Ext.getDom('rel_name_id').value : "";			}			panel.show();			var rtField = Ext.getDom('relationship_type_field');			var relType = rtField ? rtField.options[rtField.selectedIndex].value: "";			panel.load({				url: 'index.php',				params: {					module: 'ModuleBuilder',					action: 'relationship',					view_package: ModuleBuilder.MBpackage,					view_module: ModuleBuilder.module,					relationship_name: name,					relationship_type: relType,					lhs_module: Ext.getDom('lhs_mod_field') ? Ext.getDom('lhs_mod_field').value : "",					rhs_module: Ext.getDom('rhs_mod_field') ? Ext.getDom('rhs_mod_field').value : "",					json: false				},				scripts: true			});		},		moduleDropDown: function(name, field){			ModuleBuilder.getContent('module=ModuleBuilder&action=dropdown&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module + '&dropdown_name=' + name + '&field=' + field);		},		moduleViewLayouts: function(o){			ModuleBuilder.callLock = false;			ModuleBuilder.getContent('module=ModuleBuilder&MB=1&action=wizard&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module);		},		autoSetLayout: function(){			var mbEl = ModuleBuilder.mainPanel.getEl();			var newHeight = Ext.lib.Dom.getViewHeight() - mbEl.getY() - mbEl.parent().getPadding('tb') - 10;			ModuleBuilder.mainPanel.setHeight(newHeight);		},		refreshGlobalDropDown: function(o){			// just clear the callLock; the convention is that this is done in a handler rather than in updateContent			ModuleBuilder.callLock = false;			ModuleBuilder.updateContent(o);		},		refreshDropDown: function(){			ModuleBuilder.callLock = false;			document.popup_form.action.value = 'RefreshField';			document.popup_form.new_dropdown.value = ModuleBuilder.refreshDD_name;			SimpleList.refreshDD_name = '';			ModuleBuilder.submitForm("popup_form");		},		dropdownChanged: function(value){			var select = document.getElementById('default').options;			while(select.length > 0) {				select[0] = null;			}			Ext.Ajax.request({				params: 'module=ModuleBuilder&action=get_app_list_string&key=' + value +				'&view_package=' + ModuleBuilder.MBpackage + '&view_module=' + ModuleBuilder.module,				method: 'GET',				success: ModuleBuilder.dropdownChangedCallback,				failure: ModuleBuilder.failed			});		},		dropdownChangedCallback : function(o) {			var ajaxResponse = Ext.util.JSON.decode((o.responseText));			var select = document.getElementById('default').options;			var count = 0;			for (var key in ajaxResponse) {				select[count] = new Option(ajaxResponse[key], key);				count++;			}		},		showPopup : function(title, params) {		}	};	ModuleBuilder.buttons = {};	ModuleBuilder.selected = {};	ModuleBuilder.callLock = false;}/*Assistant = {	processUserPref: function(value){		if (value == 'ENABLED' || value == "na") {			Assistant.mbAssistant.show();			Assistant.mbAssistant.visible = true;			Assistant.showOffFooter.hide();			Assistant.showOnFooter.show();		}		else if (value == 'DISABLED') {			Assistant.mbAssistant.hide();			Assistant.mbAssistant.visible = false;			Assistant.showOnFooter.hide();			Assistant.showOffFooter.show();		}	},	showOffFooter: new Ext.Button({		text: SUGAR.language.get('ModuleBuilder', 'LBL_AS_SHOW'),		handler : function() {			Assistant.submitForm('show');		}	}),	showOnFooter: new Ext.Button({		text: SUGAR.language.get('ModuleBuilder', 'LBL_AS_IGNORE'),		handler : function() {			Assistant.submitForm('ignore');		}	}),	creatembAssistant: function(){		var mbAssistant = new Ext.Window({			id: 'panel2',			title: SUGAR.language.get('ModuleBuilder', 'LBL_AS_SAYS'),			width: 400,			visible: false,			renderTo: document.body,			closeAction: 'hide',			animCollapse: false,			bbar: [Assistant.showOffFooter, Assistant.showOnFooter]		});		mbAssistant.setBody = function(html) {			mbAssistant.body.dom.innerHTML = html;			mbAssistant.setActive(true);		}		mbAssistant.on('beforeclose', function(panel) {			panel.hide(Ext.get('showassist'));			return false;		});		mbAssistant.render();		return mbAssistant;	},	submitForm: function(pref){		if (Assistant.mbAssistant) {			Assistant.processUserPref((pref == 'show') ? 'ENABLED' : 'DISABLED');		}		var params = 'pref_value=' + pref + '&action=saveAssistantPref&module=ModuleBuilder';		if (!pref) {			var params = 'pref_value=' + document.getElementById('_assistantPref_').value +			'&action=saveAssistantPref&module=ModuleBuilder&to_pdf=1';		}		Ext.Ajax.request({			params: params,			sucess: Assistant.ajaxSuccess,			failure: ModuleBuilder.failed		});	},	ajaxSuccess: function(o){		eval(o.responseText);	}}*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?