diff of 14e8e2cdcc1ef50dc58e55ab3ef7aff94aed6c10

14e8e2cdcc1ef50dc58e55ab3ef7aff94aed6c10
diff --git a/src/model/settings.lisp b/src/model/settings.lisp
index b925d88..824d7e8 100644
--- a/src/model/settings.lisp
+++ b/src/model/settings.lisp
@@ -73,8 +73,14 @@
 				   )))
 	       *setting-fields*)))
 
-     (murja.middleware.db:with-db
-	 (defparameter *settings* (make-instance 'Settings)))
+     (defparameter *settings*
+       (block settings-loader 
+	 (handler-bind ((cl-postgres:database-socket-error
+			  (lambda (c)
+			    (declare (ignore c))
+			    (return-from settings-loader nil))))
+	   (murja.middleware.db:with-db
+	       (make-instance 'Settings)))))
 
      ,@(map 'list
 	    (lambda (setting)
@@ -105,13 +111,13 @@
 
   (let ((*inside-defsetting?* t))
     `(let ((*inside-defsetting?* t))
-       ,@(map 'list
-	      (lambda (config)
-		(destructuring-bind (name value . _) config
-		  (declare (ignore _))
-		  `(defsetting ,name ,value)))
-	      body)
-       (create-settings))))
+	 ,@(map 'list
+		(lambda (config)
+		  (destructuring-bind (name value . _) config
+		    (declare (ignore _))
+		    `(defsetting ,name ,value)))
+		body)
+	 (create-settings))))
   
 
 ;; (defsetting random-size 45)