diff --git a/tekuti.el b/tekuti.el index e01c609..bbd4e56 100644 --- a/tekuti.el +++ b/tekuti.el @@ -93,7 +93,7 @@ data "&")) -(defun tekuti--send-finished (status buffer args) +(defun tekuti--send-finished (status buffer args updatep) (pcase-exhaustive status (`(:redirect ,url . ,_) (save-excursion @@ -117,9 +117,9 @@ (car (url-path-and-query (url-generic-parse-url url)))) "\n")))) - (message "Created new post: %s" url)) + (message "%s post: %s" (if updatep "Updated" "Created new") url)) (`(:error (error http ,code) . ,_) - (message "Failed to create post: %d" code)))) + (message "Failed to %s post: %d" (if updatep "update" "create") code)))) (defun tekuti--get-update-url () (save-excursion @@ -133,12 +133,14 @@ (url-request-method "POST") (url-request-extra-headers `(("Content-Type" . "application/x-www-form-urlencoded"))) - (url-request-data (tekuti-form-encode-data data))) + (url-request-data (tekuti-form-encode-data data)) + (previous-update-url (tekuti--get-update-url)) + (updatep (not (null previous-update-url)))) (url-retrieve (format "%s%s" tekuti-host - (or (tekuti--get-update-url) + (or previous-update-url "/admin/new-post")) #'tekuti--send-finished - (list (current-buffer) data)))) + (list (current-buffer) data updatep)))) (provide 'tekuti) ;;; tekuti.el ends here