Function: nnmairix-widget-make-query-from-widgets

nnmairix-widget-make-query-from-widgets is a byte-compiled function defined in nnmairix.el.gz.

Signature

(nnmairix-widget-make-query-from-widgets WIDGETS)

Documentation

Create mairix query from widget values WIDGETS.

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nnmairix.el.gz
(defun nnmairix-widget-make-query-from-widgets (widgets)
  "Create mairix query from widget values WIDGETS."
  (let (query temp flag)
    ;; first we do the editable fields
    (dolist (cur nnmairix-widget-fields-list)
      ;; See if checkbox is checked
      (when (widget-value
	     (cadr (assoc (concat "c" (car (cddr cur))) widgets)))
	;; create query for the field
	(push
	 (concat
	  (nth 1 cur)
	  ":"
	  (nnmairix-replace-illegal-chars
	   (widget-value
	   (cadr (assoc (concat "e" (car (cddr cur))) widgets)))))
	 query)))
    ;; Flags
    (when (member 'flags nnmairix-widget-other)
      (setq flag
	    (mapconcat
             (lambda (flag)
               (setq temp
                     (widget-value (cadr (assoc (car flag) nnmairix-widgets))))
               (if (string= "yes" temp)
                   (cadr flag)
                 (if (string= "no" temp)
                     (concat "-" (cadr flag)))))
	     '(("seen" "s") ("replied" "r") ("flagged" "f")) ""))
      (when (not (zerop (length flag)))
	(push (concat "F:" flag) query)))
    ;; return query string
    (mapconcat #'identity query " ")))