diff --git a/useradd.rkt b/useradd.rkt new file mode 100644 index 0000000..5ead443 --- /dev/null +++ b/useradd.rkt @@ -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.")) diff --git a/userdel.rkt b/userdel.rkt new file mode 100644 index 0000000..0b0b1ea --- /dev/null +++ b/userdel.rkt @@ -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)))