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

📄 meetme.html

📁 asterisk 的图形管理界面
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!--
 * Asterisk-GUI	-	an Asterisk configuration interface
 *
 * Create/Manage Conference Bridges
 *
 * Copyright (C) 2006-2007, Digium, Inc.
 *
 * Mark Spencer <markster@digium.com>
 * Pari Nannapaneni <pari@digium.com>
 *
 * See http://www.asterisk.org for more information about
 * the Asterisk project. Please do not directly contact
 * any of the maintainers of this project for assistance;
 * the project provides a web site, mailing lists and IRC
 * channels for your use.
 *
 * This program is free software, distributed under the terms of
 * the GNU General Public License Version 2. See the LICENSE file
 * at the top of the source tree.
 *
-->
<script src="scripts/prototype.js"></script>
<script src="scripts/rico.js"></script>
<script src="scripts/astman.js"></script>
<script src="scripts/tooltip.js"></script>
<link href="stylesheets/rico.css" media="all" rel="Stylesheet" type="text/css" />
<link href="stylesheets/schwing.css" media="all" rel="Stylesheet" type="text/css" />
<script>
var origwidth;
var widgets = {};
var adstatus, meetmes, localextenlength, temp_selectedexten;
var callbacks = new Object;
var usercallbacks = new Object;
var meetmecallbacks = { };
var fieldnames = ['announce', 'cancel', 'delete', 'menu', 'music', 'name', 'newitem', 'quiet', 'record', 'room', 'save', 'setmarked', 'waitmarked'];


function changed_extension() {
	var app;
	var _ext = _$('extensions') ;
	tmp = _ext.value.split(']');
	app = findapp(_ext.stored_config.catbyname[tmp[0]].subfields[tmp[1]]['app']);
	_$('name').value = _ext.stored_config.catbyname[tmp[0]].subfields[tmp[1]]['name'];
	_$('features').value = app.name.toLowerCase();
};

function enable_disable_fields(k){
	_$('pin').disabled = (k)? false : true;
	_$('pinadmin').disabled =(k)? false : true;
}

callbacks.fields2val = function(box, subfields) {
	var flags = "";
	var xargs="";
	var room = '${EXTEN}';
	if (subfields['music'] != 'no')
		flags += "M";
	if (subfields['menu'] != 'no')
		flags += 's';
	if (subfields['announce'] != 'no')
		flags += 'I';
	if (subfields['record'] != 'no')
		flags += 'r';
	if (subfields['waitmarked'] != 'no')
		flags += 'w';
	if (subfields['setmarked'] != 'no')
		flags += 'A';
	if (subfields['quiet'] != 'no')
		flags += 'q';
	if (subfields['room'].length > 0)
		room = subfields['room'];
	return _$('name').value + ",1,MeetMe(" + room + "|" + flags + ")";
}

callbacks.format = function(t, x) {
	var ret;
	var tmp;
	var options = new Array;
	var tmp2, y;
	if ((t.name != specialcontext))
		return null;
	ret = format_extension(_$('extensions'), t, x);
	if (ret) {
		tmp = t.subfields[x].args.split('|');
		if (tmp[1]) {
			tmp2 = tmp[1].split('');
			for (y=0;y<tmp2.length;y++){ options[tmp2[y]] = 'yes'; }
		}
		t.subfields[x].room =( tmp[0] == '${EXTEN}' )? '' : tmp[0] ;
		t.subfields[x].music = options['M'];
		t.subfields[x].menu = options['s'];
		t.subfields[x].announce = options['I'];
		t.subfields[x].record = options['r'];
		t.subfields[x].waitmarked = options['w'];
		t.subfields[x].setmarked = options['A'];
		t.subfields[x].quiet = options['q'];
	}
	return ret;
}

callbacks.loaded = function() {
	var _ext = _$('extensions');
	merge_extensions( _ext , _$('hiddenusers'));
	for (x=0;x< _ext.options.length;x++) {
		var tmp;
		tmp = _ext.options[x].value.split(']');
		if (tmp.length > 1) {
			if ( _ext.stored_config.catbyname[tmp[0]].subfields[tmp[1]]['app'].toLowerCase() != "meetme") {
				//$('extensions').options[x].disabled = true;
				_ext.options[x].style.color = "#ABABAB";
				_ext.options[x].value= "reserved";
			}
		}
	}
	_ext.contentEditable = 'true';
	_ext.disabled = 0;
	if( navigator.userAgent.indexOf("MSIE") != -1){
		_$('advancedw').style.height=130;
		togglefeatures = function(){ } ;
	}else{
		_ext.style.height = "415px";
	}
	parent.loadscreen(this);
}

callbacks.sortfunc = function(a,b) {
	return (a.name < b.name) ? -1 : 1;
}

