Skip to content

Commit eb4e5ee

Browse files
committed
refactor
1 parent 92ac3db commit eb4e5ee

File tree

1 file changed

+86
-76
lines changed

1 file changed

+86
-76
lines changed

services/static-webserver/client/source/class/osparc/po/UsersPending.js

Lines changed: 86 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -56,77 +56,6 @@ qx.Class.define("osparc.po.UsersPending", {
5656
return form;
5757
},
5858

59-
createApproveButton: function(email) {
60-
const button = new qx.ui.form.Button(qx.locale.Manager.tr("Approve"));
61-
button.addListener("execute", () => {
62-
const form = this.createInvitationForm(false);
63-
const approveBtn = new osparc.ui.form.FetchButton(qx.locale.Manager.tr("Approve"));
64-
approveBtn.set({
65-
appearance: "form-button"
66-
});
67-
form.addButton(approveBtn);
68-
const layout = new qx.ui.container.Composite(new qx.ui.layout.VBox(10));
69-
const invitationForm = new qx.ui.form.renderer.Single(form);
70-
layout.add(invitationForm);
71-
const win = osparc.ui.window.Window.popUpInWindow(layout, email, 350, 150).set({
72-
clickAwayClose: false,
73-
resizable: false,
74-
showClose: true
75-
});
76-
win.open();
77-
approveBtn.addListener("execute", () => {
78-
if (!osparc.data.Permissions.getInstance().canDo("user.invitation.generate", true)) {
79-
return;
80-
}
81-
if (form.validate()) {
82-
approveBtn.setFetching(true);
83-
const params = {
84-
data: {
85-
email,
86-
},
87-
};
88-
params.data["invitation"] = {};
89-
const extraCreditsInUsd = form.getItems()["credits"].getValue();
90-
if (extraCreditsInUsd > 0) {
91-
params.data["invitation"]["extraCreditsInUsd"] = extraCreditsInUsd;
92-
}
93-
if (form.getItems()["withExpiration"].getValue()) {
94-
params.data["invitation"]["trialAccountDays"] = form.getItems()["trialDays"].getValue();
95-
}
96-
osparc.data.Resources.fetch("poUsers", "approveUser", params)
97-
.then(() => {
98-
osparc.FlashMessenger.logAs(qx.locale.Manager.tr("User approved"), "INFO");
99-
})
100-
.catch(err => osparc.FlashMessenger.logError(err))
101-
.finally(() => {
102-
approveBtn.setFetching(false);
103-
win.close();
104-
});
105-
}
106-
});
107-
});
108-
return button;
109-
},
110-
111-
createRejectButton: function(email) {
112-
const button = new osparc.ui.form.FetchButton(qx.locale.Manager.tr("Reject"));
113-
button.addListener("execute", () => {
114-
button.setFetching(true);
115-
const params = {
116-
data: {
117-
email,
118-
},
119-
};
120-
osparc.data.Resources.fetch("poUsers", "rejectUser", params)
121-
.then(() => {
122-
osparc.FlashMessenger.logAs(qx.locale.Manager.tr("User denied"), "INFO");
123-
})
124-
.catch(err => osparc.FlashMessenger.logError(err))
125-
.finally(() => button.setFetching(false));
126-
});
127-
return button;
128-
},
129-
13059
createResendEmailButton: function(email) {
13160
const button = new osparc.ui.form.FetchButton(qx.locale.Manager.tr("Resend Email"));
13261
button.addListener("execute", () => {
@@ -274,14 +203,14 @@ qx.Class.define("osparc.po.UsersPending", {
274203

275204
switch (pendingUser.accountRequestStatus) {
276205
case "PENDING": {
277-
const approveButton = this.self().createApproveButton(pendingUser.email);
206+
const approveButton = this.__createApproveButton(pendingUser.email);
278207
buttonsLayout.add(approveButton);
279-
const rejectButton = this.self().createRejectButton(pendingUser.email);
208+
const rejectButton = this.__createRejectButton(pendingUser.email);
280209
buttonsLayout.add(rejectButton);
281210
break;
282211
}
283212
case "REJECTED": {
284-
const approveButton = this.self().createApproveButton(pendingUser.email);
213+
const approveButton = this.__createApproveButton(pendingUser.email);
285214
approveButton.setEnabled(false); // avoid changing decision for now
286215
buttonsLayout.add(approveButton);
287216
break;
@@ -290,7 +219,7 @@ qx.Class.define("osparc.po.UsersPending", {
290219
const resendEmailButton = this.self().createResendEmailButton(pendingUser.email);
291220
resendEmailButton.setEnabled(false);
292221
buttonsLayout.add(resendEmailButton);
293-
const rejectButton = this.self().createRejectButton(pendingUser.email);
222+
const rejectButton = this.__createRejectButton(pendingUser.email);
294223
rejectButton.setEnabled(false); // avoid changing decision for now
295224
buttonsLayout.add(rejectButton);
296225
break;
@@ -314,6 +243,87 @@ qx.Class.define("osparc.po.UsersPending", {
314243
this.__addRows(pendingUsers.concat(reviewedUsers));
315244
})
316245
.catch(err => osparc.FlashMessenger.logError(err));
317-
}
246+
},
247+
248+
__createApproveButton: function(email) {
249+
const button = new qx.ui.form.Button(qx.locale.Manager.tr("Approve"));
250+
button.addListener("execute", () => {
251+
const form = this.createInvitationForm(false);
252+
const approveBtn = new osparc.ui.form.FetchButton(qx.locale.Manager.tr("Approve"));
253+
approveBtn.set({
254+
appearance: "form-button"
255+
});
256+
form.addButton(approveBtn);
257+
const layout = new qx.ui.container.Composite(new qx.ui.layout.VBox(10));
258+
const invitationForm = new qx.ui.form.renderer.Single(form);
259+
layout.add(invitationForm);
260+
const win = osparc.ui.window.Window.popUpInWindow(layout, email, 350, 150).set({
261+
clickAwayClose: false,
262+
resizable: false,
263+
showClose: true
264+
});
265+
win.open();
266+
approveBtn.addListener("execute", () => {
267+
if (!osparc.data.Permissions.getInstance().canDo("user.invitation.generate", true)) {
268+
return;
269+
}
270+
if (form.validate()) {
271+
const approveUser = () => {
272+
approveBtn.setFetching(true);
273+
this.__approveUser(email, form)
274+
.then(() => {
275+
osparc.FlashMessenger.logAs(qx.locale.Manager.tr("User approved"), "INFO");
276+
})
277+
.catch(err => osparc.FlashMessenger.logError(err))
278+
.finally(() => {
279+
approveBtn.setFetching(false);
280+
win.close();
281+
});
282+
};
283+
284+
285+
}
286+
});
287+
});
288+
return button;
289+
},
290+
291+
__createRejectButton: function(email) {
292+
const button = new osparc.ui.form.FetchButton(qx.locale.Manager.tr("Reject"));
293+
button.addListener("execute", () => {
294+
button.setFetching(true);
295+
this.__rejectUser(email)
296+
.then(() => osparc.FlashMessenger.logAs(qx.locale.Manager.tr("User denied"), "INFO"))
297+
.catch(err => osparc.FlashMessenger.logError(err))
298+
.finally(() => button.setFetching(false));
299+
});
300+
return button;
301+
},
302+
303+
__approveUser: function(email, form) {
304+
const params = {
305+
data: {
306+
email,
307+
},
308+
};
309+
params.data["invitation"] = {};
310+
const extraCreditsInUsd = form.getItems()["credits"].getValue();
311+
if (extraCreditsInUsd > 0) {
312+
params.data["invitation"]["extraCreditsInUsd"] = extraCreditsInUsd;
313+
}
314+
if (form.getItems()["withExpiration"].getValue()) {
315+
params.data["invitation"]["trialAccountDays"] = form.getItems()["trialDays"].getValue();
316+
}
317+
return osparc.data.Resources.fetch("poUsers", "approveUser", params);
318+
},
319+
320+
__rejectUser: function(email) {
321+
const params = {
322+
data: {
323+
email,
324+
},
325+
};
326+
return osparc.data.Resources.fetch("poUsers", "rejectUser", params);
327+
},
318328
}
319329
});

0 commit comments

Comments
 (0)