diff --git a/src/handlers/main.lisp b/src/handlers/main.lisp index 279e3a4..e36dd8c 100644 --- a/src/handlers/main.lisp +++ b/src/handlers/main.lisp @@ -24,6 +24,9 @@ (local-time:now) :format '((:hour 2) ":" (:min 2) ":" (:sec 2)))) +(defun today+now () + (format nil "~a ~a" (today) (now))) + (defun generate-uuid () (parse-integer (format nil "~A~A~A" (sb-posix:getpid) diff --git a/src/handlers/questionnaire.lisp b/src/handlers/questionnaire.lisp index 00baa7b..ae7559f 100644 --- a/src/handlers/questionnaire.lisp +++ b/src/handlers/questionnaire.lisp @@ -17,11 +17,11 @@ (ml-survey/views:sus-form)) (defun process-questionnaire-post (request survey) - (let ((post-params (post-parameters* request)) - (questionnaire-id (generate-uuid))) - (store-response (ensure-data-file-exist (ml-survey:survey-id survey) - questionnaire-id) - (push (format nil "~aT~a" (today) (now)) post-params)) + (let* ((post-params (post-parameters* request)) + (questionnaire-id (generate-uuid)) + (questionnaire-data-file (ensure-data-file-exist (ml-survey:survey-id survey) + questionnaire-id))) + (store-response questionnaire-data-file (push (today+now) post-params)) (ml-survey/views:questionnaire-submit))) (define-easy-handler (questionnaire :uri #'questionnaire-uri) (lang)