/[gnats]/gnats/gnats/gnats.el
ViewVC logotype

Diff of /gnats/gnats/gnats.el

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.33 by pdm, Sun Aug 4 17:16:29 2002 UTC revision 1.34 by chewie, Mon Nov 14 22:36:57 2005 UTC
# Line 442  If the text is not found, nil is returne Line 442  If the text is not found, nil is returne
442  Return either the error message from the server, or nil if the response  Return either the error message from the server, or nil if the response
443  indicates that the operation was successful."  indicates that the operation was successful."
444    (if (and (>= (car (car resp)) 200)    (if (and (>= (car (car resp)) 200)
445             (< (car (car resp)) 300))             (<= (car (car resp)) 351))
446        nil        nil
447      (concat (nth 1 (car resp)) "\n")))      (concat (nth 1 (car resp)) "\n")))
448    
# Line 491  are applied, the PR contents are reloade Line 491  are applied, the PR contents are reloade
491    (let ((field-list (get gnats-server-conn 'field-list))    (let ((field-list (get gnats-server-conn 'field-list))
492          (validate-res (mapconcat 'gnats-validate-field          (validate-res (mapconcat 'gnats-validate-field
493                                   (get gnats-server-conn 'field-list)                                   (get gnats-server-conn 'field-list)
494                                   "")))                                   ""))
495            (server-resp nil))
496      (if (not (string= validate-res ""))      (if (not (string= validate-res ""))
497          (error validate-res))          (error validate-res))
498      (while field-list      (while field-list
# Line 505  are applied, the PR contents are reloade Line 506  are applied, the PR contents are reloade
506          (setq field-list (cdr field-list))))          (setq field-list (cdr field-list))))
507      (gnats-clear-edit-buffer)      (gnats-clear-edit-buffer)
508      (gnats-get-pr (get gnats-server-conn 'pr-number))      (gnats-get-pr (get gnats-server-conn 'pr-number))
509      (gnats-edit-mode t)))      (gnats-view-mode)
510        (message "Changes submitted - switched back to view mode.")))
511    
512  (defun gnats-apply-or-submit ()  (defun gnats-apply-or-submit ()
513    "If in edit mode apply the current set of changes, or submit the new PR."    "If in edit mode apply the current set of changes, or submit the new PR."
# Line 535  are applied, the PR contents are reloade Line 537  are applied, the PR contents are reloade
537                          "\n")))                          "\n")))
538          (setq field-list (cdr field-list)))          (setq field-list (cdr field-list)))
539        res)))        res)))
540    (defun gnats-server-resp-to-string (server-resp)
541      "Convert a server respons \(list of lists) to a string."
542      (apply #'concat (mapcar #'cadr server-resp)))
543    
544    
545  (defun gnats-submit-pr ()  (defun gnats-submit-pr ()
546    "Submit the current PR; if successful, the buffer is killed."    "Submit the current PR; if successful, the buffer is killed."
547    (let* ((pr-contents (gnats-get-pr-contents))    (let* ((pr-contents (gnats-get-pr-contents))
548           (server-resp           (server-resp
549            (gnats-server-response-ok             (gnats-send-command-and-text "SUBM" pr-contents))
550             (gnats-send-command-and-text "SUBM" pr-contents))))           (server-resp-fail
551      (if server-resp            (gnats-server-response-ok server-resp)))
552          (error server-resp)      (if server-resp-fail
553        ;(kill-buffer (get gnats-server-conn 'server-buffer))          (error (gnats-server-resp-to-string server-resp))
554        (message "PR successfully submitted."))))          ; (kill-buffer (get gnats-server-conn 'server-buffer))
555            (progn
556              (kill-buffer nil)
557              (message (format "PR successfully submitted: %s" (gnats-server-resp-to-string server-resp)))))))
558    
559  (defun gnats-insert-char (count)  (defun gnats-insert-char (count)
560    "Insert COUNT chars of the `last-command-char' into the current buffer."    "Insert COUNT chars of the `last-command-char' into the current buffer."
# Line 1225  The alias is then set as the editting e- Line 1234  The alias is then set as the editting e-
1234                           (< (car (car resp)) 400))                           (< (car (car resp)) 400))
1235                      (nth 1 (car resp))                      (nth 1 (car resp))
1236                    user-mail-address)))                    user-mail-address)))
1237    ;;    (setq alias user-mail-address)
1238        (setq alias (get gnats-server-conn 'server-username))
1239      (put gnats-server-conn 'mail-alias alias)      (put gnats-server-conn 'mail-alias alias)
1240      (when alias      (when alias
1241        (gnats-send-command "EDITADDR" alias))        (gnats-send-command "EDITADDR" alias))
# Line 1329  locking the database." Line 1340  locking the database."
1340                (switch-to-buffer query-pr-buffer)                (switch-to-buffer query-pr-buffer)
1341                (error "Couldn't retrieve server info")))                (error "Couldn't retrieve server info")))
1342          (error "Couldn't retrieve server info from query-pr"))          (error "Couldn't retrieve server info from query-pr"))
1343        (kill-buffer query-pr-buffer))))        (if query-pr-buffer
1344              (kill-buffer query-pr-buffer)))))
1345    
1346  ;;;###autoload  ;;;###autoload
1347  (defun send-pr (&optional arg)  (defun send-pr (&optional arg)
# Line 1356  If a prefix argument is given, run `gnat Line 1368  If a prefix argument is given, run `gnat
1368            (setq success t))            (setq success t))
1369        (if (not success)        (if (not success)
1370            (progn            (progn
1371              (kill-buffer edit-buffer)              (if edit-buffer
1372                    (kill-buffer edit-buffer))
1373              (kill-buffer (get gnats-server-conn 'server-buffer)))              (kill-buffer (get gnats-server-conn 'server-buffer)))
1374          (switch-to-buffer edit-buffer)          (switch-to-buffer edit-buffer)
1375          (goto-char (point-min))))))          (goto-char (point-min))))))
# Line 1386  If a prefix argument is given, run `gnat Line 1399  If a prefix argument is given, run `gnat
1399                  (setq success t))))                  (setq success t))))
1400        (if (not success)        (if (not success)
1401            (progn            (progn
1402              (kill-buffer edit-buffer)              (if edit-buffer
1403                    (kill-buffer edit-buffer))
1404              (kill-buffer (get gnats-server-conn 'server-buffer)))              (kill-buffer (get gnats-server-conn 'server-buffer)))
1405          (switch-to-buffer edit-buffer)          (switch-to-buffer edit-buffer)
1406          (goto-char (point-min))))))          (goto-char (point-min))))))
# Line 1459  The function works in the query buffers. Line 1473  The function works in the query buffers.
1473    "Keymap for GNATS view mode.")    "Keymap for GNATS view mode.")
1474  (when (null gnats-view-mode-map)  (when (null gnats-view-mode-map)
1475    (setq gnats-view-mode-map (make-keymap))    (setq gnats-view-mode-map (make-keymap))
1476    (define-key gnats-view-mode-map "e" 'gnats-view-edit-pr))    (define-key gnats-view-mode-map "e" 'gnats-view-edit-pr)
1477      (define-key gnats-view-mode-map "D" 'gnats-change-database)
1478      (define-key gnats-view-mode-map "g" 'gnats-query-reread)
1479      (define-key gnats-view-mode-map "G" 'query-pr)
1480      (define-key gnats-view-mode-map "q" 'bury-buffer)
1481      )
1482    
1483    
1484  (defvar gnats-view-mode-hook nil  (defvar gnats-view-mode-hook nil
1485    "Hook run by `gnats-view-mode'.")    "Hook run by `gnats-view-mode'.")
# Line 1535  The function works in the query buffers. Line 1555  The function works in the query buffers.
1555                  (setq success t))))                  (setq success t))))
1556        (if (not success)        (if (not success)
1557            (progn            (progn
1558              (kill-buffer edit-buffer)              (if edit-buffer
1559                    (kill-buffer edit-buffer))
1560              (kill-buffer (get gnats-server-conn 'server-buffer)))              (kill-buffer (get gnats-server-conn 'server-buffer)))
1561          (switch-to-buffer edit-buffer)          (switch-to-buffer edit-buffer)
1562          (goto-char (point-min))))))          (goto-char (point-min))))))
# Line 1600  QUERY is a string representing a query i Line 1621  QUERY is a string representing a query i
1621            (setq success t))            (setq success t))
1622        (if (not success)        (if (not success)
1623            (progn            (progn
1624              (kill-buffer query-buffer)              (if query-buffer
1625                    (kill-buffer query-buffer))
1626              (kill-buffer (get gnats-server-conn 'server-buffer)))              (kill-buffer (get gnats-server-conn 'server-buffer)))
1627          (switch-to-buffer query-buffer)          (switch-to-buffer query-buffer)
1628          (message "%d matching PRs." (count-lines (point-min) (point-max)))          (message "%d matching PRs." (count-lines (point-min) (point-max)))
# Line 1626  QUERY is a string representing a query i Line 1648  QUERY is a string representing a query i
1648           (string-to-number           (string-to-number
1649            (read-from-minibuffer "Port: " (if gnats-port            (read-from-minibuffer "Port: " (if gnats-port
1650                                               (format "%d" gnats-port)                                               (format "%d" gnats-port)
1651                                             1529)))                                             "1529")))
1652           (read-from-minibuffer "User: " (or gnats-user (user-login-name)))))           (read-from-minibuffer "User: " (or gnats-user (user-login-name)))))
1653    (setq gnats-database database    (setq gnats-database database
1654          gnats-server host          gnats-server host

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26