From: Magnus H. <leg...@us...> - 2007-09-01 02:39:21
|
Update of /cvsroot/emacs-jabber/emacs-jabber In directory sc8-pr-cvs17:/tmp/cvs-serv28214 Modified Files: jabber.el jabber-core.el Log Message: Revision: ma...@fr...--2005/emacs-jabber--cvs-head--0--patch-404 Creator: Magnus Henoch <ma...@fr...> Add option for disabling accounts in jabber-account-list Index: jabber-core.el =================================================================== RCS file: /cvsroot/emacs-jabber/emacs-jabber/jabber-core.el,v retrieving revision 1.66 retrieving revision 1.67 diff -u -d -r1.66 -r1.67 --- jabber-core.el 1 Sep 2007 02:39:04 -0000 1.66 +++ jabber-core.el 1 Sep 2007 02:39:14 -0000 1.67 @@ -22,7 +22,7 @@ ;; along with this program; if not, write to the Free Software ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -(eval-when-compile (require 'cl)) +(require 'cl) (require 'jabber-util) (require 'jabber-logon) @@ -132,25 +132,29 @@ See `jabber-account-list'. If no accounts are configured, call `jabber-connect' interactively." (interactive) - (if (null jabber-account-list) - (call-interactively 'jabber-connect) - ;; Only connect those accounts that are not yet connected. - (let ((already-connected (mapcar #'jabber-connection-bare-jid jabber-connections)) - (connected-one nil)) - (dolist (account jabber-account-list) - (unless (member (jabber-jid-user (car account)) already-connected) - (let* ((jid (car account)) - (alist (cdr account)) - (password (cdr (assq :password alist))) - (network-server (cdr (assq :network-server alist))) - (port (cdr (assq :port alist))) - (connection-type (cdr (assq :connection-type alist)))) - (jabber-connect - (jabber-jid-username jid) - (jabber-jid-server jid) - (jabber-jid-resource jid) - nil password network-server - port connection-type))))))) + (let ((accounts + (remove-if (lambda (account) + (cdr (assq :disabled (cdr account)))) + jabber-account-list))) + (if (null accounts) + (call-interactively 'jabber-connect) + ;; Only connect those accounts that are not yet connected. + (let ((already-connected (mapcar #'jabber-connection-bare-jid jabber-connections)) + (connected-one nil)) + (dolist (account accounts) + (unless (member (jabber-jid-user (car account)) already-connected) + (let* ((jid (car account)) + (alist (cdr account)) + (password (cdr (assq :password alist))) + (network-server (cdr (assq :network-server alist))) + (port (cdr (assq :port alist))) + (connection-type (cdr (assq :connection-type alist)))) + (jabber-connect + (jabber-jid-username jid) + (jabber-jid-server jid) + (jabber-jid-resource jid) + nil password network-server + port connection-type)))))))) (defun jabber-connect (username server resource &optional registerp password network-server Index: jabber.el =================================================================== RCS file: /cvsroot/emacs-jabber/emacs-jabber/jabber.el,v retrieving revision 1.77 retrieving revision 1.78 diff -u -d -r1.77 -r1.78 --- jabber.el 1 Sep 2007 02:38:54 -0000 1.77 +++ jabber.el 1 Sep 2007 02:39:14 -0000 1.78 @@ -52,6 +52,9 @@ (string :tag "JID") (set :format "%v" (cons :format "%v" + (const :format "" :disabled) + (const :tag "Disabled" t)) + (cons :format "%v" (const :format "" :password) (string :tag "Password")) (cons :format "%v" |