+(defun riece-update-status-indicators ()
+ (if riece-current-channel
+ (with-current-buffer riece-command-buffer
+ (riece-with-server-buffer (riece-identity-server riece-current-channel)
+ (setq riece-away-indicator
+ (if (and riece-real-nickname
+ (riece-user-get-away riece-real-nickname))
+ "A"
+ "-")
+ riece-operator-indicator
+ (if (and riece-real-nickname
+ (riece-user-get-operator riece-real-nickname))
+ "O"
+ "-")
+ riece-user-indicator riece-real-nickname))))
+ (setq riece-freeze-indicator
+ (with-current-buffer (if (and riece-channel-buffer-mode
+ riece-channel-buffer)
+ riece-channel-buffer
+ riece-dialogue-buffer)
+ (if (eq riece-freeze 'own)
+ "f"
+ (if riece-freeze
+ "F"
+ "-")))))
+
+(defun riece-update-buffers (&optional buffers)
+ (unless buffers
+ (setq buffers riece-buffer-list))
+ (while buffers
+ (save-excursion
+ (set-buffer (car buffers))
+ (run-hooks 'riece-update-buffer-functions))
+ (setq buffers (cdr buffers)))
+ (run-hooks 'riece-update-indicator-functions)
+ (force-mode-line-update t)
+ (run-hooks 'riece-update-buffer-hook))
+
+(defun riece-channel-buffer-name (identity)
+ (let ((channels (riece-identity-member identity riece-current-channels)))
+ (if channels
+ (setq identity (car channels))
+ (if riece-debug
+ (message "%S is not a member of riece-current-channels" identity)))
+ (format riece-channel-buffer-format (riece-format-identity identity))))