callbacks.newsubitem = function() {
	var tmp = new Object;
	var x;
	var gen = _$('hiddenusers').stored_config.catbyname['general'];
	var _ext = $('extensions') ;
	if (gen){
		x = gen.fieldbyname['userbase'];
		for( var f=0; f < _ext.options.length ; f++ ){
			if( x < _ext.options[f].innerHTML.split(' -- ')[0] ){ break; }
			x++;
		}
	}else{
		try{ 
			x = ( parseInt( _ext.options[ _ext.options.length - 1 ].innerHTML.split(' -- ')[0] ) ) + 1; 
		}catch(err){
			x = 6000; // a default value if one is not defined in users.conf's general context
		}
	}
	_$('pin').value = '';
	_$('pinadmin').value = '';
	enable_disable_fields(1);
	tmp['name'] = x ;
	tmp['music'] = 'yes';
	tmp['menu'] = 'no';
	tmp['announce'] = 'yes';
	tmp['room'] = '';
	tmp['>'] = true;
	return new Array(specialcontext, 'exten', tmp);
}

callbacks.postselect = function(box, val) {
	parent._$('tooltip').innerHTML = parent.tooltip_default ; 
	var _pv = _$('pin');
	var _pa = _$('pinadmin');

	_pv.value = "";
	_pa.value = "" ;

	if( box.selectedIndex == -1){
		enable_disable_fields(0);
		return true;
	}
	if(val == "reserved" ){
		if( box.options[box.selectedIndex].text.toLowerCase().match("-- call queue")     ){
			//parent.$('tooltip').innerHTML = " <font size=\"-2\" color=\"#FF0000\">Click on \'Call Queues\' panel to edit call queues </font>";
			box.selectedIndex = -1;
			enable_disable_fields(0);
			gui_alert(" You can not edit the selected entry from here.\n Please click on the \'Call Queues\' panel to edit the selected entry");
			return true;
		}
		if( box.options[box.selectedIndex].text.toLowerCase().match("-- check voicemail")     ){
			//parent.$('tooltip').innerHTML = " <font size=\"-2\" color=\"#FF0000\">Click on \'Voicemail\' panel to edit Voicemail Preferences</font>";
			box.selectedIndex = -1;
			enable_disable_fields(0);
			gui_alert(" You can not edit the selected entry from here.\n Please click on the \'Voicemail\' panel to edit the selected entry");
			return true;
		}
		if( box.options[box.selectedIndex].text.toLowerCase().match("-- voice menu")     ){
			box.selectedIndex = -1;
			//parent.$('tooltip').innerHTML = " <font size=\"-2\" color=\"#FF0000\">Click on \'Voicemail\' panel to edit Voicemail Preferences</font>";
			enable_disable_fields(0);
			gui_alert(" You can not edit the selected entry from here.\n Please click on the \'Voice Menus\' panel to edit the selected entry");
			return true;
		}
		box.selectedIndex = -1;
		enable_disable_fields(0);
		gui_alert(" You can not edit the selected entry from here.\n Please click on the \'Users\' panel to edit the selected entry");
		return true;
	}
	temp_selectedexten = _$('name').value;
	enable_disable_fields(1);
	var f = $('meetme_conf') ;
	for ( var r=0; r < f.stored_config.catbyname.rooms.fields.length; r++ ) {
		var k = f.stored_config.catbyname.rooms.fields[r].split(",");
		if(k[0] == temp_selectedexten ){
			_pv.value = k[1] ;
			_pa.value = k[2] ;
			break;
		}
	}

}


callbacks.newcategory = function() {
	var tmp = null;
	var x;
	var _ext = _$('extensions') ;

	if ( _ext.stored_config.catbyname['general'])
		tmp = objcopy( _ext.stored_config.catbyname['general'] );
	if (tmp) {
		x = tmp.fieldbyname['userbase'];
		if (x) {
			while( _ext.stored_config.catbyname[x]) x++;
			tmp.name = x;
		}
	}
	return tmp;
}


callbacks.beforeSaving = function(){
	var _ext = _$('extensions') ;
	var _name = _$('name');

	if ( _ext.options[_ext.selectedIndex].text == "New Entry" ) {
		temp_selectedexten = _name.value ;
	}

	// check whether the length of extension is valid
	if(  !_name.value.length ) { gui_alert("Please enter an extension !"); _name.focus(); return false; }

	if(  localextenlength !=0 && (localextenlength !=  _name.value.length) ){
		gui_alert("Sorry, An Extension must be  "+ localextenlength  + " digits !");
		_name.focus();
		return false;
	}
	if (!check_patternonfields( ['name', 'pin' , 'pinadmin', 'room'] ) ){
		return false;
	}

	if(temp_selectedexten != _name.value ){
		for(var k=0; k < _ext.length; k++ ){
			var tmp = _ext.options[k].innerHTML.split(' -- '); 
			if( tmp[0] ==  _name.value   ){
				gui_alert("Sorry, an entry named " + _name.value + " already exists!");

⌨️ 快捷键说明

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