Skip to content

Commit fefde09

Browse files
authored
🐛 [Frontend] Runs: Tap Info button for the second time (#7788)
1 parent f7d77da commit fefde09

File tree

5 files changed

+37
-17
lines changed

5 files changed

+37
-17
lines changed

services/static-webserver/client/source/class/osparc/dashboard/ResourceBrowserBase.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -618,7 +618,7 @@ qx.Class.define("osparc.dashboard.ResourceBrowserBase", {
618618
return null;
619619
}
620620

621-
const editButton = new qx.ui.menu.Button(this.tr("Open"));
621+
const editButton = new qx.ui.menu.Button(this.tr("Edit"));
622622
editButton.addListener("execute", () => {
623623
const isStudyCreation = false;
624624
this._startStudyById(templateData["uuid"], null, null, isStudyCreation);

services/static-webserver/client/source/class/osparc/data/Roles.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ qx.Class.define("osparc.data.Roles", {
2222
statics: {
2323
ORG: {
2424
"noRead": {
25+
id: "noRead",
2526
label: qx.locale.Manager.tr("Restricted Member"),
2627
longLabel: qx.locale.Manager.tr("Restricted member: no Read access"),
2728
canDo: [
@@ -34,6 +35,7 @@ qx.Class.define("osparc.data.Roles", {
3435
},
3536
},
3637
"read": {
38+
id: "read",
3739
label: qx.locale.Manager.tr("Member"),
3840
longLabel: qx.locale.Manager.tr("Member: Read access"),
3941
canDo: [
@@ -47,6 +49,7 @@ qx.Class.define("osparc.data.Roles", {
4749
},
4850
},
4951
"write": {
52+
id: "write",
5053
label: qx.locale.Manager.tr("Manager"),
5154
longLabel: qx.locale.Manager.tr("Manager: Read/Write access"),
5255
canDo: [
@@ -61,6 +64,7 @@ qx.Class.define("osparc.data.Roles", {
6164
},
6265
},
6366
"delete": {
67+
id: "delete",
6468
label: qx.locale.Manager.tr("Administrator"),
6569
longLabel: qx.locale.Manager.tr("Admin: Read/Write/Delete access"),
6670
canDo: [
@@ -76,6 +80,7 @@ qx.Class.define("osparc.data.Roles", {
7680
// study & templates
7781
STUDY: {
7882
"read": {
83+
id: "read",
7984
label: qx.locale.Manager.tr("User"),
8085
longLabel: qx.locale.Manager.tr("User: Read access"),
8186
canDo: [
@@ -88,6 +93,7 @@ qx.Class.define("osparc.data.Roles", {
8893
},
8994
},
9095
"write": {
96+
id: "write",
9197
label: qx.locale.Manager.tr("Editor"),
9298
longLabel: qx.locale.Manager.tr("Editor: Read/Write access"),
9399
canDo: [
@@ -101,6 +107,7 @@ qx.Class.define("osparc.data.Roles", {
101107
},
102108
},
103109
"delete": {
110+
id: "delete",
104111
label: qx.locale.Manager.tr("Owner"),
105112
longLabel: qx.locale.Manager.tr("Owner: Read/Write/Delete access"),
106113
canDo: [
@@ -115,6 +122,7 @@ qx.Class.define("osparc.data.Roles", {
115122
},
116123
SERVICES: {
117124
"read": {
125+
id: "read",
118126
label: qx.locale.Manager.tr("User"),
119127
longLabel: qx.locale.Manager.tr("User: Read access"),
120128
canDo: [
@@ -126,6 +134,7 @@ qx.Class.define("osparc.data.Roles", {
126134
},
127135
},
128136
"write": {
137+
id: "write",
129138
label: qx.locale.Manager.tr("Editor"),
130139
longLabel: qx.locale.Manager.tr("Editor: Read/Write access"),
131140
canDo: [
@@ -140,6 +149,7 @@ qx.Class.define("osparc.data.Roles", {
140149
},
141150
WALLET: {
142151
"read": {
152+
id: "read",
143153
label: qx.locale.Manager.tr("User"),
144154
longLabel: qx.locale.Manager.tr("User: Read access"),
145155
canDo: [
@@ -152,6 +162,7 @@ qx.Class.define("osparc.data.Roles", {
152162
},
153163
},
154164
"write": {
165+
id: "write",
155166
label: qx.locale.Manager.tr("Accountant"),
156167
longLabel: qx.locale.Manager.tr("Accountant: Read/Write access"),
157168
canDo: [
@@ -167,13 +178,15 @@ qx.Class.define("osparc.data.Roles", {
167178
},
168179
WORKSPACE: {
169180
"read": {
181+
id: "read",
170182
label: qx.locale.Manager.tr("Viewer"),
171183
longLabel: qx.locale.Manager.tr("Viewer: Read access"),
172184
canDo: [
173185
qx.locale.Manager.tr("- can inspect the content and open ") + osparc.product.Utils.getStudyAlias({plural: true}) + qx.locale.Manager.tr(" without making changes")
174186
]
175187
},
176188
"write": {
189+
id: "write",
177190
label: qx.locale.Manager.tr("Editor"),
178191
longLabel: qx.locale.Manager.tr("Editor: Read/Write access"),
179192
canDo: [
@@ -182,6 +195,7 @@ qx.Class.define("osparc.data.Roles", {
182195
]
183196
},
184197
"delete": {
198+
id: "delete",
185199
label: qx.locale.Manager.tr("Owner"),
186200
longLabel: qx.locale.Manager.tr("Owner: Read/Write/Delete access"),
187201
canDo: [

services/static-webserver/client/source/class/osparc/jobs/RunsTable.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ qx.Class.define("osparc.jobs.RunsTable", {
159159

160160
__handleButtonClick: function(action, row) {
161161
this.resetSelection();
162+
// In order to make the button tappable again, the cell needs to be unfocused (blurred)
163+
this.resetCellFocus();
162164
const rowData = this.getTableModel().getRowData(row);
163165
switch (action) {
164166
case "info": {

services/static-webserver/client/source/class/osparc/jobs/SubRunsTable.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,8 @@ qx.Class.define("osparc.jobs.SubRunsTable", {
146146

147147
__handleButtonClick: function(action, row) {
148148
this.resetSelection();
149+
// In order to make the button tappable again, the cell needs to be unfocused (blurred)
150+
this.resetCellFocus();
149151
const rowData = this.getTableModel().getRowData(row);
150152
switch (action) {
151153
case "info": {

services/static-webserver/client/source/class/osparc/ui/list/CollaboratorListItem.js

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -190,16 +190,16 @@ qx.Class.define("osparc.ui.list.CollaboratorListItem", {
190190
position: "bottom-right"
191191
});
192192

193-
const accessRights = this.getAccessRights();
194-
let currentRole = this.__getRoleInfo("read");
195-
if (this.self().canDelete(accessRights)) {
196-
currentRole = this.__getRoleInfo("delete");
197-
} else if (this.self().canWrite(accessRights)) {
198-
currentRole = this.__getRoleInfo("write");
193+
const collabAccessRights = this.getAccessRights();
194+
let collabCurrentRole = this.__getRoleInfo("read");
195+
if (this.self().canDelete(collabAccessRights)) {
196+
collabCurrentRole = this.__getRoleInfo("delete");
197+
} else if (this.self().canWrite(collabAccessRights)) {
198+
collabCurrentRole = this.__getRoleInfo("write");
199199
}
200200

201201
// promote/demote actions
202-
switch (currentRole.id) {
202+
switch (collabCurrentRole.id) {
203203
case "read": {
204204
const promoteButton = new qx.ui.menu.Button(this.tr(`Promote to ${this.__getRoleInfo("write").label}`));
205205
promoteButton.addListener("execute", () => {
@@ -213,15 +213,17 @@ qx.Class.define("osparc.ui.list.CollaboratorListItem", {
213213
}
214214
case "write": {
215215
const resource = this.getResourceType();
216-
const promoteButton = new qx.ui.menu.Button(this.tr(`Promote to ${this.__getRoleInfo("delete").label}`));
217-
promoteButton.setVisibility(resource === "service" ? "excluded" : "visible");
218-
promoteButton.addListener("execute", () => {
219-
this.fireDataEvent("promoteToOwner", {
220-
gid: this.getKey(),
221-
name: this.getTitle()
216+
if (resource !== "service") {
217+
// there is no owner role for services
218+
const promoteButton = new qx.ui.menu.Button(this.tr(`Promote to ${this.__getRoleInfo("delete").label}`));
219+
promoteButton.addListener("execute", () => {
220+
this.fireDataEvent("promoteToOwner", {
221+
gid: this.getKey(),
222+
name: this.getTitle()
223+
});
222224
});
223-
});
224-
menu.add(promoteButton);
225+
menu.add(promoteButton);
226+
}
225227
const demoteButton = new qx.ui.menu.Button(this.tr(`Demote to ${this.__getRoleInfo("read").label}`));
226228
demoteButton.addListener("execute", () => {
227229
this.fireDataEvent("demoteToUser", {
@@ -249,7 +251,7 @@ qx.Class.define("osparc.ui.list.CollaboratorListItem", {
249251
menu.addSeparator();
250252
}
251253

252-
const removeButton = new qx.ui.menu.Button(this.tr(`Remove ${currentRole.label}`)).set({
254+
const removeButton = new qx.ui.menu.Button(this.tr(`Remove ${collabCurrentRole.label}`)).set({
253255
textColor: "danger-red"
254256
});
255257
removeButton.addListener("execute", () => {

0 commit comments

Comments
 (0)