Add user management tools (useradd, userdel).

This commit is contained in:
Feufochmar 2021-05-04 18:19:41 +02:00
parent a4ba3b5de3
commit 77393fe452
2 changed files with 56 additions and 0 deletions

31
useradd.rkt Normal file
View File

@ -0,0 +1,31 @@
#lang racket/base
; Add a new user to the database
(require
"src/notepad/user.rkt"
"src/pages/notepad.rkt" ; To open the database
)
(displayln "Adding a new user.")
; Ask for user name
(displayln "Enter the user name:")
(define name (read-line))
(when (eof-object? name)
(exit 1))
; Check if user already exists
(when (get-user-by-name name)
(displayln (string-append "User " name " already exists!"))
(exit 2))
; Ask for user password
(displayln "Enter the user password:")
(define password (read-line))
(when (eof-object? name)
(exit 1))
; Add user to db
(void
(new-user name password))
(displayln (string-append "User " name " added."))

25
userdel.rkt Normal file
View File

@ -0,0 +1,25 @@
#lang racket/base
; Remove a user from the database
(require
"src/notepad/user.rkt"
"src/pages/notepad.rkt" ; To open the database
)
(displayln "Removing a user.")
; Ask for user name
(displayln "Enter the user name:")
(define name (read-line))
(when (eof-object? name)
(exit 1))
; Get user
(define usr (get-user-by-name name))
(cond
(usr
(remove-user usr)
(displayln (string-append "User " name " removed.")))
(#t
(displayln (string-append "User " name " does not exists!"))
(exit 2)))