Function: gnus-server-insert-server-line

gnus-server-insert-server-line is a byte-compiled function defined in gnus-srvr.el.gz.

Signature

(gnus-server-insert-server-line NAME METHOD)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-srvr.el.gz
(defun gnus-server-insert-server-line (name method)
  (let* ((gnus-tmp-name name)
         (gnus-tmp-how (car method))
	 (gnus-tmp-where (nth 1 method))
	 (elem (assoc method gnus-opened-servers))
	 (gnus-tmp-status
	  (cond
	   ((eq (nth 1 elem) 'denied) "(denied)")
	   ((eq (nth 1 elem) 'offline) "(offline)")
	   (t
	    (condition-case nil
		(if (or (gnus-server-opened method)
			(eq (nth 1 elem) 'ok))
		    "(opened)"
		  "(closed)")
	      ((error) "(error)")))))
	 (gnus-tmp-agent (if (and gnus-agent
				  (gnus-agent-method-p method))
			     " (agent)"
			   ""))
	 (gnus-tmp-cloud (concat
                          (if (gnus-cloud-host-server-p gnus-tmp-name)
                              " (CLOUD-HOST)"
                            "")
                          (if (gnus-cloud-server-p gnus-tmp-name)
			     " (cloud-sync)"
                            ""))))
    (beginning-of-line)
    (add-text-properties
     (point)
     (prog1 (1+ (point))
       ;; Insert the text.
       (eval gnus-server-line-format-spec t))
     (list 'gnus-server (intern gnus-tmp-name)
           'gnus-named-server (intern (gnus-method-to-server method t))))))