Function: nnfolder-request-accept-article

nnfolder-request-accept-article is a byte-compiled function defined in nnfolder.el.gz.

Signature

(nnfolder-request-accept-article GROUP &optional SERVER LAST)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nnfolder.el.gz
(deffoo nnfolder-request-accept-article (group &optional server last)
  (save-excursion
    (nnfolder-possibly-change-group group server)
    (nnmail-check-syntax)
    (let (;; (buf (current-buffer))
	  result art-group)
      (goto-char (point-min))
      (when (looking-at "X-From-Line: ")
	(replace-match "From ")
	(while (progn (forward-line) (looking-at "[ \t]"))
	  (delete-char -1)))
      (with-temp-buffer
	(let ((nnmail-file-coding-system nnfolder-active-file-coding-system)
	      (nntp-server-buffer (current-buffer)))
	  (nnmail-find-file nnfolder-active-file)
	  (setq nnfolder-group-alist (nnmail-parse-active))))
      (save-excursion
	(goto-char (point-min))
	(if (search-forward "\n\n" nil t)
	    (forward-line -1)
	  (goto-char (point-max)))
	(while (re-search-backward (concat "^" nnfolder-article-marker) nil t)
	  (delete-region (point) (progn (forward-line 1) (point))))
	(when nnmail-cache-accepted-message-ids
	  (nnmail-cache-insert (nnmail-fetch-field "message-id")
			       group
			       (nnmail-fetch-field "subject")
			       (nnmail-fetch-field "from")))
	(setq result (if (stringp group)
			 (list (cons group (nnfolder-active-number group)))
		       (setq art-group
			     (nnmail-article-group 'nnfolder-active-number))))
	(if (and (null result)
		 (yes-or-no-p "Moved to `junk' group; delete article? "))
	    (setq result 'junk)
	  (setq result
		(car (nnfolder-save-mail result)))))
      (when last
	(save-excursion
	  (nnfolder-possibly-change-folder (or (caar art-group) group))
	  (nnfolder-save-buffer)
	  (when nnmail-cache-accepted-message-ids
	    (nnmail-cache-close))))
      (nnfolder-save-active nnfolder-group-alist nnfolder-active-file)
      (unless result
	(nnheader-report 'nnfolder "Couldn't store article"))
      result)))