diff options
| author | Armand Philippot <git@armandphilippot.com> | 2022-02-20 16:11:50 +0100 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2022-02-20 16:15:08 +0100 |
| commit | 73a5c7fae9ffbe9ada721148c8c454a643aceebe (patch) | |
| tree | c8fad013ed9b5dd589add87f8d45cf02bbfc6e91 /public/projects/js-small-apps/budget-app/lib/class-user.js | |
| parent | b01239fbdcc5bbc5921f73ec0e8fee7bedd5c8e8 (diff) | |
chore!: restructure repo
I separated public files from the config/dev files. It improves repo
readability.
I also moved dotenv helper to public/inc directory and extract the
Matomo tracker in the same directory.
Diffstat (limited to 'public/projects/js-small-apps/budget-app/lib/class-user.js')
| -rw-r--r-- | public/projects/js-small-apps/budget-app/lib/class-user.js | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/public/projects/js-small-apps/budget-app/lib/class-user.js b/public/projects/js-small-apps/budget-app/lib/class-user.js new file mode 100644 index 0000000..e0e137b --- /dev/null +++ b/public/projects/js-small-apps/budget-app/lib/class-user.js @@ -0,0 +1,79 @@ +import Budget from "./class-budget.js"; + +class User { + #id = 0; + #username = "Anonymous"; + #firstName = "John"; + #lastName = "Doe"; + #role = "admin"; + #locale = "en-US"; + #accountCreation = new Date(); + #budget = 0; + + constructor(id, username) { + this.#id = id; + this.#username = username; + } + + get id() { + return this.#id; + } + + set username(name) { + this.#username = name; + } + + get username() { + return this.#username; + } + + set firstName(name) { + this.#firstName = name; + } + + get firstName() { + return this.#firstName; + } + + set lastName(name) { + this.#lastName = name; + } + + get lastName() { + return this.#lastName; + } + + set role(string) { + this.#role = string; + } + + get role() { + return this.#role; + } + + set locale(code) { + this.#locale = code; + } + + get locale() { + return this.#locale; + } + + get accountCreation() { + return this.#accountCreation; + } + + set budget(number) { + this.#budget = new Budget(number); + } + + get budget() { + return this.#budget; + } + + name() { + return `${this.#firstName} ${this.#lastName}`; + } +} + +export default User; |
