summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--journal-content.lisp13
-rw-r--r--xml-rpc-functions.lisp11
2 files changed, 19 insertions, 5 deletions
diff --git a/journal-content.lisp b/journal-content.lisp
index 3d286b3..29f01e4 100644
--- a/journal-content.lisp
+++ b/journal-content.lisp
@@ -279,16 +279,19 @@
(setf (%trackbacks-about journal-entry) new-value))
-(defun make-journal-entry-id ()
+(defun find-largest-post-id ()
#.(locally-enable-sql-reader-syntax)
(prog1
- (1+ (or (single-object (select [max [slot-value 'journal-entry 'id]]
- :from [journal-entry]
- :flatp t))
- -1))
+ (single-object (select [max [slot-value 'journal-entry 'id]]
+ :from [journal-entry]
+ :flatp t))
#.(restore-sql-reader-syntax-state)))
+(defun make-journal-entry-id ()
+ (1+ (or (find-largest-post-id) -1)))
+
+
(defun make-journal-comment-id ()
#.(locally-enable-sql-reader-syntax)
(prog1
diff --git a/xml-rpc-functions.lisp b/xml-rpc-functions.lisp
index 41ee2a3..7c914b9 100644
--- a/xml-rpc-functions.lisp
+++ b/xml-rpc-functions.lisp
@@ -55,6 +55,17 @@
:title title)))
+(defun mulk.journal.xml-rpc::|metaWeblog.getCategories| (blogid username password)
+ (declare (ignore blogid username password))
+ (list))
+
+
+(defun mulk.journal.xml-rpc::|metaWeblog.getRecentPosts| (blogid username password number-of-posts)
+ (declare (ignore blogid))
+ (loop for post-id from (or (find-largest-post-id) 0) above (max 0 (- (or (find-largest-post-id) 0) number-of-posts))
+ collect (mulk.journal.xml-rpc::|metaWeblog.getPost| post-id username password)))
+
+
(defun create-or-edit-post (body title &key entry-type post-id)
(with-transaction ()
(let* ((entry (if post-id