clojurecup2014-luduverse/src/luduverse/db-models/user.clj

20 lines
471 B
Clojure
Raw Normal View History

(ns luduverse.db-models.user
(:require [korma.core :refer :all]
[luduverse.db :refer :all]))
(defn user-id [username]
(first (select users
(fields :id)
(where {:name username})
(limit 1))))
(defn exists? [username]
(not (empty? (user-id username))))
(defn create! [username]
(insert users (values {:name username})))
(defn unique-user [username]
(if-not (exists? username) (create! username))
(user-id username))