⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4.html

📁 asterisk 的图形管理界面
💻 HTML
📖 第 1 页 / 共 3 页
字号:
		dids_array.push(_$('name').value );
	}else{
		old_trunkname = _$('devices').value ;
		if( _$('devices').value != _$('name').value){ // if the trunk name is changed , change the name in dids_array
			for( var i=0 ; i < dids_array.length; i ++	){
				if( dids_array[i] == _$('devices').value) { dids_array[i] = _$('name').value;}
			}
		}	
	}
}

callbacks.savechanges = function() {
	if(isnewtrunk == 1){ //New Trunk created , add [DID_trunk_x] in extensions.conf
		add_didcontext( _$('name').value );
	}else{
		if(old_trunkname != _$('name').value ){	 // rename DID if needed
			update_didcontext(old_trunkname, _$('name').value );
		}
	}
	saveSPdetails();
	var uri;
	var newvalue;
	var tmp = _$('devices').value.split('_');
	var oldvalue = _$('hiddenglobals').stored_config.catbyname['globals'].fieldbyname[_$('devices').value];
	if (_$('trunkstylevoip').checked || _$('trunkstylecustomvoip').checked) {
		if (_$('devices').stored_config.catbyname[_$('devices').value].fieldbyname['hasiax'] == 'yes')
			newvalue = "IAX2/" + _$('devices').value;
		else
			newvalue = "SIP/" + _$('devices').value;
	} else {
		newvalue = "Zap/g"+tmp[1];
	}
	if (newvalue != oldvalue) {
		if(old_trunkname == _$('name').value ){	
			uri = build_action('update', 0, 'globals', _$('devices').value, newvalue);
			apply_uri(_$('hiddenglobals'), uri);
			_$('hiddenglobals').stored_config.catbyname['globals'].fieldbyname[_$('devices').value] = newvalue;
			return true;
		}else{
			uri = build_action('delete', 0, 'globals', old_trunkname, "","" );
			uri += build_action('update', 1, 'globals', _$('name').value, newvalue);
			apply_uri(_$('hiddenglobals'), uri);
			_$('hiddenglobals').stored_config.catbyname['globals'].fieldbyname[_$('name').value] = newvalue;
			return true;
		}
	}
	return false;
}

