Skip to content

Commit 9d67dd5

Browse files
committed
purchasesToNSeats
1 parent ac591ac commit 9d67dd5

File tree

3 files changed

+16
-7
lines changed

3 files changed

+16
-7
lines changed

services/static-webserver/client/source/class/osparc/store/LicensedItems.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,16 @@ qx.Class.define("osparc.store.LicensedItems", {
2525
this.__licensedItems = null;
2626
},
2727

28+
statics: {
29+
purchasesToNSeats: function(purchases) {
30+
let nSeats = 0;
31+
purchases.forEach(purchase => {
32+
nSeats += purchase.getNumberOfSeats();
33+
});
34+
return nSeats;
35+
},
36+
},
37+
2838
members: {
2939
__licensedItems: null,
3040

services/static-webserver/client/source/class/osparc/vipMarket/AnatomicalModelListItem.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -174,10 +174,7 @@ qx.Class.define("osparc.vipMarket.AnatomicalModelListItem", {
174174

175175
__applyPurchases: function(purchases) {
176176
const nSeatsLabel = this.getChildControl("n-seats");
177-
let nSeats = 0;
178-
purchases.forEach(purchase => {
179-
nSeats += purchase.getNumberOfSeats();
180-
});
177+
const nSeats = osparc.store.LicensedItems.purchasesToNSeats(purchases);
181178
if (nSeats) {
182179
nSeatsLabel.setValue(`(${nSeats})`);
183180
} else {

services/static-webserver/client/source/class/osparc/vipMarket/VipMarket.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -275,9 +275,11 @@ qx.Class.define("osparc.vipMarket.VipMarket", {
275275
const sortModel = sortBy => {
276276
models.sort((a, b) => {
277277
// first criteria
278-
if (b["purchases"].length !== a["purchases"].length) {
279-
// leased first
280-
return b["purchases"].length - a["purchases"].length;
278+
const nASeats = osparc.store.LicensedItems.purchasesToNSeats(a["purchases"]);
279+
const nBSeats = osparc.store.LicensedItems.purchasesToNSeats(b["purchases"]);
280+
if (nASeats !== nBSeats) {
281+
// nSeats first
282+
return nASeats - nBSeats;
281283
}
282284
// second criteria
283285
if (sortBy) {

0 commit comments

Comments
 (0)