aboutsummaryrefslogtreecommitdiffstats
path: root/src/models/User.js
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2017-10-13 12:29:40 +0200
committerLibravatar Stefan Malzner <stefan@adlk.io>2017-10-13 12:29:40 +0200
commit58cda9cc7fb79ca9df6746de7f9662bc08dc156a (patch)
tree1211600c2a5d3b5f81c435c6896618111a611720 /src/models/User.js
downloadferdium-app-58cda9cc7fb79ca9df6746de7f9662bc08dc156a.tar.gz
ferdium-app-58cda9cc7fb79ca9df6746de7f9662bc08dc156a.tar.zst
ferdium-app-58cda9cc7fb79ca9df6746de7f9662bc08dc156a.zip
initial commit
Diffstat (limited to 'src/models/User.js')
-rw-r--r--src/models/User.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/models/User.js b/src/models/User.js
new file mode 100644
index 000000000..94b579928
--- /dev/null
+++ b/src/models/User.js
@@ -0,0 +1,41 @@
1import { observable } from 'mobx';
2
3export default class User {
4 id = null;
5 @observable email = null;
6 @observable firstname = null;
7 @observable lastname = null;
8 @observable organization = null;
9 @observable accountType = null;
10 @observable emailIsConfirmed = true; // better assume it's confirmed to avoid noise
11 @observable subscription = {};
12 @observable isSubscriptionOwner = false;
13 @observable isPremium = false;
14 @observable beta = false;
15 @observable donor = {};
16 @observable isDonor = false;
17 @observable isMiner = false;
18
19 constructor(data: Object) {
20 if (!data.id) {
21 throw Error('User requires Id');
22 }
23
24 this.id = data.id;
25 this.email = data.email || this.email;
26 this.firstname = data.firstname || this.firstname;
27 this.lastname = data.lastname || this.lastname;
28 this.organization = data.organization || this.organization;
29 this.accountType = data.accountType || this.accountType;
30 this.isPremium = data.isPremium || this.isPremium;
31 this.beta = data.beta || this.beta;
32 this.donor = data.donor || this.donor;
33 this.isDonor = data.isDonor || this.isDonor;
34 this.isSubscriptionOwner = data.isSubscriptionOwner || this.isSubscriptionOwner;
35 this.isMiner = data.isMiner || this.isMiner;
36 }
37
38 // @computed get isPremium() {
39 //
40 // }
41}