callbacks.checkparams = function(box) {
	var needcomma = 0;
	var provider;
	var count = 0;
	_$('hasexten').value = 'no';
	_$('context').value =  asterisk_guiTDPrefix + _$('name').value  ;
	if (_$('trunkstylevoip').checked) {
		provider = _$('provider').stored_config.catbyname[_$('provider').value];
		_$('trunkname').value = _$('provider').options[_$('provider').selectedIndex].innerHTML + " - " + _$('username').value;
		_$('hassip').value = provider.fieldbyname['hassip'];
		_$('hasiax').value = provider.fieldbyname['hasiax'];
		_$('registeriax').value = provider.fieldbyname['registeriax'];
		_$('registersip').value = provider.fieldbyname['registersip'];
		_$('host').value = provider.fieldbyname['host'];
		if (provider.fieldbyname['dialformat'])
			_$('dialformat').value = provider.fieldbyname['dialformat'];
		else
			_$('dialformat').value = '${EXTEN:1}';
		_$('callerid').value = '';

		if (provider.fieldbyname['insecure'])
			_$('insecure').value = provider.fieldbyname['insecure'];
		else
			_$('insecure').value = '';
		if (provider.fieldbyname['port'])
			_$('port').value = provider.fieldbyname['port'];
		else
			_$('port').value = '';
		//if (provider.fieldbyname['context'])
		//	$('context').value = provider.fieldbyname['context'];
		//else
		//	$('context').value = 'default';
		if (provider.fieldbyname['fromuser'])
			_$('fromuser').value = provider.fieldbyname['fromuser'];
		else
			_$('fromuser').value = '';
			
		if (_$('fromuser').value == '<DID>') {
			_$('fromuser').value = _$('username').value;
		}

		if (provider.fieldbyname['fromdomain'])
			_$('fromdomain').value = provider.fieldbyname['fromdomain'];
		else
			_$('fromdomain').value = '';

		for (var x=0;x<_$('zapchan').options.length;x++)
			_$('zapchan').options[x].selected = false;
		_$('zapchan').value = '';
		_$('group').value = '';
	} else if (_$('trunkstyleanalog').checked) {
		// Analog
		_$('provider').selectedIndex  = -1;
		count = 0;
		_$('trunkname').value = "";
		for (var x=0;x<_$('zapchan').options.length;x++) {
			if (_$('zapchan').options[x].selected) {
				if (needcomma)
					_$('trunkname').value += ","
				needcomma = 1;
				_$('trunkname').value += _$('zapchan').options[x].value;
				count++;
			}
		}
		if (count > 1)
			_$('trunkname').value = "Ports " + _$('trunkname').value;
		else
			_$('trunkname').value = "Port " + _$('trunkname').value;
		_$('callerid').value = 'asreceived';
		_$('hassip').value = 'no';
		_$('hasiax').value = 'no';
		_$('callerid').value = 'asreceived';
		_$('group').value = _$('name').value.split('_')[1];
	} else if( _$('trunkstylecustomvoip').checked ){
		// Custom VOIP Provider
		_$('trunkname').value = "Custom - " + _$('customvoip_name').value;
		provider = _$('customvoip_name').value;
		_$('provider').selectedIndex  = -1;
		_$('username').value = _$('customvoip_username').value;
		_$('secret').value = _$('customvoip_secret').value;
		if( _$('customvoip_protocol').value == "iax" ){
			_$('hassip').value = "no";
			_$('hasiax').value = "yes";
		}else{
			_$('hassip').value = "yes";
			_$('hasiax').value = "no";				
		}
		if( _$('customvoip_register').checked && _$('customvoip_protocol').value == "iax"){
			_$('registeriax').value = 'yes';
			_$('registersip').value = 'no';
		}
		if( _$('customvoip_register').checked && _$('customvoip_protocol').value == "sip"){
			_$('registeriax').value = 'no';
			_$('registersip').value = 'yes';
		}
		if( !_$('customvoip_register').checked ){
			_$('registeriax').value = 'no';
			_$('registersip').value = 'no';
		}
		_$('host').value = $('customvoip_host').value ;
		_$('dialformat').value = '${EXTEN:1}';
		_$('callerid').value = '';
		_$('insecure').value = '';
		_$('port').value = '';
		//$('context').value = 'default';
		_$('fromuser').value = '';
		_$('fromdomain').value = '';
		for (var x=0;x<_$('zapchan').options.length;x++)
			_$('zapchan').options[x].selected = false;
		_$('zapchan').value = '';
		_$('group').value = '';
	}
	return false;
}

callbacks.newcategory = function() {
	var tmp = null;
	var x;
	if (_$('devices').stored_config.catbyname['general'])
		tmp = objcopy(_$('devices').stored_config.catbyname['general']);
	if (tmp) {
		x = 1;
		while(_$('devices').stored_config.catbyname['trunk_' + x]) x++;
		tmp.name = 'trunk_' + x;
	}
	tmp.fieldbyname['hasexten'] = 'no';
	tmp.fieldbyname['context'] = asterisk_guiTDPrefix + tmp.name; 
	_$('customvoip_name').value = "";
	_$('customvoip_username').value = "";
	_$('customvoip_secret').value = "";
	_$('customvoip_protocol').selectedIndex = 0;
	_$('customvoip_host').value ="";
	_$('analog').style.display="none";
	_$('voip').style.display="none";
	_$('customvoip').style.display="none";
	_$('userscontent_title').innerHTML = "Add Service Provider";
	isnewtrunk = 1;
	return tmp;

}
callbacks.identifier = "extension";

phonecallbacks.format = function(t) {
	if (t.fieldbyname['port'] == 'fxs')
		return "Analog Port #" + t.name;
	return null;
}

