sbbs.el

Check-in [46949449f3]
Login
Overview
Comment:Add support for VIP-posting
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | master | trunk
Files: files | file ages | folders
SHA3-256: 46949449f3f69fb0cf2229d241ef075be34a3b91321ab10346a448b48a92e2a4
User & Date: zge on 2022-01-22 18:27:00
Other Links: branch diff | manifest | tags
Context
2022-01-22
18:49
Always kill HTTP response buffer after processing it check-in: 67d30a2317 user: zge tags: master, trunk
18:27
Add support for VIP-posting check-in: 46949449f3 user: zge tags: master, trunk
18:12
Add sbbs-open-externally command check-in: 92c5d47565 user: philip tags: master, trunk
Changes

Modified sbbs.el from [187923b54c] to [a4c9b26bff].

649
650
651
652
653
654
655
656
657
658







659
660
661
662
663
664
665
666
667

668
669
670
671
672
673
674
649
650
651
652
653
654
655



656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679







-
-
-
+
+
+
+
+
+
+









+







  (interactive)
  (when (search-backward-regexp "\\(\\*\\*\\|==\\|__\\|~~\\)" nil t)
    (looking-at (concat "\\(" (regexp-quote (match-string 1)) "\\).*?"
                        "\\(" (regexp-quote (match-string 1)) "\\)"))
    (replace-match "" nil nil nil 2)
    (replace-match "" nil nil nil 1)))

(defun sbbs-compose-create ()
  "Upload response or thread to board."
  (interactive)
(defun sbbs-compose-create (vip)
  "Upload response or thread to board.
If VIP is non-nil (or when invoked with a prefix argument), mark
the post as \"VIP\", ie. don't bump the thread."
  (interactive "P")
  (when (and vip sbbs--thread-id)
    (user-error "A new thread cannot be VIP"))
  (let ((board sbbs--board)
        (url-request-method "POST")
        (url-request-extra-headers
         '(("Content-Type" . "application/x-www-form-urlencoded")))
        (url-request-data
         (url-build-query-string
          `((epistula ,(buffer-string))
            (ornamentum "") (name "") (message "")
            (frontpage ,(if sbbs--thread-id "true" "false"))
            (vip ,(if vip "true" "false"))
            . ,(and (not sbbs--thread-id)
                    `((titulus ,(read-string "Headline: ")))))))
        (url (if sbbs--thread-id
                 (sbbs--board-url (format "%d/post" sbbs--thread-id))
               (sbbs--board-url "/post"))))
    (url-retrieve url (lambda (status buf)
                        (if (plist-get status :error)