Function: nndraft-request-expire-articles

nndraft-request-expire-articles is an autoloaded and byte-compiled function defined in nndraft.el.gz.

Signature

(nndraft-request-expire-articles ARTICLES GROUP &optional SERVER FORCE)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nndraft.el.gz
(deffoo nndraft-request-expire-articles (articles group &optional server force)
  (nndraft-possibly-change-group group)
  (let* ((nnmh-allow-delete-final t)
	 (nnmail-expiry-target 'delete)
	 ;; FIXME: If we want to move a draft message to an expiry group,
	 ;; there are things to have to improve:
	 ;; - Remove a header separator.
	 ;; - Encode it, including attachments, into a MIME message.
	 ;;(nnmail-expiry-target
	 ;; (or (gnus-group-find-parameter
	 ;;      (gnus-group-prefixed-name group (list 'nndraft server))
	 ;;      'expiry-target t)
	 ;;     nnmail-expiry-target))
	 (res (nnoo-parent-function 'nndraft
				    'nnmh-request-expire-articles
				    (list articles group server force)))
	 article)
    ;; Delete all the "state" files of articles that have been expired.
    (while articles
      (unless (memq (setq article (pop articles)) res)
	(let ((auto (nndraft-auto-save-file-name
		     (nndraft-article-filename article))))
	  (when (file-exists-p auto)
	    (funcall nnmail-delete-file-function auto)))
	(dolist (backup
		 (let ((kept-new-versions 1)
		       (kept-old-versions 0))
		   (find-backup-file-name
		    (nndraft-article-filename article))))
	  (when (file-exists-p backup)
	    (funcall nnmail-delete-file-function backup)))))
    res))