aboutsummaryrefslogtreecommitdiff
path: root/apps/dreki/src/dreki_id.erl
diff options
context:
space:
mode:
Diffstat (limited to 'apps/dreki/src/dreki_id.erl')
-rw-r--r--apps/dreki/src/dreki_id.erl13
1 files changed, 13 insertions, 0 deletions
diff --git a/apps/dreki/src/dreki_id.erl b/apps/dreki/src/dreki_id.erl
new file mode 100644
index 0000000..17a3e48
--- /dev/null
+++ b/apps/dreki/src/dreki_id.erl
@@ -0,0 +1,13 @@
+-module(dreki_id).
+
+-export([get/0, valid/1]).
+
+get() ->
+ uuid:get_v4().
+
+valid(MaybeId) ->
+ case re:run(MaybeId, "^[a-z0-9-_.]{3,100}$") of
+ nomatch -> {error, {invalid_dreki_id, MaybeId}};
+ {match, _} -> ok
+ end.
+