phonecallbacks.loaded = function() {
	parent.astmanEngine.config2list("providers.conf", _$('provider'), provwidgets, providercallbacks);
}
	

function update_zapchan(){
	_$('save').disabled = false;
	_$('cancel').disabled = false;

	for (k=0;k< _$('zapchan').length ;k++ ){
		var selectedline = "selectedline" + k;
		if( _$(selectedline).checked  ){
			_$('zapchan').options[k].selected = true;
		}else{
			_$('zapchan').options[k].selected = false;
		}
	}
}



function activateanalogvoip() {
	_$('analog').style.display = "none";
	_$('zapchan').style.display = "none";
	_$('zapchan_analoglines').style.display = "none";
	_$('zapchan_analoglines').innerHTML ="";
	_$('customvoip').style.display = "none" ;
	_$('voip').style.display= "none";
	if (_$('trunkstyleanalog').checked) {
		_$('analog').style.display = "";
		_$('zapchan_analoglines').style.display = "";
		if(_$('zapchan').options.length ==0){
			_$('zapchan_analoglines').innerHTML = "No analog line hardware installed on the system";
		}else{
			for (k=0;k< _$('zapchan').length ;k++ ){
				var selectedline = "selectedline" + k;
				if(_$('zapchan').options[k].selected){
					_$('zapchan_analoglines').innerHTML += '<LABEL FOR="' + selectedline + '"><INPUT id="' + selectedline + '" TYPE="CHECKBOX" VALUE="'+ _$('zapchan').options[k].value+ '" checked onclick="update_zapchan()">' + _$('zapchan').options[k].text + '</LABEL><BR>';
				}else{
					_$('zapchan_analoglines').innerHTML += '<LABEL FOR="'+ selectedline+'"><INPUT id="' + selectedline + '" TYPE="CHECKBOX" VALUE="'+ _$('zapchan').options[k].value+ '" onclick="update_zapchan()">' + _$('zapchan').options[k].text + '</LABEL><BR>';
				}
			}
		}
	}else if (_$('trunkstylevoip').checked) {
		_$('voip').style.display = "block";
		_$('voip').style.height =350;
	}else if (_$('trunkstylecustomvoip').checked) {
		_$('customvoip').style.display = "block" ;
	}
}
	
function localajaxinit() {
	_$('devices').contentEditable = 'false';
	_$('zapchan').splitchar=',';
	_$('trunkstyleanalog').altonclick = _$('trunkstyleanalog').onclick;
	_$('trunkstyleanalog').onclick = null;
	_$('trunkstylevoip').altonclick = _$('trunkstylevoip').onclick;
	_$('trunkstylevoip').onclick = null;
	_$('trunkstylecustomvoip').altonclick = _$('trunkstylecustomvoip').onclick;
	_$('trunkstylecustomvoip').onclick = null;
	
	for (var x =0; x< fieldnames.length; x++) {
		widgets[fieldnames[x]] = $(fieldnames[x]);
		widgets[fieldnames[x]].disabled = true;
	}
	for (var x =0; x < provfieldnames.length ; x++) {
		provwidgets[provfieldnames[x]] = $(provfieldnames[x]);
		provwidgets[provfieldnames[x]].disabled = true;
	}
	parent.astmanEngine.config2list("zapscan.conf", _$('zapchan'), new Array(), phonecallbacks);
}


function loadServiceProvidersintotable(){

	for( var i=0; i < _$('serviceproviderstable').rows.length; ){
		 _$('serviceproviderstable').deleteRow(i);
	}

	if(_$('devices').length == "0" ){
		_$('table_one').style.display="none";
		var newRow = _$('serviceproviderstable').insertRow(-1);
		var newCell0 = newRow.insertCell(0);
		newCell0 .align = "center";
		_$('new').style.display= "none";
		newCell0 .innerHTML = "<BR>You do not have any <I>Service Providers</I> defined<BR><BR>  <Input type=button onclick=\"$('new').click()\" value=\"Add Service Provider\"><BR><BR>" ;
		return true;
	}else{
		_$('new').style.display= "";

⌨️ 快捷键说明

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