rbrindley: branch 2.0 r4651 - in /branches/2.0/config/js: pbx2.js users.js
SVN commits to the Asterisk-GUI project
asterisk-gui-commits at lists.digium.com
Tue Mar 24 12:46:09 CDT 2009
Author: rbrindley
Date: Tue Mar 24 12:46:06 2009
New Revision: 4651
URL: http://svn.digium.com/svn-view/asterisk-gui?view=rev&rev=4651
Log:
- added proper checkers, error logs and var names to pbx.users.remove
- the users page now uses pbx.users.*
Modified:
branches/2.0/config/js/pbx2.js
branches/2.0/config/js/users.js
Modified: branches/2.0/config/js/pbx2.js
URL: http://svn.digium.com/svn-view/asterisk-gui/branches/2.0/config/js/pbx2.js?view=diff&rev=4651&r1=4650&r2=4651
==============================================================================
--- branches/2.0/config/js/pbx2.js (original)
+++ branches/2.0/config/js/pbx2.js Tue Mar 24 12:46:06 2009
@@ -1585,33 +1585,57 @@
* @param user The user.
* @param vmdel Optional, default = false. Boolean to delete vms or not.
* @param callback Optional, default = null. The callback function after deleting a user.
+ * @return boolean of success.
*/
pbx.users.remove = function(params) {
- var u = new listOfSynActions('users.conf');
- u.new_action('delcat', params.user, '', '');
- u.callActions();
-
- u.clearActions('extensions.conf');
- u.new_action('delete', 'globals', ASTGUI.globals.odcidUsrPrefix + user, '');
- u.callActions();
-
- delete sessionData.pbxinfo['users'][user];
+ if (typeof params !== 'object') {
+ top.log.error('pbx.users.remove: Expecting params to be an object.');
+ return false;
+ } else if (typeof params.user === 'undefined') {
+ top.log.error('pbx.users.remove: params.user is empty.');
+ return false;
+ } else if (params.vmdel === 'undefined') {
+ top.log.error('pbx.users.remove: params.vmdel is empty.');
+ return false;
+ }
+
+ var actions = new listOfSynActions('users.conf');
+ actions.new_action('delcat', params.user, '', '');
+ var resp = actions.callActions();
+ if (!resp.contains('Response: Success')) {
+ top.log.error('pbx.users.remove: Error removing ' + params.user + ' from users.conf.');
+ return false;
+ }
+
+ actions.clearActions('extensions.conf');
+ actions.new_action('delete', 'globals', ASTGUI.globals.odcidUsrPrefix + params.user, '');
+ var resp = actions.callActions();
+ if (!resp.contains('Response: Success')) {
+ top.log.error('pbx.users.remove: Error removing global var: "' + ASTGUI.globals.odcidUsrPrefix + params.user + '" from extensions.conf.');
+ return false;
+ }
+
+ delete sessionData.pbxinfo['users'][params.user];
var qs_x = new listOfActions('queues.conf');
var qs = config2json({filename: 'queues.conf', usf:0});
for (var i in qs) {
- if (qs[q].contains('member=Agent/' + user) ) {
- qs_x.new_action('delete', i, 'member', '', 'Agent/' + user);
+ if (!qs.hasOwnProperty(i)) {
+ continue;
+ }
+
+ if (qs[i].contains('member=Agent/' + params.user) ) {
+ qs_x.new_action('delete', i, 'member', '', 'Agent/' + params.user);
}
}
qs_x.callActions(function() {
if (params.vmdel) {
- ASTGUI.systemCmd('rm ' + top.sessionData.directories.voicemails_dir + user + ' -rf', params.callback);
- } else {
- params.callback();
- }
+ ASTGUI.systemCmd('rm ' + top.sessionData.directories.voicemails_dir + params.user + ' -rf', function(){});
+ }
});
+
+ params.callback();
};
/**
Modified: branches/2.0/config/js/users.js
URL: http://svn.digium.com/svn-view/asterisk-gui/branches/2.0/config/js/users.js?view=diff&rev=4651&r1=4650&r2=4651
==============================================================================
--- branches/2.0/config/js/users.js (original)
+++ branches/2.0/config/js/users.js Tue Mar 24 12:46:06 2009
@@ -86,7 +86,7 @@
initialize_formFields : function(){ // USERS_MISC_FUNCTIONS.initialize_formFields();
//Load dialplans into 'edit_user_dialplan'
- var dps = parent.astgui_manageCallPlans.listPlans() ;
+ var dps = parent.pbx.call_plans.list() ;
dps.each(function(plan){
var t = plan.withOut(ASTGUI.contexts.CallingPlanPrefix);
ASTGUI.selectbox.append( 'edit_user_dialplan' , t, plan);
@@ -145,7 +145,7 @@
load_users_table : function(){ // USERS_MISC_FUNCTIONS.load_users_table
var TBL = _$('table_userslist') ;
var addCell = ASTGUI.domActions.tr_addCell; // temporarily store the function
- var ul = parent.astgui_manageusers.listOfUsers(); ul = ul.sortNumbers( );
+ var ul = parent.pbx.users.list(); ul = ul.sortNumbers( );
if(!ul.length){
ASTGUI.domActions.clear_table( TBL );
var newRow = TBL.insertRow(-1);
@@ -289,7 +289,7 @@
},
NEW_USER_FORM : function(){ // USERS_MISC_FUNCTIONS.NEW_USER_FORM();
- var dps = parent.astgui_manageCallPlans.listPlans() ;
+ var dps = parent.pbx.call_plans.list() ;
if(!dps.length){
ASTGUI.yesOrNo (
{ msg: "No DialPlans defined !! <BR><BR> A dialplan is required for creating new users. <BR> You will now be redirected to the 'Manage DialPlans' page.",
@@ -360,7 +360,7 @@
if (!confirm('Are you sure you want to delete the selected user - ' + a + ' ?')) { return; }
var yn = confirm("Delete user's voicemail box too ?" );
parent.ASTGUI.dialog.waitWhile(' deleting user ' + a );
- parent.astgui_manageusers.deleteuser(a , yn , reload_page );
+ parent.pbx.users.remove({user: a , vmdel: yn , callback: reload_page});
},
DELETE_SELECTED_USERS : function(){ // USERS_MISC_FUNCTIONS.DELETE_SELECTED_USERS();
@@ -385,7 +385,7 @@
var delete_firstUser = function(){
//var yn = confirm("Delete voicemail box for user " + sel_users[0] + " ?" );
parent.ASTGUI.dialog.waitWhile(' deleting user ' + sel_users[0] );
- parent.astgui_manageusers.deleteuser(sel_users[0] , true , after_deletingFirstUser);
+ parent.pbx.users.remove({user: sel_users[0] , vmdel: true , callback: after_deletingFirstUser});
};
parent.ASTGUI.dialog.waitWhile(' Deleting selected users .... ');
@@ -393,7 +393,7 @@
},
check_duplicate_lineNumber : function(){ // USERS_MISC_FUNCTIONS.check_duplicate_lineNumber() check if another user has the same mac address and line number
- var ul = parent.astgui_manageusers.listOfUsers();
+ var ul = parent.pbx.users.list();
for( var f=0 ; f < ul.length ; f++ ){
var uinfo = parent.sessionData.pbxinfo.users[ ul[f] ];
if( !isNewUSER && EXTENSION_EDIT == ul[f] ){
More information about the asterisk-gui-commits
mailing list