pari: branch asterisknow r1296 - in /branches/asterisknow: ./ config/ config/...

SVN commits to the Asterisk-GUI project asterisk-gui-commits at lists.digium.com
Thu Aug 2 12:21:21 CDT 2007


Author: pari
Date: Thu Aug  2 12:21:20 2007
New Revision: 1296

URL: http://svn.digium.com/view/asterisk-gui?view=rev&rev=1296
Log:
Merged revisions 489-500,506,508-510,513-518,520-531,533-535,537,539-540,542,544,546,548,550,552,554,556-557,559,562,564-566,569,571,573-577,580-586,589-604,606-611,614-616,618-619,621-622,624-625,633-634,636,638-640,648-650,660-676,678-679,682-684,687-688,695-696,698-702,704-712,714-716,718-719,721-722,724-725,727-746,749-750,752-753,757-767,769-771,774-780,782-783,785-786,788-789,791-792,794-795,797-800,802-803,808-810,812-816,821-825,827-835,837,839-840,842-847,849-850,853-855,862-864,867,869-870,873-878,880,884-886,889-898,900-903,906-909,911,917,939-940,946,948,950,956-960,962-963,967,971-976,984,989,1022-1030,1032,1035-1043,1050-1055,1057-1060,1062-1063,1065-1067,1069-1071,1081-1084,1086-1089,1091-1093,1095-1096,1098-1099,1101-1102,1104-1115,1117-1118,1121-1123,1125-1135,1137-1140,1142-1143,1145-1200,1209,1212-1263,1265,1268-1278,1280-1284,1286-1291 via svnmerge from 
https://origsvn.digium.com/svn/asterisk-gui/trunk

........
  r1273 | pari | 2007-07-30 10:22:38 -0500 (Mon, 30 Jul 2007) | 1 line
  
  Minor typos
........
  r1274 | pari | 2007-07-30 10:24:15 -0500 (Mon, 30 Jul 2007) | 1 line
  
  Fix: the Outbound calling rules page in the setup wizard is different from the one in the gui
........
  r1277 | pari | 2007-07-31 10:53:32 -0500 (Tue, 31 Jul 2007) | 6 lines
  
  Fix: Allow proper handling of 'Operator Extension' in voicemenus
  http://bugs.digium.com/view.php?id=8877
........
  r1278 | pari | 2007-07-31 12:27:18 -0500 (Tue, 31 Jul 2007) | 4 lines
  
  Fix: http://bugs.digium.com/view.php?id=10031
  0010031: backup appear in name order not date order
........
  r1280 | bkruse | 2007-07-31 18:05:36 -0500 (Tue, 31 Jul 2007) | 1 line
  
  Updated todo.txt to reflect commit 1279 (ability to dynamically set what numberplans have access to the parkinglot)
........
  r1283 | pari | 2007-08-01 13:40:12 -0500 (Wed, 01 Aug 2007) | 4 lines
  
  BugFix: http://bugs.digium.com/view.php?id=10140
          Unable to set password during initial login
........
  r1284 | pari | 2007-08-01 14:55:46 -0500 (Wed, 01 Aug 2007) | 8 lines
  
  
  BugFix: http://bugs.digium.com/view.php?id=10173
  
  Set a default value of 'all' to "disallow" and "allow" fields for new users.
........
  r1287 | pari | 2007-08-01 17:35:07 -0500 (Wed, 01 Aug 2007) | 1 line
  
  minor improvements to bryant's CDR stuff :-)
........
  r1288 | pari | 2007-08-02 10:43:37 -0500 (Thu, 02 Aug 2007) | 13 lines
  
  Trying some layout changes to the Voicemenus page.
  
   - Allow more room for listing of the sequence of steps in the voice menu
   - Allow more room for keypress actions
   - Move 'Add new Step' options into a new popup window
  
  
  This should solve problems related to 
  http://bugs.digium.com/view.php?id=10339
........
  r1289 | pari | 2007-08-02 11:44:47 -0500 (Thu, 02 Aug 2007) | 9 lines
  
  BugFix: http://bugs.digium.com/view.php?id=10366
  
  When creating a new call group, the number of seconds to ring the group is 20 by default.
  When you save the call group, the number of seconds is set to "undefined". You can edit 
  the call group and then set the ring seconds, but the issue is with adding the 
  group the first time.
........

Modified:
    branches/asterisknow/   (props changed)
    branches/asterisknow/config/backup.html
    branches/asterisknow/config/cdr.html
    branches/asterisknow/config/cdr_conf.html
    branches/asterisknow/config/cfgbasic.html
    branches/asterisknow/config/home.html
    branches/asterisknow/config/menus.html
    branches/asterisknow/config/ringgroups.html
    branches/asterisknow/config/scripts/astman.js
    branches/asterisknow/config/scripts/tooltip.js
    branches/asterisknow/config/setup/5.html
    branches/asterisknow/config/users.html
    branches/asterisknow/scripts/listfiles

Propchange: branches/asterisknow/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Thu Aug  2 12:21:20 2007
@@ -1,1 +1,1 @@
-/trunk:1-449,489-540,542-557,559,561-577,580-586,588-1267,1279,1285
+/trunk:1-449,489-540,542-557,559,561-577,580-586,588-1291

Modified: branches/asterisknow/config/backup.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/backup.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/backup.html (original)
+++ branches/asterisknow/config/backup.html Thu Aug  2 12:21:20 2007
@@ -28,7 +28,7 @@
 	setWindowTitle("Backup");
 	showdiv_statusmessage();
 
