about summary refs log tree commit diff
path: root/src/access.go
diff options
context:
space:
mode:
authorEmile <hanemile@protonmail.com>2019-10-20 16:53:28 +0200
committerEmile <hanemile@protonmail.com>2019-10-20 16:53:28 +0200
commitc856c7e66e3ad29ea0491f1f4951b31deb8279ea (patch)
treee32daefbeec30e667f261eca2c5a3409e783453d /src/access.go
parent22e3029cbf5fa7fd64bfaea2e4dcd011c40a4236 (diff)
functional
Diffstat (limited to 'src/access.go')
-rw-r--r--src/access.go26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/access.go b/src/access.go
new file mode 100644
index 0000000..6de2c05
--- /dev/null
+++ b/src/access.go
@@ -0,0 +1,26 @@
+package main
+
+import (
+	"math/rand"
+	"strings"
+	"time"
+)
+
+func newAccessCode(length int) string {
+	// seed the random numbergenerator
+	rand.Seed(time.Now().UnixNano())
+
+	// define the alphabet
+	chars := []rune("ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
+		"abcdefghijklmnopqrstuvwxyz" +
+		"0123456789")
+
+	// build the accesscode
+	var b strings.Builder
+	for i := 0; i < length; i++ {
+		b.WriteRune(chars[rand.Intn(len(chars))])
+	}
+	str := b.String()
+
+	return str
+}