Function: nndiary-request-update-info

nndiary-request-update-info is a byte-compiled function defined in nndiary.el.gz.

Signature

(nndiary-request-update-info GROUP INFO &optional SERVER)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nndiary.el.gz
;;; Interface optional functions ============================================

(deffoo nndiary-request-update-info (group info &optional _server)
  (nndiary-possibly-change-directory group)
  (let ((timestamp (gnus-group-parameter-value (gnus-info-params info)
					       'timestamp t)))
    (if (not timestamp)
	(nnheader-report 'nndiary "Group %s doesn't have a timestamp" group)
      ;; else
      ;; Figure out which articles should be re-new'ed
      (let ((articles (nndiary-flatten (gnus-info-read info) 0))
	    article file unread buf)
	(save-excursion
	  (setq buf (nnheader-set-temp-buffer " *nndiary update*"))
	  (while (setq article (pop articles))
	    (setq file (concat nndiary-current-directory
			       (int-to-string article)))
	    (and (file-exists-p file)
		 (nndiary-renew-article-p file timestamp)
		 (push article unread)))
	  ;;(message "unread: %s" unread)
	  (sit-for 1)
	  (kill-buffer buf))
	(setq unread (sort unread #'<))
	(and unread
	     (setf (gnus-info-read info)
		   (gnus-update-read-articles (gnus-info-group info) unread t)))
	))
    (run-hook-with-args 'nndiary-request-update-info-functions
			(gnus-info-group info))
    t))