-	parent.astmanEngine.run_tool(asterisk_guiListFiles + " " + asterisk_ConfigBkpPath, callback = function() { 
+	parent.astmanEngine.run_tool(asterisk_guiListFiles + " " + asterisk_ConfigBkpPath + " time", callback = function() { 
 		var opt = { method: 'get', asynchronous: true,
 			onComplete: function(originalRequest){
 				showlist_of_files(originalRequest.responseText);

Modified: branches/asterisknow/config/cdr.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/cdr.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/cdr.html (original)
+++ branches/asterisknow/config/cdr.html Thu Aug  2 12:21:20 2007
@@ -1,3 +1,23 @@
+<!--
+ * Asterisk-GUI	-	an Asterisk configuration interface
+ *
+ * CDR Reader - show cdr entries from Master.csv
+ *
+ * Copyright (C) 2007, Digium, Inc.
+ *
+ * Brett Bryant <bbryant at 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 type="text/javascript" src="scripts/prototype.js"></script>
 <script type="text/javascript" src="scripts/astman.js"></script>
 <link href="stylesheets/schwing.css" media="all" rel="Stylesheet" type="text/css" />
@@ -22,30 +42,26 @@
 	}
 
 
-	#tr0 {
+	.tr0 {
 		background-color: #efaa50;
 		color: white;
 		font-weight: bold;
 	}
 
-	#tr1 {
+	.tr1 {
 		background-color: #6b79a5;
 		color: white;
 		font-weight: bold
 	}
 
-	#tr2 {
+	.tr2 {
 		background-color: white;
 		color: black;
 		text-decoration: underline;
 	}
 
-	#tr0 td, #tr1 td, #tr2 td {
+	.tr0 td, .tr1 td, .tr2 td {
 		font-size: xx-small;
-	}
-
-	#cdr_content {
-		overflow: scroll;
 	}
 
 	.info {
@@ -83,12 +99,15 @@
 	function loadRecords() {
 		var c = viewCount;
 
-		clearContent();
+		var e = _$("cdr_content_container");
+		e.innerHTML = "";
+		var d = document.createElement("TABLE");
+		d.style.overflow = "scroll" ;
 
 		_$("info").innerHTML = "Viewing " + (offset+1) + "-" + (offset+viewCount) + " of " + records.length;
 
 		var tr = document.createElement("tr");
-		tr.id = "tr2";
+		tr.className = "tr2";
 
 		for(var i=0;i<=records[offset].length;i++) {
 			var td = document.createElement("td");
@@ -96,11 +115,11 @@
 			tr.appendChild(td);
 		}
 
-		_$("cdr_content").appendChild(tr);
+		d.appendChild(tr);
 
 		for(var i=0;c--&&isset(records[i+offset]);i++) {
 			var tr = document.createElement("tr");
-			tr.id = "tr"+(i%2);
+			tr.className = "tr"+(i%2);
 			var r = records[i+offset];
 			
 			for(var j=-1;j<r.length;j++) {
@@ -113,16 +132,10 @@
 				tr.appendChild(td);
 			}
 
-			_$("cdr_content").appendChild(tr);
+			d.appendChild(tr);
 		}
-	}
-
-	function clearContent() {
-		while(_$("cdr_content").childNodes.length) {
-			_$("cdr_content").removeChild(
-				_$("cdr_content").childNodes[0]
-			);
-		}
+
+		e.appendChild(d);
 	}
 
 	window.onload = function() {
@@ -133,6 +146,13 @@
 			if (isset(config.enable) && !ast_true(config.enable))
 				this.location.href = "cdr_conf.html?needssetup";
 		});
+
+		var adjust_toScreen = function(){
+			var i = ASTGUI.displayHeight(); 
+			_$('cdr_content_container').style.height = (i -120); 
+		}
+		ASTGUI.events.add( window , 'resize', adjust_toScreen);
+		top._$('mainscreen').width= 798;
 
 		parent.astmanEngine.run_tool("sh " + asterisk_scriptsFolder + "mastercsvexists", function (){
 			new Ajax.Request("/asterisk/static/Master.csv", {
@@ -152,9 +172,13 @@
 			});
 		});
 	}
+
+	window.onunload = function() {
+		top._$('mainscreen').width= 540;
+	}
 //]]>
 </script>
-<body>
+<body  bgcolor="FFFFFF">
   <div id="page_header">
     <span style="margin-left: 4px"><strong>CDR viewer</strong></span>&nbsp;
 	<img src="images/refresh.png" alt=" Refresh " onclick="javascript: this.location.href=this.location.href" />
@@ -174,7 +198,5 @@
     </select>
   </div> 
   <div id="info" class="info"></div><div class="info"> (most recent first) <a href="cdr_conf.html" target="_self">Configure CDRs</a></div>
-  <div style="width: 500px; position: relative; left: 10px; height: 320px; overflow: auto;" id="cdr_content_container">
-    <table id="cdr_content"></table>
-  </div>
+  <div style="width:770 ; margin-left: 10px; overflow: auto;" id="cdr_content_container"></div>
 </body>

Modified: branches/asterisknow/config/cdr_conf.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/cdr_conf.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/cdr_conf.html (original)
+++ branches/asterisknow/config/cdr_conf.html Thu Aug  2 12:21:20 2007
@@ -1,3 +1,23 @@
+<!--
+ * Asterisk-GUI	-	an Asterisk configuration interface
+ *
+ * CDR Configuration
+ *
+ * Copyright (C) 2007, Digium, Inc.
+ *
+ * Brett Bryant <bbryant at 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 type="text/javascript" src="scripts/prototype.js"></script>
 <script type="text/javascript" src="scripts/astman.js"></script>
 <script type="text/javascript" src="scripts/tooltip.js"></script>

Modified: branches/asterisknow/config/cfgbasic.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/cfgbasic.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/cfgbasic.html (original)
+++ branches/asterisknow/config/cfgbasic.html Thu Aug  2 12:21:20 2007
@@ -188,6 +188,7 @@
 
 
 function pingevery(a){
+	window.setTimeout(makeping, 1000);
 	keepPinging = setInterval( makeping, a*250 );
 }
 

Modified: branches/asterisknow/config/home.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/home.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/home.html (original)
+++ branches/asterisknow/config/home.html Thu Aug  2 12:21:20 2007
@@ -64,6 +64,11 @@
 
 function loggedOn() {
 	if ((parent.loggedon == 1) && (localloggedon == 1)){ return; }
+	if(!parent.eventeater.pingstatus){
+		parent.eventeater.pingstatus = true;
+		parent.pingevery(60);
+	}
+
 	if(_$('secret').value=="password"){
 		parent.loggedon = 1;
 		localloggedon = 1;
@@ -78,11 +83,6 @@
 
 	if( parent.asterisk_guitools_inextconf == 0){
 		checkessentials();
-	}
-
-	if(!parent.eventeater.pingstatus){
-		parent.eventeater.pingstatus = true;
-		parent.pingevery(60);
 	}
 
 	parent.setLoggedOn(1);
@@ -193,7 +193,7 @@
 </script>
 <body id="foo" onload="localinit()" topmargin=0  bgcolor="EFEFEF">
 <div class="mainscreenTitleBar">
-	<span style="margin-left: 4px;font-weight:bold">Welcome to the Asterisk Configuration Panel</span>
+	<span style="margin-left: 4px;font-weight:bold">Welcome to the Asterisk&trade; Configuration Panel</span>
 </div>
 <div class="mainscreenContentBox" id="mailboxcontent">
 <table class="mainscreenTable" width="100%">

Modified: branches/asterisknow/config/menus.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/menus.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/menus.html (original)
+++ branches/asterisknow/config/menus.html Thu Aug  2 12:21:20 2007
@@ -23,6 +23,25 @@
 <script src="scripts/astman.js"></script>
 <script src="scripts/tooltip.js"></script>
 <link href="stylesheets/schwing.css" media="all" rel="Stylesheet" type="text/css" />
+<style type="text/css">
+	.page_header {
+		font-size : 12px;
+		padding : 4px 6px 4px 6px;
+		border-style : solid none solid none;
+		border-top-color : #BDC7E7;
+		border-bottom-color : #182052;
+		border-width : 1px 0px 1px 0px;
+		background-color : #ef8700;
+		margin-bottom: 10px;
+		color : #ffffff;
+	}
+
+	.VoiceMenuMainTable{
+		border : 0;
+		width	: 750px; 
+		font-size: 11px;
+	}
+</style>
 <script>
 var widgets = {};
 var adstatus;
@@ -123,6 +142,7 @@
 	if( temp[2].match("Goto") && !temp[2].match("voicemenu-")  ){
 		var tmp = temp[2].split('(');
 		var tmp1 = tmp[1].split('|');
+		if( tmp1[1] == 'o' ){return "Goto 'Operator'";}
 		return "Goto Exten '"+ tmp1[1] + "'";
 	}
 	
@@ -148,6 +168,7 @@
 		var newoption = document.createElement("option"); 
 		newoption.text = extensions_array[x] ; 
 		newoption.value = extensions_array[x] ;
+		if(extensions_array[x] == 'o'){ newoption.text = "Operator" ; }
 		_mo.options.add(newoption);
 	}
 }
@@ -386,6 +407,7 @@
 	makerequest('u','extensions.conf', uri,
 		function(t){
 			setTimeout(function(){ _$('status_message').style.display = 'none'; },sc_displaytime);
+			hide_addStep();
 			// if request successfull then add this to the steps select box
 			var newoption = document.createElement("option"); 
 			newoption.text = format_step(action_string ); 
@@ -722,7 +744,7 @@
 
         }else if( _nsa.value== "Background"  || _nsa.value== "Playback" ){
                 _nsv.style.display = "";
-                _nsv.size= 12;
+                _nsv.size=24;
         }else if( _nsa.value== "Authenticate"  || _nsa.value== "DigitTimeout"  || _nsa.value== "ResponseTimeout" ||  _nsa.value== "Wait"  ||  _nsa.value== "WaitExten"  || _nsa.value== "DISA"){
                 _$('newstep_var_digit').style.display= "" ;
         }else if(_nsa.value== "GotoMenu"  ){
@@ -787,6 +809,7 @@
 	}
 
 	_steps.disabled = false;
+	_$('b_ShowAddStep').disabled = false;
 	_$('addstep').disabled = false;
 	_$('allowexten').disabled = false;
 	_$('comment').disabled = false;
@@ -919,6 +942,7 @@
 	_$('newstep_action').disabled = true;
 	_$('newstep_var').disabled = true;
 	_$('addstep').disabled = true;
+	_$('b_ShowAddStep').disabled = true;
 	_$('steps').disabled = true;
 	_$('stepUp').disabled = true;
 	_$('stepDown').disabled = true;
@@ -964,6 +988,7 @@
 	_$('newstep_action').disabled = true;
 	_$('newstep_var').disabled = true;
 	_$('addstep').disabled = true;
+	_$('b_ShowAddStep').disabled = true;
 	_steps.disabled = true;
 	//  4. Reset Comment
 	_$('keypressoptions').style.display = "";
@@ -976,6 +1001,7 @@
 
 
 function localajaxinit() {
+	parent._$('mainscreen').width= 798;
 	ASTGUI.events.add(document, 'mouseover', show_tooltip);
 	showdiv_statusmessage();
 	setWindowTitle("Voice Menus");
@@ -1166,6 +1192,7 @@
 }
 
 function free_mem(){
+	parent._$('mainscreen').width= 540;
 	if( navigator.userAgent.indexOf("MSIE") == -1 ){ return true; }
 	try{
 		widgets['save'].hostselectbox = null ;
@@ -1175,22 +1202,30 @@
 		purge( document.body );
 	} catch(e){ }
 }
+
+function show_addStep(){
+	_$('bg_transparent').style.display="" ;
+	_$('NewStep_Content').style.display="" ;
+}
+
+function hide_addStep(){
+	_$('bg_transparent').style.display="none" ;
+	_$('combodiv_sounds').style.display="none" ;
+	_$('NewStep_Content').style.display="none" ;
+}
 </script>
 <body id="foo" onload="localajaxinit()"  bgcolor="EFEFEF" onunload="free_mem()">
-<div class="mainscreenTitleBar">
+<div class="page_header">
 	<span style="margin-left: 4px;font-weight:bold;">Voice Menus Configuration</span>
 	<span style="cursor: pointer; cursor: hand;" onclick="window.location.href=window.location.href;" >&nbsp;<img src="images/refresh.png" title=" Refresh " border=0 >&nbsp;</span>
 </div>
 <div class="mainscreenContentBox" id="userscontent">
-<table class="mainscreenTable" align="center">
-	<tr valign="top">
-		<td colspan='2'> Voice Menus: </td>
-	</tr>
+<table class="VoiceMenuMainTable" align="left">
 	<tr valign="top">
 		<td>	<select size="25" id="vmenus" style="width:180px;" class="input10"><option>Loading...</option></select>	</td>
-		<td valign=top align="right" width=346 height=415>
+		<td valign=top align="right" width=560 height=415>
 			<select id='extensions' style='display:none;width:0px;height:0px'></select><select id='users' style='display:none;width:0px;height:0px'></select><select id='recorded_files' style='display:none;width:0px;height:0px'></select>
-			<table align="center" width="346">
+			<table align="center" width="560">
 			<tr>
 				<td width="50" align=left class="field_text" tip="en,menus,0">Name:</td>
 				<td align=left class="field_text">
@@ -1198,72 +1233,36 @@
 					<span tip="en,menus,5">
 					Extension: <input id="alias_exten"  onKeyUp="enable_savecancel()"  size=4 disabled class="input8" tip="en,menus,5">
 					</span>
+					&nbsp;&nbsp;&nbsp;&nbsp;
+					<label FOR="allowexten"  tip="en,menus,3">
+					<input type=checkbox id=allowexten disabled onclick="enable_savecancel()"> Allow Dialing other Extensions?
+					</label>
 				</td>
 			</tr>
 			<tr>	<td class="field_text"  tip="en,menus,1">Steps:<BR>
 					<input  style='width:45'  type="button" id="stepUp" value="Up" disabled onClick="step_up()" class="buttonbold"><BR><BR>
 					<input  style='width:45' type="button" id="stepDown" value="Down" disabled onClick="step_down()" class="buttonbold">
 				</td>
-				<td rowspan=2><select id='steps' size=5  style="width:280px;" onClick="step_onselect()" disabled class="input8"></select></td>
+				<td><select id='steps' size=8  style="width:550px;" onClick="step_onselect()" disabled class="input8"></select></td>
 			</tr>
-			<tr><td colspan=2 class="field_text" height=4  tip="en,menus,2"></td></tr>
-			<tr><td colspan=2 class="field_text"  tip="en,menus,2">Add a new Step:</td></tr>
+
+			<tr>	<td> </td>
+				<td class="field_text">
+				<input type=button style='width:105' id='b_ShowAddStep' onclick="show_addStep()"  value="Add new Step" disabled  class="buttonbold">
+				&nbsp;<input type=button style='width:140' id='deletestep' onclick="delete_step()"  value="Delete selected Step" disabled  class="buttonbold">
+				</td>
+			</tr>
+			<tr>	<td colspan=2 height=25></td></tr>
 			<tr><td colspan=2>
-
-				<NOBR>
-				<select id='newstep_action' disabled onChange="update_newstep_var()" class="input8">
-					<option value=""> -- Select --</option>
-					<option value="Answer">Answer</option>
-					<option value="Authenticate">Authenticate</option>
-					<option value="Background">Background</option>
-					<option value="Busy">Busy Tone</option>
-					<option value="Congestion">Congestion</option>
-					<!-- <option value="SetMusicOnHold">SetMusicOnHold</option> -->
-					<option value="DigitTimeout">DigitTimeout</option>
-					<option value="DISA">DISA</option>
-					<option value="ResponseTimeout">ResponseTimeout</option>
-					<option value="Playback">Playback</option>
-					<option value="Wait">Wait</option>
-					<option value="WaitExten">WaitExten</option>
-					<option value="GotoMenu">Goto Menu</option>
-					<option value="GotoDirecotry">Goto Directory</option>
-					<option value="GotoExtension">Goto Extension</option>
-					<!--<option value="GotoTimeBasedRule">Goto TimeBasedRule</option>-->
-					<option value="DialRingGroup">Dial RingGroup</option>
-					<option value="Hangup">Hangup</option>
-				</select>&nbsp;
-				<input type=text id="newstep_var" style="display:none" size=4 disabled class="input8">
-				<select id='add_newstep_extensions' style="display:none"   onChange=" $('newstep_var').value = $('add_newstep_extensions').value;"   class="input8"></select>
-				<select id='add_newstep_menus' style="display:none"    onChange=" $('newstep_var').value = $('add_newstep_menus').value;"   class="input8"></select>
-				<div id="combodiv_sounds">
-					<select size=5 id="combosel_sounds" style="font-family: Verdana, Arial, Helvetica, Sans-Serif;font-size: 11px;" class="input8"></select>
-				</div>
-				<select style="display:none" id="tbr" class="input8" onChange=" $('newstep_var').value = $('tbr').value;"></select>
-				<select style="display:none" id="rgrp" class="input8" onChange=" $('newstep_var').value = $('rgrp').value;"></select>
-				<input type=text id="newstep_var_digit" size=3 style="display:none;" onChange=" $('newstep_var').value = $('newstep_var_digit').value;"  pattern='^\d*$' class="input8">&nbsp;
-				<SCRIPT LANGUAGE="JavaScript">combo_box('newstep_var', "combodiv_sounds","combosel_sounds"); </SCRIPT>
-				<input type=button style='width:45' id='addstep' onclick="add_newstep()"  value="Add" disabled  class="buttonbold">
-				&nbsp;<input type=button style='width:50' id='deletestep' onclick="delete_step()"  value="Delete" disabled  class="buttonbold">
-				</NOBR>
-			</td>
-			</tr>
-			<tr>
-				<td colspan=2 class="field_text" tip="en,menus,3">
-				<label FOR="allowexten"  tip="en,menus,3">
-					&nbsp;<input type=checkbox id=allowexten disabled onclick="enable_savecancel()"> Dial other Extensions?
-				</label>&nbsp;</td>
-			</tr>
-			<tr>	<td colspan=2 height=6></td></tr>
-			<tr>	<td colspan=2 class="field_text"  tip="en,menus,4">'Keypress' Events</td>	</tr>
-			<tr><td colspan=2>
-				<div  style="width=340px;">
+				<div>
 					<table cellpadding=3 cellspacing=0 width="100%">
 					<TR bgcolor='#B8B8B8'>
 						<TD width=35 class="field_text">Key</TD><TD class="field_text">Action</TD>
+						<TD width=440 class="field_text" tip="en,menus,4" align=center><B>'Keypress' Events</B></TD>
 					</TR>
 					</table>
 				</div>
-				<div id="keypressoptions" style="height:155px;width=340px; overflow :auto;display :none;">
+				<div id="keypressoptions" style="height:190px;overflow :auto;display :none;">
 					<table cellpadding=3 cellspacing=0 width="100%">
 					<script>
 					for (var k=0; k< keys.length; k++){
@@ -1300,4 +1299,58 @@
 	</tr>
 </table>
 </div>
+<div id="NewStep_Content" STYLE="display:none; position: absolute; left: 40; top: 64; width:580; height:60;  background-color:#F4EFE5;   border-width: 1px; border-color: #7E5538; border-style: solid; z-index:100">
+	<table width="100%" cellpadding=0 cellspacing=0  onmousedown="ASTGUI.startDrag(event , 'NewStep_Content');">
+	<TR bgcolor="#7E5538"  style="background-image:url('images/title_gradient.gif');">
+		<TD tip="en,menus,2"><font color="#FFFFFF">&nbsp;&nbsp;<B>Add a new Step:</B></FONT></TD>
+		<TD Height="20" align="right" style="cursor: move">
+			<A href="#" onclick="hide_addStep();" style="color:#FFFFFF; font-size: 12px; font-weight:bold;">X</A>
+		</TD>
+		<TD width=4></TD>
+	</TR>
+	</table>
+	<table cellpadding=2 cellspacing=2 border=0 width="100%" align="center">
+	<tr>	<td colspan=2 class="field_text" align=center height=40 valign=middle>
+		<NOBR>
+		Add new Step: 
+		<select id='newstep_action' disabled onChange="update_newstep_var()" class="input8">
+			<option value=""> -- Select --</option>
+			<option value="Answer">Answer</option>
+			<option value="Authenticate">Authenticate</option>
+			<option value="Background">Background</option>
+			<option value="Busy">Busy Tone</option>
+			<option value="Congestion">Congestion</option>
+			<!-- <option value="SetMusicOnHold">SetMusicOnHold</option> -->
+			<option value="DigitTimeout">DigitTimeout</option>
+			<option value="DISA">DISA</option>
+			<option value="ResponseTimeout">ResponseTimeout</option>
+			<option value="Playback">Playback</option>
+			<option value="Wait">Wait</option>
+			<option value="WaitExten">WaitExten</option>
+			<option value="GotoMenu">Goto Menu</option>
+			<option value="GotoDirecotry">Goto Directory</option>
+			<option value="GotoExtension">Goto Extension</option>
+			<!--<option value="GotoTimeBasedRule">Goto TimeBasedRule</option>-->
+			<option value="DialRingGroup">Dial RingGroup</option>
+			<option value="Hangup">Hangup</option>
+		</select>&nbsp;
+		<input type=text id="newstep_var" style="display:none" size=4 disabled class="input8">
+		<select id='add_newstep_extensions' style="display:none" onChange=" $('newstep_var').value = $('add_newstep_extensions').value;"   class="input8"></select>
+		<select id='add_newstep_menus' style="display:none" onChange=" $('newstep_var').value = $('add_newstep_menus').value;"   class="input8"></select>
+		<select style="display:none" id="tbr" class="input8" onChange=" $('newstep_var').value = $('tbr').value;"></select>
+		<select style="display:none" id="rgrp" class="input8" onChange=" $('newstep_var').value = $('rgrp').value;"></select>
+		<input type=text id="newstep_var_digit" size=3 style="display:none;" onChange=" $('newstep_var').value = $('newstep_var_digit').value;"  pattern='^\d*$' class="input8">&nbsp;
+		<input type=button style='width:45' id='addstep' onclick="add_newstep()"  value="Add" disabled  class="buttonbold">
+		<input type=button style='width:55' onclick="hide_addStep()"  value="Cancel" class="buttonbold">
+		</NOBR>
+		</td>
+	</tr>
+	</table>
+</div>
+<div id="combodiv_sounds" STYLE="display:none;z-index:101">
+	<select size=10 id="combosel_sounds" style="font-family: Verdana, Arial, Helvetica, Sans-Serif;font-size: 11px;" class="input8"></select>
+</div>
+<SCRIPT LANGUAGE="JavaScript">combo_box('newstep_var', "combodiv_sounds","combosel_sounds"); </SCRIPT>
+<div id="bg_transparent" STYLE="display:none; position: absolute; left: 0; top: 24; width:100%; height:100%;  background-color:#EFEFEF; -moz-opacity:.50;opacity:.50; border-width: 1px; border-color: #EFEFEF; border-style: solid; z-index:4">
+</div>
 </body>

Modified: branches/asterisknow/config/ringgroups.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/ringgroups.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/ringgroups.html (original)
+++ branches/asterisknow/config/ringgroups.html Thu Aug  2 12:21:20 2007
@@ -213,6 +213,7 @@
 	this_ringgroup.ringstyle = _$('select_strategy').value;
 	this_ringgroup.rgchannels = [];
 	this_ringgroup.laststep = '';
+	this_ringgroup.ringTime = ringtime;
 
 	uri += build_action('newcat', p, context ,"", ""); p = p+1;
 

Modified: branches/asterisknow/config/scripts/astman.js
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/scripts/astman.js?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/scripts/astman.js (original)
+++ branches/asterisknow/config/scripts/astman.js Thu Aug  2 12:21:20 2007
@@ -442,7 +442,7 @@
 	_hs.borderColor= "#7E5538";
 	_hs.borderStyle= "solid";
 	h.innerHTML = '<BR><BR><TABLE border=0 cellpadding=0 cellspacing=3 align=center>' +
-			'<TR><TD><img src="/static/config/images/loading.gif"></TD>' +
+			'<TR><TD><img src="/asterisk/static/config/images/loading.gif"></TD>' +
 			'<TD valign=middle align=center>&nbsp;&nbsp;<div id=message_text></div></TD></TR></TABLE>';
 	document.body.appendChild(h);
 }
@@ -1968,6 +1968,10 @@
 		t.subfields[x]['args'] = args;
 		t.subfields[x]['priority'] = priority;
 
+		if(t.subfields[x]['name'] == 'o'){
+			label = "Operator";
+			t.subfields[x]['label'] = label;
+		}
 		if( app.toLowerCase() == "goto" && args.match("voicemenu-custom-") ){
 			label = "Voice Menu";
 			t.subfields[x]['label'] = label;

Modified: branches/asterisknow/config/scripts/tooltip.js
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/scripts/tooltip.js?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/scripts/tooltip.js (original)
+++ branches/asterisknow/config/scripts/tooltip.js Thu Aug  2 12:21:20 2007
@@ -89,7 +89,7 @@
 	tooltips['queues'].en[3] = "<B>Agents:</B> This selection shows all Users defined as Agents in their User conf.  Checking a User here makes them a member of the current Queue.";
 	tooltips['queues'].en[4] = "<B>Advanced:</B> Advanced Queue Configuration Options";
 	tooltips['queues'].en[5] = "<B>Timeout:</B> This option defines the time in seconds that an Agent's phone rings before the next Agent is rung, i.e. \"15\" ";
-	tooltips['queues'].en[6] = "<B>Wrapup Time:</B> After a successful call, time time in seconds that an Agent remains free before another call is sent to them. Default is 0, which is No Delay.";
+	tooltips['queues'].en[6] = "<B>Wrapup Time:</B> After a successful call, time in seconds that an Agent remains free before another call is sent to them. Default is 0, which is No Delay.";
 	tooltips['queues'].en[7] = "<B>AutoFill</B> Defining this option causes the Queue, when multiple calls are in it at the same time, to push them to Agents simultaneously.  Thus, instead of completing one call to an Agent at a time, the Queue will complete as many calls simultaneously to the available Agents.";
 	tooltips['queues'].en[8] = "<B> AutoPause:</B> Enabling this option pauses an Agent if they fail to answer a call.";
 	tooltips['queues'].en[9] = "<B> MaxLen:</B> This option sets the maximum number of callers that may wait in a Queue. Default is 0, Unlimited.";

Modified: branches/asterisknow/config/setup/5.html
URL: http://svn.digium.com/view/asterisk-gui/branches/asterisknow/config/setup/5.html?view=diff&rev=1296&r1=1295&r2=1296
==============================================================================
--- branches/asterisknow/config/setup/5.html (original)
+++ branches/asterisknow/config/setup/5.html Thu Aug  2 12:21:20 2007
@@ -26,19 +26,18 @@
 <script src="../scripts/prototype.js"></script>
 <script src="../scripts/astman.js"></script>
 <SCRIPT>
-var rawman_url;
-var trunks_desc = new Object;
-var trunkcallbacks = new Object;
-var numplan_callbacks = new Object;
-var default_numberplan = 0;
-var default_np_rules = new Array;
-var default_np_comments = new Array;
-var default_np_data = new Object;
+var widgets = { } ;
+var trunkcallbacks = { };
+var trunks_desc = { };
+var numplan_callbacks = { };
+var numberplansdata = { };
+//var default_numberplan = 0;
 var isnewrule ;
 var iscustom ;
 var pattern_beingedited ;
 var pattern_beingedited_priority ;
-var oldselect;
+var np_oldselect;
+
 
 function localinit(){
 	showdiv_statusmessage();
@@ -47,9 +46,11 @@
 	parent._$('back').disabled = false;
 	parent._$('back').onclick  = function(){ window.location.href="4.html"; };
 	rawman_url = parent.rawman_url ;
+	asterisk_rawmanPath = parent.rawman_url ;
 	parent.astmanEngine.setURL(rawman_url);
 	ping();
 }
+
 
 function ping(){
 	var opt = {
@@ -69,262 +70,254 @@
 
 	if ( originalRequest.responseText.match("Pong") ) {
 		_$('message_text').innerHTML ="Saving Changes...";
-		parent.astmanEngine.config2list("users.conf", _$('trunks'), new Object(), trunkcallbacks);
-	}
-}
-
-function addthe_default_callingplan(){
-	gui_feedback("A default DialPlan is not found !! ", 5000 );
-	_$('table_one').style.display="none";
-	var newRow = _$('callingRulesTable').insertRow(-1);
-	var newCell0 = newRow.insertCell(0);
-	newCell0 .align = "center";
-	newCell0 .style.fontSize = "14px";
-	newCell0 .style.padding = "15px 0px 30px 0px";
-	newCell0 .innerHTML = "the default DialPlan <B>'DialPlan1'</B> is not found !! "
-	+ "<BR><BR><A href=\"#\" class=\"splbutton\" onclick=\"addthe_default_callingplan2()\">Click here</A> to create 'DialPlan1'" ;
-	_$('addrule').disabled = 1;
-	_$('heading2').style.display = "none";
-}
-
-
-function addthe_default_callingplan2(){
-	var default_planname = 'numberplan-custom-1' ;
-	var uri = build_action('newcat', 0, default_planname ,"", "");
-	uri += build_action('append', 1, default_planname,"plancomment", "DialPlan1"); 
-	uri += build_action('append', 2, default_planname,"include", "default"); 
-	uri += build_action('append', 3, default_planname,"include", "parkedcalls");
-	var opt = {
-		method: 'get',
-		asynchronous: true,
-		onSuccess: function(t) { location.reload(); },
-		onFailure: function(t) {
-			alert("Config Error: " + t.status + ": " + t.statusText);
-		}
-	};
-	opt.parameters= "action=updateconfig&srcfilename=" + encodeURIComponent("extensions.conf") + "&dstfilename=" + encodeURIComponent("extensions.conf") + uri;
-	var tmp = new Ajax.Request(rawman_url, opt);
-}
-
-
-trunkcallbacks.format = function(t) {
-	if ( t.fieldbyname['context'] != asterisk_guiTDPrefix + t.name ) {
-		return null;
-	}
-	if (t.fieldbyname['trunkname'] && t.fieldbyname['trunkname'].length) {
-		trunks_desc[t.name] = new Object();
-		trunks_desc[t.name].comment = t.fieldbyname['trunkname'] ;
-		return t.fieldbyname['trunkname'];
-	} else{
-		trunks_desc[t.name] = new Object();
-		trunks_desc[t.name].comment = t.name ;
-		return t.name;
-	}
-}
-
-trunkcallbacks.loaded = function(){
-	//_$('trunks').addEventListener('click',hackenablesave,false);
-	ASTGUI.events.add( _$('trunks') , "click", hackenablesave );
-	parent.astmanEngine.config2list("extensions.conf", _$('extensions'), new Object(), numplan_callbacks);
-}
-
-function hackenablesave(){
-	if( oldselect != _$('trunks').value ){
-		enablesave();
-	}
-}
-
-numplan_callbacks.format = function(t, x) {
-	var exten_fields;
-	if(t.name == "numberplan-custom-1" && x == undefined ){ 
-		default_numberplan = 1;
-	}else if(t.name == "numberplan-custom-1" && t.names[x]=='exten' ){ 
-		default_np_rules.push( t.fields[x] );
-	}else if(t.name == "numberplan-custom-1" && t.names[x]=='comment' ){ 
-		var tmp = t.fields[x].split(",");
-		if( tmp.length > 1 ){
-			default_np_comments.push( t.fields[x] );
-		}
-	}
-
-	return false;
-}
-
-numplan_callbacks.loaded = function() {
-	//parent.astmanEngine.pollEvents();
-	if(!default_numberplan){
-		// Redirect To creating a default Number Plan
-		addthe_default_callingplan();
-		return true;
-	}
-	for( var i=0; i < default_np_rules.length; i++){
-		var temp = default_np_rules[i].split(","); // temp[0] is the pattern, temp[1] is the priority,temp[2] is 'Macro(trunkdial', temp[3] is ${trunkname}/${EXTEN:1})
-		var temp1 = temp[3].split("{");
-		var temp2 = temp1[1].split("}");
-		var temp3 = temp1[2].split("}");
-		var temp4 = temp3[0].split(":");
-		temp[4] = temp2[0] ; // temp[4] is trunkname
-		temp[5] = temp4[1] ; // temp[5] is the #digits to strip in the front
-		if ( typeof default_np_data[temp[0]] == 'undefined' ) {
-			default_np_data[temp[0]] = new Object();
-		}
-		default_np_data[temp[0]][temp[1]] = new Object();
-		default_np_data[temp[0]][temp[1]].trunk = temp[4] ;
-		default_np_data[temp[0]][temp[1]].digits2strip = temp[5] ;
-	}
-	for ( var i =0; i < default_np_comments.length ; i++){
-		var temp = default_np_comments[i].split(",");
-		default_np_data[temp[0]][temp[1]].rulename = temp[2] ;
-		if(temp[3] !="custom"){
-			default_np_data[temp[0]][temp[1]].ruledesc = parsepattern(temp[0],0) ;
-		}else{
-			default_np_data[temp[0]][temp[1]].ruledesc = "custom" ;
-		}
-	}
-	// now show this object in a table.
-	for( var x in default_np_data ){	// x is the pattern
-		// sort the priorities
-		if( !default_np_data.hasOwnProperty(x) ){ continue; }
-		var sorted_priorities = [];
-		for ( var y in default_np_data[x] ){
-			if( default_np_data[x].hasOwnProperty(y) ){
-				sorted_priorities.push(y);
+		config2json('users.conf', 1, trunks_loaded ) ;
+	}
+}
+
+function basicpattern(){
+	iscustom = false;
+	_$('define_advanced').style.display="none";
+	_$('define_usual').style.display="";
+}
+
+function ownpattern(){
+	iscustom = true;
+	_$('define_advanced').style.display="";
+	_$('define_usual').style.display="none";
+}
+
+function enablesave(){
+	_$('save_a').disabled = 0;
+	return true;
+}
+
+function add_callingrule(){
+	isnewrule = true;
+	iscustom = false;
+	_$('rulename').value = "";
+	_$('trunks').selectedIndex = -1 ;
+	_$('pattern').value = "";
+	_$('prepend').value = "";
+	_$('strip').value = "0" ;
+	_$('save_a').disabled = 1;
+	_$('define_advanced').style.display="none";
+	_$('define_usual').style.display="";
+	_$('userscontent').style.display="";
+	_$('bg_transparent').style.display ='';
+	_$('addrule').disabled =1;
+	_$('beginswith').value = "";
+	_$('followedby').value ="";
+	_$('ormore').checked = false;
+}
+
+function checkfields(){
+	if( _$('rulename').value.length == 0 ){
+		gui_alert("Please enter a Rule Name");
+		_$('rulename').focus();
+		return false;
+	}
+
+	if( _$('trunks').selectedIndex == -1){
+		gui_alert("Please select a service provider to place this call through");
+		return false;
+	}
+
+	if( _$('define_advanced').style.display=="none" && _$('beginswith').value.length==0 ){
+		gui_alert("Please Enter the beginning pattern of the number");
+		_$('beginswith').focus();
+		return false;
+	}
+
+	if( _$('define_usual').style.display=="none" && _$('pattern').value.length == 0 ){
+		gui_alert("Please Enter a custom pattern");
+		_$('pattern').focus();
+		return false;
+	}
+return true;
+}
+
+function buildpatternstring(){
+	var pattern = $('beginswith').value;
+	// Add an underscore
+	pattern = "_" + pattern;
+	// append 'followedby' number of X's
+ 	var s = _$('followedby').value ;
+       for (var r=0; r < s ; r++){
+               pattern = pattern + "X" ;
+       }
+	// append a '.' if 'ormore' is checked
+	if( _$('ormore').checked ){
+		pattern = pattern + "!" ;
+	}
+	// assign this to the field 'pattern'
+	_$('pattern').value = pattern;
+}
+
+function add_rule_fromeditform( this_priority, oncomplete ){
+	var commentstring = (iscustom )? "custom" :"standard" ;
+	var _ptv = _$('pattern').value ;
+	var _extv = _$('extensions').value ;
+	var _rnv = _$('rulename').value ;
+	var _tv = _$('trunks').value ;
+	var _sv = _$('strip').value ;
+	var _pv = _$('prepend').value ;
+	var provider_name;
+	config2json('users.conf', 1, function(b) { 
+        var c = b ;
+       	provider_name = (c[_tv]['provider']) ? unescape(c[_tv]['provider']) : _tv;
+	if(provider_name == 'bandwidth') {
+	/* Add a + sign on outgoing calls so that bandwidth.com will properly recognize and receive it. */
+	var rule_string = _ptv + ',' + this_priority + ',Macro(trunkdial,${' + _tv + '}/'+ _pv + "+" + '${EXTEN:' + _sv + '}@${'+_tv+'})' ;
+	} else {
+	var rule_string = _ptv + ',' + this_priority + ',Macro(trunkdial,${' + _tv + '}/'+ _pv +'${EXTEN:' + _sv + '})' ;
+	}
+	var uri = build_action('append', 0 , _extv ,"exten", rule_string );
+	commentstring = _ptv + ',' + this_priority + ',' + _rnv + "," + commentstring ;
+	uri += build_action('append', 1 , _extv ,"comment", commentstring );
+
+	_$('userscontent').style.display = "none";
+	_$('bg_transparent').style.display = "none";
+	_$('status_message').style.display = "";
+
+	makerequest('u', 'extensions.conf', uri,
+		function(t){
+			_$('status_message').style.display="none";
+			var m = numberplansdata[_extv]['npdata'];
+			if ( typeof m[_ptv] == 'undefined' ) { m[_ptv] = { }; }
+			m[_ptv][this_priority] = new ruleinanpdata(_tv, _sv , _pv );
+			m[_ptv][this_priority].rulename =  _rnv ; 
+			m[_ptv][this_priority].ruledesc = (iscustom) ? "custom" : parsepattern(_ptv,0) ;
+			oncomplete(); 

[... 757 lines stripped ...]



More information about the asterisk-gui-commits mailing list